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

nobody at svn.erp5.org nobody at svn.erp5.org
Sat Dec 1 01:22:47 CET 2007


Author: yo
Date: Sat Dec  1 01:22:47 2007
New Revision: 17953

URL: http://svn.erp5.org?rev=17953&view=rev
Log:
Ignore AttributeError which may happen when ERP5 Form has been replaced with External Method.

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=17953&r1=17952&r2=17953&view=diff
==============================================================================
--- erp5/trunk/products/ERP5/Document/BusinessTemplate.py (original)
+++ erp5/trunk/products/ERP5/Document/BusinessTemplate.py Sat Dec  1 01:22:47 2007
@@ -779,10 +779,17 @@
               connection = o._p_jar
             # import subobjects
             for subobject_id, subobject_data in subobjects_dict.iteritems():
-              if obj._getOb(subobject_id, None) is None:
-                subobject_data.seek(0)
-                subobject = connection.importFile(subobject_data)
-                obj._setObject(subobject_id, subobject)
+              try:
+                if obj._getOb(subobject_id, None) is None:
+                  subobject_data.seek(0)
+                  subobject = connection.importFile(subobject_data)
+                  obj._setObject(subobject_id, subobject)
+              except AttributeError:
+                # XXX this may happen when an object which can contain
+                # sub-objects (e.g. ERP5 Form) has been replaced with
+                # an object which cannot (e.g. External Method).
+                LOG('BusinessTemplate', WARNING,
+                    'could not restore %r in %r' % (subobject_id, obj))
           if obj.meta_type in ('Z SQL Method',):
             fixZSQLMethod(portal, obj)
       # now put original order group




More information about the Erp5-report mailing list