diff --git a/product/ERP5Type/Base.py b/product/ERP5Type/Base.py
index ef7c091259cb455802dfabeff7e2ed93305c676e..d848f1fe8668cb7d8bb7e916b0463776dfd3a44b 100644
--- a/product/ERP5Type/Base.py
+++ b/product/ERP5Type/Base.py
@@ -2236,8 +2236,8 @@ class Base( CopyContainer,
     # can return a new predicate.
     for script_name_begin in [self.getPortalType(), self.getMetaType(), self.__class__.__name__]:
       script_name = join([script_name_begin.replace(' ',''), script_name_end ], '')
-      if hasattr(self, script_name):
-        script = getattr(self, script_name)
+      script = getattr(self, script_name, None)
+      if script is not None:
         break
     if script is None and fallback_script_id is not None:
       script = getattr(self, fallback_script_id)