diff --git a/entity/Salesproject_entity/Salesproject_entity.aod b/entity/Salesproject_entity/Salesproject_entity.aod
index fc879ebb7041f59a3ae104249bf73dc292230f58..7e4f07a7d74f838c8097fbba2a66292db3a259ee 100644
--- a/entity/Salesproject_entity/Salesproject_entity.aod
+++ b/entity/Salesproject_entity/Salesproject_entity.aod
@@ -43,7 +43,7 @@
       <name>PHASE</name>
       <title>Phase</title>
       <consumer>SalesprojectPhaseStepper</consumer>
-      <groupable v="false" />
+      <groupable v="true" />
       <mandatory v="true" />
       <state>EDITABLE</state>
       <displayValueProcess>%aditoprj%/entity/Salesproject_entity/entityfields/phase/displayValueProcess.js</displayValueProcess>
@@ -1043,6 +1043,7 @@
         <aggregateFieldDbMapping>
           <name>volumeWeighted_aggregate.value</name>
           <expression>%aditoprj%/entity/Salesproject_entity/recordcontainers/db/recordfieldmappings/volumeweighted_aggregate.value/expression.js</expression>
+          <aggregateType>AVG</aggregateType>
         </aggregateFieldDbMapping>
         <dbRecordFieldMapping>
           <name>DATE_EDIT.value</name>
@@ -1113,16 +1114,6 @@
           <groupQueryProcess>%aditoprj%/entity/Salesproject_entity/recordcontainers/db/filterextensions/classificationgroup_filter/groupQueryProcess.js</groupQueryProcess>
           <filtertype>BASIC</filtertype>
         </filterExtensionSet>
-        <filterExtension>
-          <name>Phase_filterExtention</name>
-          <title>Phase</title>
-          <contentType>TEXT</contentType>
-          <filterConditionProcess>%aditoprj%/entity/Salesproject_entity/recordcontainers/db/filterextensions/phase_filterextention/filterConditionProcess.js</filterConditionProcess>
-          <groupedRecordField>Phase</groupedRecordField>
-          <titleRecordField>SALESPROJECT.PHASE</titleRecordField>
-          <isGroupable v="true" />
-          <groupQueryProcess>%aditoprj%/entity/Salesproject_entity/recordcontainers/db/filterextensions/phase_filterextention/groupQueryProcess.js</groupQueryProcess>
-        </filterExtension>
         <filterExtension>
           <name>Favorite_filter</name>
           <title>Favoritegroup</title>
diff --git a/entity/Salesproject_entity/recordcontainers/db/filterextensions/phase_filterextention/filterConditionProcess.js b/entity/Salesproject_entity/recordcontainers/db/filterextensions/phase_filterextention/filterConditionProcess.js
deleted file mode 100644
index 89417141617570df1b3f8086d49d8a17beabc0ee..0000000000000000000000000000000000000000
--- a/entity/Salesproject_entity/recordcontainers/db/filterextensions/phase_filterextention/filterConditionProcess.js
+++ /dev/null
@@ -1,4 +0,0 @@
-import("Salesproject_lib");
-import("system.result");
-
-result.string(SalesprojectPhaseFilterUtils.makeFilterCondition());
\ No newline at end of file
diff --git a/entity/Salesproject_entity/recordcontainers/db/filterextensions/phase_filterextention/groupQueryProcess.js b/entity/Salesproject_entity/recordcontainers/db/filterextensions/phase_filterextention/groupQueryProcess.js
deleted file mode 100644
index feb925020ad0b58a6ca2fb7d379302cc00545cea..0000000000000000000000000000000000000000
--- a/entity/Salesproject_entity/recordcontainers/db/filterextensions/phase_filterextention/groupQueryProcess.js
+++ /dev/null
@@ -1,4 +0,0 @@
-import("Salesproject_lib");
-import("system.result");
-
-result.string(SalesprojectPhaseFilterUtils.makeGroupQueryProcess());
\ No newline at end of file
diff --git a/process/Salesproject_lib/process.js b/process/Salesproject_lib/process.js
index b0622cece15c0a7318de2fd454f17b4d1ec898ce..bb5701de7b642217b3eb212d70f51c0ea0f77aba 100644
--- a/process/Salesproject_lib/process.js
+++ b/process/Salesproject_lib/process.js
@@ -410,59 +410,4 @@ SalesprojectConversionRate.prototype._getTitleOfKey = function (pKey, pIsGroupin
         return KeywordUtils.getViewValue($KeywordRegistry.salesprojectPhase(),pKey);
         
     return pKey;
-}
-
-/**
- * Methods used by the Salesproject.
- * Do not create an instance of this!
- * 
- * @class
- */
-function SalesprojectPhaseFilterUtils() {}
-
-/**
- * Builds a Sql-condition for a salesproject filter extension. This allows to filter via the salesproject phase whilst havin them in the correct Order
- * 
- * @return {String} condition
- */
-SalesprojectPhaseFilterUtils.makeFilterCondition = function()
-{
-    return newWhereIfSet( "SALESPROJECT.PHASE", vars.get("$local.rawvalue"));
-}
-
-/**
- * Builds a Sql-condition for a salesproject filter extension. This allows to filter via the salesproject phase whilst havin them in the correct Order
- * 
- * @return {String} condition
- */
-SalesprojectPhaseFilterUtils.makeGroupQueryProcess = function()
-{
-    var order = vars.get("$local.order");
-    var sqlHelper = new SqlMaskingUtils();
-    var groupedList = "SALESPROJECT.PHASE"
-    var condition = vars.get("$local.condition");
-    var stmt = new SqlBuilder().from("SALESPROJECT").join("AB_KEYWORD_ENTRY", newWhere("AB_KEYWORD_ENTRY.KEYID = SALESPROJECT.PHASE").and("AB_KEYWORD_ENTRY.AB_KEYWORD_CATEGORY_ID", KeywordUtils.getCategoryIdByName($KeywordRegistry.salesprojectPhase()))).groupBy(groupedList + ", AB_KEYWORD_ENTRY.SORTING, AB_KEYWORD_ENTRY.KEYID");
-
-    if (!Utils.isNullOrEmptyString(condition.trim()))
-    {
-        stmt.where(condition);
-    }
-
-    if (vars.get("$local.count")) // TRUE if the count of the records is needed
-    {
-        stmt.select(["1 COUNT", groupedList]) //from ACTIVITY where " + condition + " group by "+groupedList+") X";
-        stmt = newSelect("STMT.COUNT")
-        .from(stmt, "STMT")
-
-    } 
-    else 
-    {
-        stmt.select([groupedList , KeywordUtils.getResolvedTitleSqlPart($KeywordRegistry.salesprojectPhase(),"AB_KEYWORD_ENTRY.KEYID"), "count(*)", "count(*)"])
-        if (order != null)
-        {
-            stmt.orderBy("AB_KEYWORD_ENTRY.SORTING, " + order);
-        }
-    }
-
-        return stmt.toString();
-}
+}
\ No newline at end of file