diff --git a/entity/Salesproject_entity/entityfields/openclassificationoverview/onActionProcess.js b/entity/Salesproject_entity/entityfields/openclassificationoverview/onActionProcess.js
index ab0320216058661142f965367f42a5f671726ea5..d103f7cdf673de148a7aba47f84f7b033efdcd6c 100644
--- a/entity/Salesproject_entity/entityfields/openclassificationoverview/onActionProcess.js
+++ b/entity/Salesproject_entity/entityfields/openclassificationoverview/onActionProcess.js
@@ -4,4 +4,4 @@ import("system.vars");
 
 var classificationData = ClassificationUtils.executeUpdating(vars.get("$field.SALESPROJECTID"), "Salesproject");
 
-neon.openContext("Classification", "ClassificationTree_view", null, neon.OPERATINGSTATE_SEARCH, {"ClassificationContent_param": classificationData}, null);
\ No newline at end of file
+neon.openContext("Classification", "ClassificationTree_view", null, neon.OPERATINGSTATE_SEARCH, {"ClassificationContent_param": classificationData["outputValue"]}, null);
\ No newline at end of file
diff --git a/process/ChecklistEntryRegistry_basic/process.js b/process/ChecklistEntryRegistry_basic/process.js
index 14505ec30942126b83ff8b217a53971025fcddf9..92714d631873da6ded5af46ef5c7b066081caeb7 100644
--- a/process/ChecklistEntryRegistry_basic/process.js
+++ b/process/ChecklistEntryRegistry_basic/process.js
@@ -1,3 +1,5 @@
+import("system.vars");
+import("ClassificationUpdate_lib");
 import("Context_lib");
 import("Communication_lib");
 import("Contact_lib");
@@ -208,17 +210,13 @@ $ChecklistEntryRegistry.salesprojectClassificationFields = function(){
         context: ["Salesproject"],
         title: translate.text("Classification fields"),
         verifierFn: function(pSalesprojectId){
-            var res = false;
-            var classificationRows = $ChecklistEntryRegistry._getRows(null, "Classification_entity", ["VALUE"], [["ObjectType_param", "Salesproject"], ["ObjectRowid_param", pSalesprojectId]], "Classifications");
-            if(classificationRows.length > 0)
+            var res = true;
+            if(Utils.isNotNullOrEmptyString(pSalesprojectId) && (!vars.exists("IgnoreOrderBy_param") || (vars.exists("IgnoreOrderBy_param") && !vars.get("IgnoreOrderBy_param"))))
             {
-                res = true
-                for (let i = 0; i < classificationRows.length; i++) {
-                    if(classificationRows[i] == "" || classificationRows[i] == null || classificationRows[i] == undefined)
-                    {
-                        res = false;
-                        break;
-                    }
+                var classificationData = ClassificationUtils.executeUpdating(pSalesprojectId, "Salesproject");
+                if(classificationData && classificationData["emtpyFields"] && classificationData["emtpyFields"].length != 0)
+                {
+                    res = false;
                 }
             }
             return res;
diff --git a/process/ClassificationUpdate_lib/process.js b/process/ClassificationUpdate_lib/process.js
index e9636d4bd9950f968dd9b007e64d2ca012a33eaf..73c181e1f7a1401cead2f88a95e8671503e98766 100644
--- a/process/ClassificationUpdate_lib/process.js
+++ b/process/ClassificationUpdate_lib/process.js
@@ -204,7 +204,8 @@ ClassificationUpdateHelper._searchIndicatorObj = function(pClassificationTypeId,
 *                                                         objectRowId we want to show the classifications for<br>
 *                                                          
 *                                                          
-* @return {String}                                        <p> stringified contentProcessArray<br>
+*                                                          
+* @return {Object}                                        <p> {"emtpyFields":  stringifiedContentProcessArray, "emtpyFields"  ArrayWithAllFieldsWithoutValue<br>
 */
 ClassificationUpdateHelper._formatOutputForDisplayingValues = function(pReturn, pUid)
 {
@@ -272,8 +273,13 @@ ClassificationUpdateHelper._formatOutputForDisplayingValues = function(pReturn,
     
     var groupDisplayObj = {};//helperObj to store the group display value
     var position = 0;
+    var emptyFields = [];
     for (let i = 0; i < contentProcessArray.length; i++)
     {
+        if(contentProcessArray[i][5] == "-")//value is empty
+        {
+            emptyFields.push(contentProcessArray[i][4])//push fieldname
+        }
         if (contentProcessArray[i][2] && contentProcessArray[i][2] != "")//group
         {
             groupDisplayObj[contentProcessArray[i][1]] = ClassificationUtils.formatDisplaySummaryForGroup(groupResultObj[contentProcessArray[i][1]]["points"], groupResultObj[contentProcessArray[i][1]]["maxPoints"], contentProcessArray[i][2], classificationString.substring(position, position + 1))
@@ -287,7 +293,8 @@ ClassificationUpdateHelper._formatOutputForDisplayingValues = function(pReturn,
         }
     }
 
-    return JSON.stringify(contentProcessArray);
+    return {"outputValue": JSON.stringify(contentProcessArray)
+                ,"emtpyFields": emptyFields};
 };
 
 /**
@@ -1033,6 +1040,11 @@ ClassificationUpdateHelper._buildFilteredRecsObject = function(pClassificationTy
                             .fields(pFilterFields)
                             .addParameter("IgnoreOrderBy_param", true);
                             
+                            if(currentObjectType == "Salesproject")
+                            {
+                                config.provider("NoPhaseRequirementLoading");
+                            }
+                            
                             var rows = [];
                             if(pSingleRefreshRowId)
                             {
@@ -1855,6 +1867,12 @@ ClassificationUpdateHelper._updateOutdatedDatasets = function(pClassificationObj
                                                     .ignorePermissions(true)
                                                     .entity(ContextUtils.getEntity(objectTypes[currentObjectType]))
                                                     .addParameter("IgnoreOrderBy_param", true);
+            
+            if(objectTypes[currentObjectType] == "Salesproject")
+            {
+                objectValuesLoadConfig.provider("NoPhaseRequirementLoading");
+            }
+            
             if (objectRowIdArray && !pSingleRefreshRowId)//objectRowIdArray is already paged
             {
                 objectValuesLoadConfig = objectValuesLoadConfig.uids(objectRowIdArray);