diff --git a/stock.py b/stock.py index c28aa99ae1..64508bf45d 100644 --- a/stock.py +++ b/stock.py @@ -396,7 +396,7 @@ class ShipmentDrop(Workflow, ModelSQL, ModelView): requests = [] for sub_lines in grouped_slice([m.origin.id for s in shipments - for m in s.supplier_moves]): + for m in s.supplier_moves if m.origin]): requests += PurchaseRequest.search([ ('purchase_line', 'in', list(sub_lines)), ]) @@ -409,6 +409,8 @@ class ShipmentDrop(Workflow, ModelSQL, ModelView): to_save = [] for shipment in shipments: for move in shipment.supplier_moves: + if not move.origin: + continue sale_line = request2sline[pline2request[move.origin]] for move in sale_line.moves: if (move.state not in ('cancel', 'done')