diff --git a/addons/sale/sale.py b/addons/sale/sale.py index c64a55920f5..ff968e1ab67 100644 --- a/addons/sale/sale.py +++ b/addons/sale/sale.py @@ -713,8 +713,9 @@ class sale_order(osv.osv): procurement_obj.check(cr, uid, [x.id for x in line.procurement_ids if x.state not in ['cancel', 'done']]) line.refresh() #run again procurement that are in exception in order to trigger another move - proc_ids += [x.id for x in line.procurement_ids if x.state in ('exception', 'cancel')] - procurement_obj.reset_to_confirmed(cr, uid, proc_ids, context=context) + except_proc_ids = [x.id for x in line.procurement_ids if x.state in ('exception', 'cancel')] + procurement_obj.reset_to_confirmed(cr, uid, except_proc_ids, context=context) + proc_ids += except_proc_ids elif sale_line_obj.need_procurement(cr, uid, [line.id], context=context): if (line.state == 'done') or not line.product_id: continue