diff --git a/src/org/openbravo/warehouse/advancedwarehouseoperations/warehouseconfigurationcheck/implementation/CheckProductAUMAreMultiples.java b/src/org/openbravo/warehouse/advancedwarehouseoperations/warehouseconfigurationcheck/implementation/CheckProductAUMAreMultiples.java
--- a/src/org/openbravo/warehouse/advancedwarehouseoperations/warehouseconfigurationcheck/implementation/CheckProductAUMAreMultiples.java
+++ b/src/org/openbravo/warehouse/advancedwarehouseoperations/warehouseconfigurationcheck/implementation/CheckProductAUMAreMultiples.java
@@ -12,7 +12,6 @@
 import java.math.BigDecimal;
 import java.util.List;
 
-import org.hibernate.Query;
 import org.hibernate.ScrollMode;
 import org.hibernate.ScrollableResults;
 import org.hibernate.criterion.Restrictions;
@@ -21,6 +20,7 @@
 import org.openbravo.dal.security.OrganizationStructureProvider;
 import org.openbravo.dal.service.OBCriteria;
 import org.openbravo.dal.service.OBDal;
+import org.openbravo.dal.service.OBQuery;
 import org.openbravo.model.common.plm.Product;
 import org.openbravo.model.common.plm.ProductAUM;
 import org.openbravo.warehouse.advancedwarehouseoperations.utils.OBAWO_Constants;
@@ -51,7 +51,8 @@
     ScrollableResults productIds = getProductsWithAlternateUOM();
     try {
       while (productIds.next()) {
-        logWarningForProductIfAUMAreNotMultiples(productIds);
+        String productId = (String) productIds.get()[0];
+        logWarningForProductIfAUMAreNotMultiples(productId);
       }
     } finally {
       productIds.close();
@@ -62,22 +63,23 @@
     // Return products accessible by the Organization (all products of Organizations in the same
     // natural tree, regardless of AWO Configuration)
     StringBuilder hql = new StringBuilder();
-    hql.append(" select p.id ");
-    hql.append(" from Product p ");
-    hql.append(" where p.productAUMList is not empty");
-    hql.append(" and p.organization.id in (:organizationsInNaturalTree) ");
+    hql.append(" as p");
+    hql.append(" where p." + Product.PROPERTY_PRODUCTAUMLIST + " is not empty");
+    hql.append(" and p." + Product.PROPERTY_ORGANIZATION + ".id in (:organizationsInNaturalTree) ");
 
-    Query query = OBDal.getInstance().getSession().createQuery(hql.toString());
-    OrganizationStructureProvider osp = OBContext.getOBContext().getOrganizationStructureProvider();
-    query.setParameterList("organizationsInNaturalTree",
+    OBQuery<Product> query = OBDal.getInstance().createQuery(Product.class, hql.toString());
+    OrganizationStructureProvider osp = OBContext.getOBContext()
+        .getOrganizationStructureProvider(OBContext.getOBContext().getCurrentClient().getId());
+    query.setNamedParameter("organizationsInNaturalTree",
         osp.getNaturalTree(getOrganization().getId()));
+    query.setFilterOnReadableOrganization(false);
+    query.setSelectClause(" p.id");
     query.setFetchSize(OBAWO_Constants.DEFAULT_FETCH_SIZE);
 
     return query.scroll(ScrollMode.FORWARD_ONLY);
   }
 
-  private void logWarningForProductIfAUMAreNotMultiples(ScrollableResults productIds) {
-    String productId = (String) productIds.get()[0];
+  private void logWarningForProductIfAUMAreNotMultiples(String productId) {
     Product product = Utilities.getObjectProxyById(Product.ENTITY_NAME, productId);
     if (!productAUMsAreMultiple(product)) {
       logWarn(AWOLoggerForProcessUtil.IDENTATION_LEVEL_INDIVIDUAL_PROCESS_OPERATIONS,
