diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/api/internal/authorization/ScreeningPlateListReadOnlyPredicate.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/api/internal/authorization/ScreeningPlateListReadOnlyPredicate.java
index 60bb6c41ade71fa28b772c4c74c91fb72555aac7..263a3421cf5da7edb7ac860d92cbeed2488b4cc4 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/api/internal/authorization/ScreeningPlateListReadOnlyPredicate.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/api/internal/authorization/ScreeningPlateListReadOnlyPredicate.java
@@ -91,9 +91,9 @@ public class ScreeningPlateListReadOnlyPredicate extends
         {
             for (Long spaceId : getSampleSpaceIds(permIds))
             {
-                if (spaceId == null)
+                if (spaceId == null || spaceId == 0)
                 {
-                    continue; // Shared samples will return a spaceId of null.
+                    continue; // Shared samples will return a spaceId of null (or 0 in EoDSQL).
                 }
                 final Status status =
                         evaluate(person, allowedRoles, authorizationDataProvider