[Erp5-report] r34774 kazuhiko - /erp5/trunk/products/ERP5/Document/OrderBuilder.py

nobody at svn.erp5.org nobody at svn.erp5.org
Mon Apr 26 12:37:43 CEST 2010


Author: kazuhiko
Date: Mon Apr 26 12:37:33 2010
New Revision: 34774

URL: http://svn.erp5.org?rev=34774&view=rev
Log:
do not try to update existing deliveries if build() is called with update=False explicitly.

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

Modified: erp5/trunk/products/ERP5/Document/OrderBuilder.py
URL: http://svn.erp5.org/erp5/trunk/products/ERP5/Document/OrderBuilder.py?rev=34774&r1=34773&r2=34774&view=diff
==============================================================================
--- erp5/trunk/products/ERP5/Document/OrderBuilder.py [utf8] (original)
+++ erp5/trunk/products/ERP5/Document/OrderBuilder.py [utf8] Mon Apr 26 12:37:33 2010
@@ -314,7 +314,7 @@
   @UnrestrictedMethod
   def buildDeliveryList(self, movement_group_node,
                         delivery_relative_url_list=None,
-                        movement_list=None, **kw):
+                        movement_list=None, update=True, **kw):
     """
       Build deliveries from a list of movements
     """
@@ -326,16 +326,19 @@
     # Module where we can create new deliveries
     portal = self.getPortalObject()
     delivery_module = getattr(portal, self.getDeliveryModule())
-    delivery_to_update_list = [portal.restrictedTraverse(relative_url) for \
-                               relative_url in delivery_relative_url_list]
-    # Deliveries we are trying to update
-    delivery_select_method_id = self.getDeliverySelectMethodId()
-    if delivery_select_method_id not in ["", None]:
-      to_update_delivery_sql_list = getattr(self, delivery_select_method_id) \
+    if update:
+      delivery_to_update_list = [portal.restrictedTraverse(relative_url) for \
+                                 relative_url in delivery_relative_url_list]
+      # Deliveries we are trying to update
+      delivery_select_method_id = self.getDeliverySelectMethodId()
+      if delivery_select_method_id not in ["", None]:
+        to_update_delivery_sql_list = getattr(self, delivery_select_method_id) \
                                       (movement_list=movement_list)
-      delivery_to_update_list.extend([sql_delivery.getObject() \
-                                     for sql_delivery \
-                                     in to_update_delivery_sql_list])
+        delivery_to_update_list.extend([sql_delivery.getObject() \
+                                        for sql_delivery \
+                                        in to_update_delivery_sql_list])
+    else:
+      delivery_to_update_list = []
     # We do not want to update the same object more than twice in one
     # _deliveryGroupProcessing().
     self._resetUpdated()




More information about the Erp5-report mailing list