diff --git a/models/sale.py b/models/sale.py index 10e0ce653c82f2c2348bb1344ad847e4d0274d89..c2f562da2af7843b7f11acafc3f9333a30b6f07a 100644 --- a/models/sale.py +++ b/models/sale.py @@ -17,11 +17,14 @@ class SaleOrder(models.Model): Compute the amount (untaxed) that remains to be invoiced from sale order """ for order in self: - line_to_invoice = [line for line in order.order_line if line.invoice_status == 'to invoice' or line.invoice_status == 'invoiced'] + if order.invoice_status == ('to invoice'): + line_to_invoice = [line for line in order.order_line if line.invoice_status != 'no'] - untaxed_amount_to_invoice = order.amount_untaxed - for line in line_to_invoice: - untaxed_amount_to_invoice -= line.qty_invoiced * line.price_unit + untaxed_amount_to_invoice = order.amount_untaxed + for line in line_to_invoice: + untaxed_amount_to_invoice -= line.qty_invoiced * line.price_unit + else: + untaxed_amount_to_invoice = 0.0 order.update({ 'untaxed_amount_to_invoice': untaxed_amount_to_invoice