为什么取消的领料在某些情况下不能删除?
具体地说,我得到的消息是该项目不能被删除,因为它具有引用:打包操作- stock.pack.operation]
取消的领料什么时候可以删除,什么时候不能删除?
发布于 2018-01-05 22:35:49
如果您通过引用获取消息对象:打包操作- stock.pack.operation,则意味着挑库至少处于可用状态(也可能处于完成状态)。当领料处于可用状态时,生成工序和移库操作环节。如果领料处于完成状态,则还会生成移动的数量。
在您的例子中,由于您能够通过接口取消挑选,这意味着它还没有进入Done状态,所以还没有生成quants。因此,您可以在PostgreSQL中执行以下查询:
假设您的拾取具有ID 88:
DELETE FROM stock_move_operation_link WHERE operation_id IN (SELECT id FROM stock_pack_operation WHERE picking_id=88);
DELETE FROM stock_pack_operation WHERE picking_id=88;
DELETE FROM stock_move WHERE picking_id=88;
DELETE FROM stock_picking WHERE id=88;
什么是用于的 stock_move_operation_link
例如,在创建具有三行的挑库时:
然后将其标记为do,操作是以这种方式生成的(如果您没有指定任何批次):
因此,在stock_move_link_operation
中,您将能够看到,在其他数据中,哪些移动属于每个操作。
发布于 2018-01-05 23:23:27
@forvas很好地解释了这个问题,但你不需要求助于psql来解决这个问题(尽管你可以)。
取消挑库仅取消移动(初始需求标签)。如果挑库仍具有工序行,则不能删除该挑库。您很可能需要标记为Todo,以便可以看到Operations选项卡来删除每一行。此时,您可以删除整个领料。
发布于 2019-08-14 19:03:51
我认为你可能会返回相同的拾取比从后端手动删除相同的要好。因为有一些与Quant相关的事务很难从反手端删除
https://stackoverflow.com/questions/48102542
复制相似问题