コンテンツへスキップ
メニュー
この質問にフラグが付けられました
2 返信
10331 ビュー

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

What is the best way to do this?

アバター
破棄

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

最善の回答

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)


アバター
破棄

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

最善の回答

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!")

アバター
破棄
関連投稿 返信 ビュー 活動
2
11月 24
1792
0
6月 25
414
0
1月 25
1547
0
1月 25
1567
1
12月 24
2069