changeset d9d98fbddbc4 in modules/account_invoice_stock:5.4
details: 
https://hg.tryton.org/modules/account_invoice_stock?cmd=changeset;node=d9d98fbddbc4
description:
        Copy invoice lines when synchronizing shipment moves

        issue9114
        review273011002
        (grafted from 0f2550ac4fccd9907682144d88fc0a644bd47cf4)
diffstat:

 __init__.py |   1 +
 stock.py    |  12 +++++++++++-
 2 files changed, 12 insertions(+), 1 deletions(-)

diffs (35 lines):

diff -r 01aa618e4b6c -r d9d98fbddbc4 __init__.py
--- a/__init__.py       Sat Apr 04 16:30:00 2020 +0200
+++ b/__init__.py       Thu Apr 02 15:25:18 2020 +0200
@@ -11,4 +11,5 @@
         InvoiceLineStockMove,
         InvoiceLine,
         StockMove,
+        ShipmentOut,
         module='account_invoice_stock', type_='model')
diff -r 01aa618e4b6c -r d9d98fbddbc4 stock.py
--- a/stock.py  Sat Apr 04 16:30:00 2020 +0200
+++ b/stock.py  Thu Apr 02 15:25:18 2020 +0200
@@ -5,7 +5,7 @@
 from trytond.transaction import Transaction
 
 
-__all__ = ['StockMove']
+__all__ = ['StockMove', 'ShipmentOut']
 
 
 class StockMove(metaclass=PoolMeta):
@@ -33,3 +33,13 @@
         if not Transaction().context.get('_stock_move_split'):
             default.setdefault('invoice_lines', None)
         return super(StockMove, cls).copy(moves, default=default)
+
+
+class ShipmentOut(metaclass=PoolMeta):
+    __name__ = 'stock.shipment.out'
+
+    def _sync_outgoing_move(self, template=None):
+        move = super()._sync_outgoing_move(template=template)
+        if template and template.invoice_lines:
+            move.invoice_lines = list(template.invoice_lines)
+        return move

Reply via email to