Перейти к содержимому
Меню
Чтобы взаимодействовать с сообществом, необходимо зарегистрироваться.
Этот вопрос был отмечен
2 Ответы
10332 Представления

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

Аватар
Отменить
Related Posts Ответы Просмотры Активность
2
нояб. 24
1793
0
июн. 25
414
0
янв. 25
1548
0
янв. 25
1567
1
дек. 24
2073