From 984044c4b947611bb0e9c02cde5d64684c18ac09 Mon Sep 17 00:00:00 2001 From: Guillaume Michon <guillaume@nexedi.com> Date: Fri, 24 Jun 2005 14:36:09 +0000 Subject: [PATCH] Some bug fix, and added some reindexing, because divergence status is indexed in catalog git-svn-id: https://svn.erp5.org/repos/public/erp5/trunk@3334 20353a03-c40f-0410-a6d1-a30d3c3de9de --- product/ERP5/Document/DeliveryBuilder.py | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/product/ERP5/Document/DeliveryBuilder.py b/product/ERP5/Document/DeliveryBuilder.py index 80658bae04..bab0d3e317 100755 --- a/product/ERP5/Document/DeliveryBuilder.py +++ b/product/ERP5/Document/DeliveryBuilder.py @@ -371,7 +371,7 @@ class DeliveryBuilder(XMLObject, Amount, Predicate): if collect_order_list != []: # Get sorted movement for each delivery line for group in movement_group.getGroupList(): - self._deliveryLineGroupProcessing( + self._deliveryCellGroupProcessing( delivery_line, group, collect_order_list[1:], @@ -397,7 +397,7 @@ class DeliveryBuilder(XMLObject, Amount, Predicate): # update line object_to_update = delivery_line if self.testObjectProperties(delivery_line, property_dict): - if update_existing_movement == 1: + if update_existing_line == 1: # We update a initialized line update_existing_movement=1 @@ -464,6 +464,10 @@ class DeliveryBuilder(XMLObject, Amount, Predicate): # Update simulation movement simulation_movement.setDeliveryValue(delivery_movement) + # To update the divergence status, the simulation movement must be reindexed + # and the delivery must be touched. + simulation_movement.immediateReindexObject() + delivery_movement.edit() # Simulation consistency propagation security.declareProtected(Permissions.ModifyPortalContent, @@ -519,6 +523,11 @@ class DeliveryBuilder(XMLObject, Amount, Predicate): simulation_movement.setDeliveryRatio(mvt_ratio) movement.edit(quantity=total_quantity) + # To update the divergence status, the simulation movements + # must be reindexed, and then the delivery must be touched + for simulation_movement in movement.getDeliveryRelatedValueList(): + simulation_movement.immediateReindexObject() + movement.edit() # Launch delivery creation if (create_new_delivery == 1) and\ -- 2.30.9