diff --git a/product/ERP5/Document/AdoptSolver.py b/product/ERP5/Document/AdoptSolver.py index 0b4c1f3483b5ab49f96ab98343e95adbaa0d8f19..28c147169a99eff39dbf3e3fb9641270f246e171 100644 --- a/product/ERP5/Document/AdoptSolver.py +++ b/product/ERP5/Document/AdoptSolver.py @@ -79,8 +79,11 @@ class AdoptSolver(SolverMixin, ConfigurableMixin, XMLObject): for solved_property in solved_property_list: # XXX hardcoded if solved_property == 'quantity': + # For 'quantity' case, we need to recalculate delivery_ratio + # for all related simulation movements. + simulation_movement_list = movement.getDeliveryRelatedValueList() total_quantity = sum( - [x.getQuantity() for x in movement.getDeliveryRelatedValueList()]) + [x.getQuantity() for x in simulation_movement_list]) movement.setQuantity(total_quantity) for simulation_movement in simulation_movement_list: quantity = simulation_movement.getQuantity()