diff --git a/addons/sale/sale.py b/addons/sale/sale.py index 5a981e24bdc..19094050b96 100644 --- a/addons/sale/sale.py +++ b/addons/sale/sale.py @@ -510,18 +510,14 @@ class sale_order(osv.osv): def action_invoice_end(self, cr, uid, ids, context=None): if context is None: context = {} + for order in self.browse(cr, uid, ids, context=context): - val = {'invoiced': True} - if order.state == 'invoice_except': - val['state'] = 'progress' - for line in order.order_line: - towrite = [] if line.state == 'exception': - towrite.append(line.id) - if towrite: - self.pool.get('sale.order.line').write(cr, uid, towrite, {'state': 'confirmed'}, context=context) - self.write(cr, uid, [order.id], val) + self.pool.get('sale.order.line').write(cr, uid, [line.id], {'state': 'confirmed'}, context=context) + + if order.state == 'invoice_except': + self.write(cr, uid, [order.id], {'state' : 'progress'}, context=context) return True