[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