[Erp5-report] r27524 - /erp5/trunk/products/ERP5/Document/TradeCondition.py

nobody at svn.erp5.org nobody at svn.erp5.org
Thu Jun 11 14:02:50 CEST 2009


Author: fabien
Date: Thu Jun 11 14:02:48 2009
New Revision: 27524

URL: http://svn.erp5.org?rev=27524&view=rev
Log:
fix a bug : aggregated_amount_list can be empty in the case all movements should be removed. So we have to enter in the loop to put all movements in movement_to_delete_list

Modified:
    erp5/trunk/products/ERP5/Document/TradeCondition.py

Modified: erp5/trunk/products/ERP5/Document/TradeCondition.py
URL: http://svn.erp5.org/erp5/trunk/products/ERP5/Document/TradeCondition.py?rev=27524&r1=27523&r2=27524&view=diff
==============================================================================
--- erp5/trunk/products/ERP5/Document/TradeCondition.py [utf8] (original)
+++ erp5/trunk/products/ERP5/Document/TradeCondition.py [utf8] Thu Jun 11 14:02:48 2009
@@ -88,34 +88,32 @@
       # check if the existing movements are in aggregated movments
       movement_to_delete_list = []
       movement_to_add_list = []
-      if len(aggregated_amount_list):
-        for movement in existing_movement_list:
-          keep_movement = False
-          for amount in aggregated_amount_list:
-            # here we have to check if the movement is a generated one or
-            # entered by the user. If it has been entered by user, we have to
-            # keep it.
-            # if movement is generated and if not exist, append to delete list
-            # else, break
-            resource = movement.getResourceValue()
-            if resource is not None and \
-                len(set(normal_use_list).intersection(set(resource\
-                .getUseList()))):
-              keep_movement = True
-              break
-            update_kw = {}
-            for p in self.edited_property_list:
-              update_kw[p] = amount.getProperty(p)
-            if movement.getProperty('resource') == update_kw['resource'] and\
-                movement.getVariationCategoryList() == \
-                amount.getVariationCategoryList():
-              movement.edit(**update_kw)
-              modified_resource_list.append(update_kw['resource'])
-              keep_movement = True
-          if not keep_movement:
-            movement_to_delete_list.append(movement)
-        movement_to_add_list = [amount for amount in aggregated_amount_list if
-            amount.getResource() not in modified_resource_list]
+      for movement in existing_movement_list:
+        keep_movement = False
+        # here we have to check if the movement is a generated one or
+        # entered by the user. If it has been entered by user, we have to
+        # keep it.
+        resource = movement.getResourceValue()
+        if resource is not None and \
+            len(set(normal_use_list).intersection(set(resource\
+            .getUseList()))):
+          keep_movement = True
+          break
+        for amount in aggregated_amount_list:
+          # if movement is generated and if not exist, append to delete list
+          update_kw = {}
+          for p in self.edited_property_list:
+            update_kw[p] = amount.getProperty(p)
+          if movement.getProperty('resource') == update_kw['resource'] and\
+              movement.getVariationCategoryList() == \
+              amount.getVariationCategoryList():
+            movement.edit(**update_kw)
+            modified_resource_list.append(update_kw['resource'])
+            keep_movement = True
+        if not keep_movement:
+          movement_to_delete_list.append(movement)
+      movement_to_add_list = [amount for amount in aggregated_amount_list if
+          amount.getResource() not in modified_resource_list]
       return {'movement_to_delete_list' : movement_to_delete_list,
               'movement_to_add_list': movement_to_add_list}
 




More information about the Erp5-report mailing list