diff --git a/addons/stock/models/stock_picking.py b/addons/stock/models/stock_picking.py index 42c4eeea620..85cd74b2651 100644 --- a/addons/stock/models/stock_picking.py +++ b/addons/stock/models/stock_picking.py @@ -848,9 +848,11 @@ class Picking(models.Model): 'move_line_ids': [(6, 0, move_lines_to_pack.ids)], 'company_id': picking.company_id.id, }) - move_lines_to_pack.write({ - 'result_package_id': pack.id, - }) + # TODO: in master, move package field in `stock` and clean code. + if pack._allowed_to_move_between_transfers(): + move_lines_to_pack.write({ + 'result_package_id': pack.id, + }) else: move_lines_in_package_level = move_lines_to_pack.filtered(lambda ml: ml.move_id.package_level_id) move_lines_without_package_level = move_lines_to_pack - move_lines_in_package_level diff --git a/addons/stock/models/stock_quant.py b/addons/stock/models/stock_quant.py index 1403f08a1ef..ef7e966f9cb 100644 --- a/addons/stock/models/stock_quant.py +++ b/addons/stock/models/stock_quant.py @@ -729,3 +729,6 @@ class QuantPackage(models.Model): def _get_contained_quants(self): return self.env['stock.quant'].search([('package_id', 'in', self.ids)]) + + def _allowed_to_move_between_transfers(self): + return True