changeset dd096a1db8c1 in modules/account_invoice:6.0
details: 
https://hg.tryton.org/modules/account_invoice?cmd=changeset&node=dd096a1db8c1
description:
        Test if invoice move exist before cancelling it

        issue11335
        review368231020
        (grafted from db9871bfc12fa374ffe84f482c08182e9ff8596e)
diffstat:

 invoice.py |  9 +++++----
 1 files changed, 5 insertions(+), 4 deletions(-)

diffs (26 lines):

diff -r 1ae3fa6ec8f1 -r dd096a1db8c1 invoice.py
--- a/invoice.py        Sun Mar 06 13:43:50 2022 +0100
+++ b/invoice.py        Wed Apr 06 13:08:02 2022 +0200
@@ -1571,7 +1571,7 @@
         to_save = []
         for invoice in invoices:
             if invoice.move or invoice.number:
-                if invoice.move.state == 'draft':
+                if invoice.move and invoice.move.state == 'draft':
                     delete_moves.append(invoice.move)
                 elif not invoice.cancel_move:
                     if (invoice.type == 'out'
@@ -1580,9 +1580,10 @@
                             gettext('account_invoice'
                                 '.msg_invoice_customer_cancel_move',
                                 invoice=invoice.rec_name))
-                    invoice.cancel_move = invoice.move.cancel()
-                    to_save.append(invoice)
-                    cancel_moves.append(invoice.cancel_move)
+                    if invoice.move:
+                        invoice.cancel_move = invoice.move.cancel()
+                        to_save.append(invoice)
+                        cancel_moves.append(invoice.cancel_move)
         if cancel_moves:
             Move.save(cancel_moves)
         cls.save(to_save)

Reply via email to