diff --git a/product/ERP5/Document/BusinessTemplate.py b/product/ERP5/Document/BusinessTemplate.py
index 8cc8316f2060a1fa2b881e156cf8695dc6bb2791..5419620680c46fb1cdfa257883d5b1b8e2ca9582 100644
--- a/product/ERP5/Document/BusinessTemplate.py
+++ b/product/ERP5/Document/BusinessTemplate.py
@@ -2304,7 +2304,11 @@ class CatalogMethodTemplateItem(ObjectTemplateItem):
       if self._is_filtered_archive.get(method_id, 0):
         expression = self._filter_expression_archive[method_id]
         if context.getTemplateFormatVersion() == 1:
-          expr_instance = Expression(expression)
+          if expression and expression.strip():
+            # only compile non-empty expressions
+            expr_instance = Expression(expression)
+          else:
+            expr_instance = None
         else:
           expr_instance = self._filter_expression_instance_archive[method_id]
         filter_type = self._filter_type_archive[method_id]