details: https://code.tryton.org/tryton/commit/99d810d21b26
branch: 6.0
user: Cédric Krier <[email protected]>
date: Mon Dec 29 15:58:40 2025 +0100
description:
Maintain the original reference when splitting shipments and productions
Closes #14190
(grafted from b1d2fd68d7e2b865675d7d466e8874247c76c786)
diffstat:
modules/production_split/production.py | 1 +
modules/stock_split/stock.py | 7 ++++++-
2 files changed, 7 insertions(+), 1 deletions(-)
diffs (28 lines):
diff -r bd99adaea5a2 -r 99d810d21b26 modules/production_split/production.py
--- a/modules/production_split/production.py Mon Dec 29 15:50:58 2025 +0100
+++ b/modules/production_split/production.py Mon Dec 29 15:58:40 2025 +0100
@@ -48,6 +48,7 @@
while (remainder > quantity
and (count or count is None)):
productions.extend(self.copy([self], {
+ 'reference': lambda data: data['reference'],
'quantity': quantity,
'uom': uom.id,
'inputs': None,
diff -r bd99adaea5a2 -r 99d810d21b26 modules/stock_split/stock.py
--- a/modules/stock_split/stock.py Mon Dec 29 15:50:58 2025 +0100
+++ b/modules/stock_split/stock.py Mon Dec 29 15:58:40 2025 +0100
@@ -193,7 +193,12 @@
Move.delete(
[m for m in shipment.inventory_moves if m.state == 'draft'])
- shipment, = Shipment.copy([shipment], default={'moves': None})
+ shipment, = Shipment.copy(
+ [shipment],
+ default={
+ 'reference': lambda data: data['reference'],
+ 'moves': None,
+ })
Move.write(list(self.start.moves), {'shipment': str(shipment)})
return 'end'