diff --git a/product/ERP5Type/Accessor/Base.py b/product/ERP5Type/Accessor/Base.py
index 40d26b0b23f133f13df6ba64874cce3995ab5342..35252dc195a4ba9d09a7856d3c649a33a4c336d9 100755
--- a/product/ERP5Type/Accessor/Base.py
+++ b/product/ERP5Type/Accessor/Base.py
@@ -97,7 +97,9 @@ class Setter(Method):
                                                  # if the property value has changed
                                                  # to decide reindexing, like edit() ?
 
+from Products.CMFCore.Expression import Expression
 def _evaluateTales(instance=None, value=None):
+  from Products.ERP5Type.Utils import createExpressionContext
   expression = Expression(value)
   econtext = createExpressionContext(instance)
   return expression(econtext)
@@ -141,6 +143,8 @@ class Getter(Method):
           return evaluateTales(instance, value)
         else:
           return value
+      if default is not None and self._is_tales_type and kw.get('evaluate', 1):
+        return evaluateTales(instance, default)
       return default
 
     psyco.bind(__call__)