[Erp5-report] r7465 - /erp5/trunk/products/ERP5/Document/BusinessTemplate.py

nobody at svn.erp5.org nobody at svn.erp5.org
Tue May 23 20:59:04 CEST 2006


Author: jerome
Date: Tue May 23 20:58:49 2006
New Revision: 7465

URL: http://svn.erp5.org?rev=7465&view=rev
Log:
While building ObjectTemplateItem, remove subobjects using _delObject
instead of manage_delObjects, because manage_delObjects can trigger
interactions.


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

Modified: erp5/trunk/products/ERP5/Document/BusinessTemplate.py
URL: http://svn.erp5.org/erp5/trunk/products/ERP5/Document/BusinessTemplate.py?rev=7465&r1=7464&r2=7465&view=diff
==============================================================================
--- erp5/trunk/products/ERP5/Document/BusinessTemplate.py (original)
+++ erp5/trunk/products/ERP5/Document/BusinessTemplate.py Tue May 23 20:58:49 2006
@@ -429,9 +429,10 @@
       if hasattr(aq_base(obj), 'groups'):
         # we must keep groups because it's ereased when we delete subobjects
         groups = deepcopy(obj.groups)
-      if len(id_list) > 0:
+      if id_list:
         self.build_sub_objects(context, id_list, relative_url)
-        obj.manage_delObjects(list(id_list))
+        for id_ in id_list:
+          obj._delObject(id_)
       if hasattr(aq_base(obj), 'groups'):
         obj.groups = groups
       self._objects[relative_url] = obj
@@ -451,7 +452,8 @@
         groups = deepcopy(obj.groups)
       if len(id_list) > 0:
         self.build_sub_objects(context, id_list, relative_url)
-        obj.manage_delObjects(list(id_list))
+        for id_ in id_list:
+          obj._delObject(id_)
       if hasattr(aq_base(obj), 'groups'):
         obj.groups = groups
       self._objects[relative_url] = obj
@@ -757,7 +759,8 @@
         if len(id_list) > 0:
           if include_subobjects:
             self.build_sub_objects(context, id_list, relative_url)
-          obj.manage_delObjects(list(id_list))
+          for id_ in id_list:
+            obj._delObject(id_)
         if hasattr(aq_base(obj), 'groups'):
           obj.groups = groups
         self._objects[relative_url] = obj
@@ -776,9 +779,10 @@
       obj = obj._getCopy(context)
       obj = self.removeProperties(obj)
       id_list = obj.objectIds()
-      if len(id_list) > 0:
+      if id_list:
         self.build_sub_objects(context, id_list, relative_url)
-        obj.manage_delObjects(list(id_list))
+        for id_ in id_list:
+          obj._delObject(id_)
       self._objects[relative_url] = obj
       obj.wl_clearLocks()
 
@@ -793,9 +797,11 @@
       id_list = obj.objectIds()
       if len(id_list) > 0 and include_sub_categories:
         self.build_sub_objects(context, id_list, relative_url)
-        obj.manage_delObjects(list(id_list))
+        for id_ in id_list:
+          obj._delObject(id_)
       else:
-        obj.manage_delObjects(list(id_list))
+        for id_ in id_list:
+          obj._delObject(id_)
       self._objects[relative_url] = obj
       obj.wl_clearLocks()
 




More information about the Erp5-report mailing list