Skip to Content
Menu
This question has been flagged
2 Replies
10315 Zobrazenia

Users are receiving more than was ordered, delivering more than was ordered, etc.

What is the best way to do this?

Avatar
Zrušiť

**raise UserError**
instead of "raise Warning" for V14 and above.

Best Answer

If you do this, you must educate users that IMMEDIATE Internal Transfers are no longer possible (they don't have any initial demand) unless they UNLOCK them after creation to add the initial demand.  

They can still do PLANNED Internal Transfers without any issues.

One method is to create an Automated Action to block over picking:

Code:

if record.product_uom_qty < record.quantity_done:
raise Warning("You can't transfer more than the Initial Demand!")

Note that this is a code snippet only, and you may need to modify it to be more robust and to fit any specific edge cases you encounter.

For example, if you use scanning or show detailed operations on the transfer type you may need to create another automated action to handle security on Packing Operations (stock.move.line)


Avatar
Zrušiť

This works for PICKS, but not Delivery Orders (OUT).

Best Answer

You can change the code like:

if record.picking_code and record.picking_code != "internal" and record.product_uom_qty < record.quantity_done:

    raise UserError("You can't transfer more than the Initial Demand!")

Avatar
Zrušiť
Related Posts Replies Zobrazenia Aktivita
2
nov 24
1745
0
jún 25
386
0
jan 25
1507
0
jan 25
1523
1
dec 24
2030