[Erp5-report] r32268 kazuhiko - /erp5/trunk/products/ERP5/Document/

nobody at svn.erp5.org nobody at svn.erp5.org
Thu Feb 4 16:11:10 CET 2010


Author: kazuhiko
Date: Thu Feb  4 16:11:09 2010
New Revision: 32268

URL: http://svn.erp5.org?rev=32268&view=rev
Log:
get properties to be solved from divergence tester (target solver's causality's causality).

Modified:
    erp5/trunk/products/ERP5/Document/AdoptSolver.py
    erp5/trunk/products/ERP5/Document/UnifySolver.py

Modified: erp5/trunk/products/ERP5/Document/AdoptSolver.py
URL: http://svn.erp5.org/erp5/trunk/products/ERP5/Document/AdoptSolver.py?rev=32268&r1=32267&r2=32268&view=diff
==============================================================================
--- erp5/trunk/products/ERP5/Document/AdoptSolver.py [utf8] (original)
+++ erp5/trunk/products/ERP5/Document/AdoptSolver.py [utf8] Thu Feb  4 16:11:09 2010
@@ -65,30 +65,32 @@
     """
     Adopt new property to movements or deliveries.
     """
-    solved_property = self._getPortalTypeValue().getTestedProperty()
+    solved_property_list = self.getCausalityValue().getCausalityValue(). \
+                           getTestedPropertyList()
     for movement in self.getDeliveryValueList():
-      # XXX hardcoded
-      if solved_property == 'quantity':
-        total_quantity = sum(
-          [x.getQuantity() for x in movement.getDeliveryRelatedValueList()])
-        movement.setQuantity(total_quantity)
-        for simulation_movement in movement.getDeliveryRelatedValueList():
-          quantity = simulation_movement.getQuantity()
-          delivery_ratio = quantity / total_quantity
-          delivery_error = total_quantity * delivery_ratio - quantity
-          simulation_movement.edit(delivery_ratio=delivery_ratio,
-                                   delivery_error=delivery_error)
-          self._clearRecordedPropertyRecursively(simulation_movement,
-                                                 solved_property)
-      else:
-        # XXX TODO we need to support multiple values for categories or
-        # list type property.
-        simulation_movement = movement.getDeliveryRelatedValue()
-        movement.setProperty(solved_property,
-                             simulation_movement.getProperty(solved_property))
-        for simulation_movement in movement.getDeliveryRelatedValueList():
-          self._clearRecordedPropertyRecursively(simulation_movement,
-                                                 solved_property)
+      for solved_property in solved_property_list:
+        # XXX hardcoded
+        if solved_property == 'quantity':
+          total_quantity = sum(
+            [x.getQuantity() for x in movement.getDeliveryRelatedValueList()])
+          movement.setQuantity(total_quantity)
+          for simulation_movement in movement.getDeliveryRelatedValueList():
+            quantity = simulation_movement.getQuantity()
+            delivery_ratio = quantity / total_quantity
+            delivery_error = total_quantity * delivery_ratio - quantity
+            simulation_movement.edit(delivery_ratio=delivery_ratio,
+                                     delivery_error=delivery_error)
+            self._clearRecordedPropertyRecursively(simulation_movement,
+                                                   solved_property)
+        else:
+          # XXX TODO we need to support multiple values for categories or
+          # list type property.
+          simulation_movement = movement.getDeliveryRelatedValue()
+          movement.setProperty(solved_property,
+                               simulation_movement.getProperty(solved_property))
+          for simulation_movement in movement.getDeliveryRelatedValueList():
+            self._clearRecordedPropertyRecursively(simulation_movement,
+                                                   solved_property)
     # Finish solving
     self.succeed()
 

Modified: erp5/trunk/products/ERP5/Document/UnifySolver.py
URL: http://svn.erp5.org/erp5/trunk/products/ERP5/Document/UnifySolver.py?rev=32268&r1=32267&r2=32268&view=diff
==============================================================================
--- erp5/trunk/products/ERP5/Document/UnifySolver.py [utf8] (original)
+++ erp5/trunk/products/ERP5/Document/UnifySolver.py [utf8] Thu Feb  4 16:11:09 2010
@@ -62,7 +62,9 @@
     Adopt new property to simulation movements, with keeping the
     original one recorded.
     """
-    solved_property = self._getPortalTypeValue().getTestedProperty()
+    # XXX it does not support multiple tested properties.
+    solved_property = self.getCausalityValue().getCausalityValue(). \
+                      getTestedProperty()
     for movement in self.getDeliveryValueList():
       configuration_dict = self.getConfigurationPropertyDict()
       new_value = configuration_dict.get('value')




More information about the Erp5-report mailing list