diff --git a/product/ERP5Type/Base.py b/product/ERP5Type/Base.py
index a4f793c89ca14ad8321bacc5b760ec34b7382e09..6e0a31dd2664f4913b4bfed594bddc50fc86e5d9 100755
--- a/product/ERP5Type/Base.py
+++ b/product/ERP5Type/Base.py
@@ -950,7 +950,11 @@ class Base( CopyContainer, PortalContent, ActiveObject, ERP5PropertyManager ):
         elif hasattr(self, accessor_name):
           #LOG("Calling: ",0, accessor_name)
           method = getattr(self, accessor_name)
-          old_value = method() # XXX Why not use getProperty ???
+          try:
+            old_value = method() # XXX Why not use getProperty ???
+          except TypeError:
+            # Catch error generated by bad formed tales expression error
+            old_value = None
           #LOG("Old value: ",0, str(old_value))
           #LOG("New value: ",0, str(kw[key]))
         else: