diff --git a/addons/stock/wizard/stock_picking_return.py b/addons/stock/wizard/stock_picking_return.py index 550064ecdc4..a66749b81db 100644 --- a/addons/stock/wizard/stock_picking_return.py +++ b/addons/stock/wizard/stock_picking_return.py @@ -142,8 +142,14 @@ class ReturnPicking(models.TransientModel): # | return pick(Add as dest) return toLink return ship(Add as orig) # +--------------------------------------------------------------------------------------------------------+ move_orig_to_link = return_line.move_id.move_dest_ids.mapped('returned_move_ids') + # link to original move + move_orig_to_link |= return_line.move_id + # link to siblings of original move, if any + move_orig_to_link |= return_line.move_id\ + .move_dest_ids.filtered(lambda m: m.state not in ('cancel'))\ + .move_orig_ids.filtered(lambda m: m.state not in ('cancel')) move_dest_to_link = return_line.move_id.move_orig_ids.mapped('returned_move_ids') - vals['move_orig_ids'] = [(4, m.id) for m in move_orig_to_link | return_line.move_id] + vals['move_orig_ids'] = [(4, m.id) for m in move_orig_to_link] vals['move_dest_ids'] = [(4, m.id) for m in move_dest_to_link] r.write(vals) if not returned_lines: