diff --git a/rma/models/rma.py b/rma/models/rma.py index 5fd07a56..cec2c1a7 100644 --- a/rma/models/rma.py +++ b/rma/models/rma.py @@ -1154,10 +1154,13 @@ class Rma(models.Model): self._ensure_can_be_replaced() moves_before = self.delivery_move_ids self._action_launch_stock_rule(scheduled_date, warehouse, product, qty, uom) - new_move = self.delivery_move_ids - moves_before - if new_move: - self.message_post( - body=_( + new_moves = self.delivery_move_ids - moves_before + body = "" + # The product replacement could explode into several moves like in the case of + # MRP BoM Kits + for new_move in new_moves: + body += ( + _( "Replacement: " 'Move %s (Picking " - 'Product %s
' - "Quantity %f %s
" - "This replacement did not create a new move, but one of " - "the previously created moves was updated with this data." - ) - % (product.id, product.display_name, qty, uom.name) + self.message_post( + body=body + or _( + "Replacement:
" + 'Product %s
' + "Quantity %f %s
" + "This replacement did not create a new move, but one of " + "the previously created moves was updated with this data." ) + % (product.id, product.display_name, qty, uom.name) + ) if self.state != "waiting_replacement": self.state = "waiting_replacement"