[Erp5-report] r33978 yo - /erp5/trunk/products/ERP5/Document/SimulationMovement.py

nobody at svn.erp5.org nobody at svn.erp5.org
Tue Mar 23 08:05:22 CET 2010


Author: yo
Date: Tue Mar 23 08:05:21 2010
New Revision: 33978

URL: http://svn.erp5.org?rev=33978&view=rev
Log:
Stop calling the same methods many times.

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

Modified: erp5/trunk/products/ERP5/Document/SimulationMovement.py
URL: http://svn.erp5.org/erp5/trunk/products/ERP5/Document/SimulationMovement.py?rev=33978&r1=33977&r2=33978&view=diff
==============================================================================
--- erp5/trunk/products/ERP5/Document/SimulationMovement.py [utf8] (original)
+++ erp5/trunk/products/ERP5/Document/SimulationMovement.py [utf8] Tue Mar 23 08:05:21 2010
@@ -287,7 +287,8 @@
     """Returns the delivery if any or the order related to the root
     applied rule if any.
     """
-    if self.getDeliveryValue() is None:
+    delivery_value = self.getDeliveryValue()
+    if delivery_value is None:
       ra = self.getRootAppliedRule()
       order = ra.getCausalityValue()
       if order is not None:
@@ -296,12 +297,13 @@
         # Ex. zero stock rule
         return ra
     else:
-      explanation_value = self.getDeliveryValue()
-      while explanation_value.getPortalType() not in \
-              self.getPortalDeliveryTypeList() and \
-          explanation_value != self.getPortalObject():
+      explanation_value = delivery_value
+      portal = self.getPortalObject()
+      delivery_type_list = self.getPortalDeliveryTypeList()
+      while explanation_value.getPortalType() not in delivery_type_list and \
+          explanation_value != portal:
             explanation_value = explanation_value.getParentValue()
-      if explanation_value != self.getPortalObject():
+      if explanation_value != portal:
         return explanation_value
 
   # Deliverability / orderability




More information about the Erp5-report mailing list