diff --git a/entity/SalesprojectCycle_entity/SalesprojectCycle_entity.aod b/entity/SalesprojectCycle_entity/SalesprojectCycle_entity.aod
index be74ba453853e3f9ad82337e67bce1e6b88daae6..d1d4e7cb60c638b38f5f5f6f2c5de8fb0a3b90ae 100644
--- a/entity/SalesprojectCycle_entity/SalesprojectCycle_entity.aod
+++ b/entity/SalesprojectCycle_entity/SalesprojectCycle_entity.aod
@@ -6,6 +6,14 @@
   <recordContainerType>DB</recordContainerType>
   <alias>Data_alias</alias>
   <conditionProcess>%aditoprj%/entity/SalesprojectCycle_entity/conditionProcess.js</conditionProcess>
+  <linkInformation>
+    <linkInformation>
+      <name>479f5969-fe03-4b36-8437-d2efc967e7b9</name>
+      <tableName>SALESPROJECT_CYCLE</tableName>
+      <primaryKey>SALESPROJECT_CYCLEID</primaryKey>
+      <isUIDTable v="true" />
+    </linkInformation>
+  </linkInformation>
   <entityFields>
     <entityIncomingField>
       <name>#INCOMING</name>
@@ -40,16 +48,18 @@
     </entityField>
     <entityField>
       <name>TYPE</name>
+      <title>Type</title>
       <tableName>SALESPROJECT_CYCLE</tableName>
       <columnName>TYPE</columnName>
-      <contentType>NUMBER</contentType>
-      <valueProcess>%aditoprj%/entity/SalesprojectCycle_entity/entityfields/type/valueProcess.js</valueProcess>
+      <mandatory v="true" />
+      <possibleItemsProcess>%aditoprj%/entity/SalesprojectCycle_entity/entityfields/type/possibleItemsProcess.js</possibleItemsProcess>
     </entityField>
     <entityField>
       <name>VALUE</name>
       <title>Milestone</title>
       <tableName>SALESPROJECT_CYCLE</tableName>
       <columnName>VALUE</columnName>
+      <mandatory v="true" />
       <possibleItemsProcess>%aditoprj%/entity/SalesprojectCycle_entity/entityfields/value/possibleItemsProcess.js</possibleItemsProcess>
       <valueProcess>%aditoprj%/entity/SalesprojectCycle_entity/entityfields/value/valueProcess.js</valueProcess>
     </entityField>
@@ -97,12 +107,4 @@
       </dependencies>
     </entityIncomingField>
   </entityFields>
-  <linkInformation>
-    <linkInformation>
-      <name>479f5969-fe03-4b36-8437-d2efc967e7b9</name>
-      <tableName>SALESPROJECT_CYCLE</tableName>
-      <primaryKey>SALESPROJECT_CYCLEID</primaryKey>
-      <isUIDTable v="true" />
-    </linkInformation>
-  </linkInformation>
 </entity>
diff --git a/entity/SalesprojectCycle_entity/entityfields/type/possibleItemsProcess.js b/entity/SalesprojectCycle_entity/entityfields/type/possibleItemsProcess.js
new file mode 100644
index 0000000000000000000000000000000000000000..ca7ec2ba2613657ca68da7bb446b478e7202b167
--- /dev/null
+++ b/entity/SalesprojectCycle_entity/entityfields/type/possibleItemsProcess.js
@@ -0,0 +1,8 @@
+import("system.result");
+import("system.vars");
+import("system.logging");
+import("Keyword_lib");
+
+var items = KeywordUtils.getStandardArray("SALESPROJECT.CYCLE.TYPE");
+logging.log(items.toSource())
+result.object(items);
\ No newline at end of file
diff --git a/entity/SalesprojectCycle_entity/entityfields/type/valueProcess.js b/entity/SalesprojectCycle_entity/entityfields/type/valueProcess.js
deleted file mode 100644
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000
diff --git a/entity/SalesprojectCycle_entity/entityfields/value/possibleItemsProcess.js b/entity/SalesprojectCycle_entity/entityfields/value/possibleItemsProcess.js
index 57e45b9818006cef098c79a0064881e75691d23c..a3310ce62f2aa727a6a43c90109e7611eadddb46 100644
--- a/entity/SalesprojectCycle_entity/entityfields/value/possibleItemsProcess.js
+++ b/entity/SalesprojectCycle_entity/entityfields/value/possibleItemsProcess.js
@@ -1,17 +1,19 @@
 import("system.result");
 import("system.vars");
+import("system.logging");
 import("Keyword_lib");
 
-var kwdUtils, items, keyword, type;
+var items, keyword, type;
 
 items = [];
 
-type = vars.getString("$field.TYPE")
+type = vars.getString("$field.TYPE");
+logging.log(type.toSource())
 
+// load the possible values based on the type.
 if (type) {
-    keyword = KeywordUtils.createKeyword("SALESPROJECT.CYCLE.TYPE")
-                      .getPropForKey(vars.getString("$field.TYPE"), "keyword", true);
-            
+    keyword = KeywordUtils.get("SALESPROJECT.CYCLE.TYPE", type)[2].keyword;
+        
     if (keyword) {
         items = KeywordUtils.getStandardArray(keyword);
     }
diff --git a/language/_____LANGUAGE_de/_____LANGUAGE_de.aod b/language/_____LANGUAGE_de/_____LANGUAGE_de.aod
index ad2ae0ca0f87e4f55ef9dd5ef1ccc3378fca0f48..38c56ae3089a48841e2b2aa9264b3b02e2559c0b 100644
--- a/language/_____LANGUAGE_de/_____LANGUAGE_de.aod
+++ b/language/_____LANGUAGE_de/_____LANGUAGE_de.aod
@@ -300,8 +300,7 @@
     </entry>
     <entry>
       <key>State</key>
-      <value>Status
-</value>
+      <value>Status</value>
     </entry>
     <entry>
       <key>Region</key>
diff --git a/neonView/SalesprojectCycleEdit_view/SalesprojectCycleEdit_view.aod b/neonView/SalesprojectCycleEdit_view/SalesprojectCycleEdit_view.aod
index 00726785ae72abd4518a6fb1ea881aae98a3f847..ac922eb7331db5fa7bf154d6ceb395bb558d33f2 100644
--- a/neonView/SalesprojectCycleEdit_view/SalesprojectCycleEdit_view.aod
+++ b/neonView/SalesprojectCycleEdit_view/SalesprojectCycleEdit_view.aod
@@ -21,6 +21,10 @@
           <name>5df5e35b-4967-4efd-98ac-a57f757e04b4</name>
           <entityField>DATE_END</entityField>
         </entityFieldLink>
+        <entityFieldLink>
+          <name>db138f88-0cc7-42d9-a5d6-2bfc4f13985c</name>
+          <entityField>TYPE</entityField>
+        </entityFieldLink>
         <entityFieldLink>
           <name>71891f0f-e610-4584-8936-f2249e99e7ac</name>
           <entityField>VALUE</entityField>
diff --git a/neonView/SalesprojectCycleFilter_view/SalesprojectCycleFilter_view.aod b/neonView/SalesprojectCycleFilter_view/SalesprojectCycleFilter_view.aod
index 0e640fea74fbaef62f5488de76b9d3d87beb1cd9..17d838b10fb61c275281e7919bb8994d2ae4e02f 100644
--- a/neonView/SalesprojectCycleFilter_view/SalesprojectCycleFilter_view.aod
+++ b/neonView/SalesprojectCycleFilter_view/SalesprojectCycleFilter_view.aod
@@ -11,12 +11,17 @@
   <children>
     <tableViewTemplate>
       <name>SalesprojectCycleFilter_template</name>
+      <autoNewRow v="true" />
       <entityField>#ENTITY</entityField>
       <columns>
         <neonTableColumn>
           <name>1f66befa-a479-437e-b68f-da3cac6fed90</name>
           <entityField>DATE_START</entityField>
         </neonTableColumn>
+        <neonTableColumn>
+          <name>5001e853-a479-4e63-a0c6-3021926402b6</name>
+          <entityField>TYPE</entityField>
+        </neonTableColumn>
         <neonTableColumn>
           <name>8a4c91ad-a1e4-4a94-acad-de232c7b0be7</name>
           <entityField>VALUE</entityField>
diff --git a/process/Keyword_lib/process.js b/process/Keyword_lib/process.js
index 222a8222e92a94dd65732457e6f971590428e005..ca80a4a47d7544f51de5891769e50b1b8bbefee6 100644
--- a/process/Keyword_lib/process.js
+++ b/process/Keyword_lib/process.js
@@ -34,7 +34,7 @@ function KeywordUtils(){
      * result.object(item);
      */
     KeywordUtils.get = function(keywordType, key){
-        return this.createKeyword(keywordType).getPropsForKey(key, ["id", "name", "customProperties"]);
+        return KeywordUtils.createKeyword(keywordType).getPropsForKey(key, ["id", "name", "customProperties"]);
     }
     
     /**
@@ -280,23 +280,23 @@ function KeywordUtils(){
                 ]);
                 break;
             case "SALESPROJECT.CYCLE.TYPE":
-                valueContainer = createKeywordEntriesContainer([
-                     createKeywordEntry("1", translate.text("Phase"), null, {keyword: "SALESPROJECT.PHASE"})
-                    ,createKeywordEntry("2", translate.text("State"), null, {keyword: "SALESPROJECT.STATE"})
+                valueContainer = _createKeywordEntriesContainer([
+                     _createKeywordEntry("1", translate.text("Phase"), null, {keyword: "SALESPROJECT.PHASE"})
+                    ,_createKeywordEntry("2", translate.text("State"), null, {keyword: "SALESPROJECT.STATE"})
                 ]);
                 break;
             case "SALESPROJECT.CLASS":
-                valueContainer = createKeywordEntriesContainer([
-                     createKeywordEntry("1", translate.text("Class A"), null, {keywords: ["CLASS.BRANCHE", "CLASS.BASED", "CLASS.USERS"]})
-                    ,createKeywordEntry("2", translate.text("Class B"), null, {keywords: ["CLASS.BUDGET", "CLASS.STANDARD", "CLASS.CUSTOMIZING"]})
-                    ,createKeywordEntry("3", translate.text("Class C"), null, {keywords: ["CLASS.POSITION", "CLASS.PROJSTART", "CLASS.CLOUD", "CLASSES.DEPARTMENT"]})
+                valueContainer = _createKeywordEntriesContainer([
+                     _createKeywordEntry("1", translate.text("Class A"), null, {keywords: ["CLASS.BRANCHE", "CLASS.BASED", "CLASS.USERS"]})
+                    ,_createKeywordEntry("2", translate.text("Class B"), null, {keywords: ["CLASS.BUDGET", "CLASS.STANDARD", "CLASS.CUSTOMIZING"]})
+                    ,_createKeywordEntry("3", translate.text("Class C"), null, {keywords: ["CLASS.POSITION", "CLASS.PROJSTART", "CLASS.CLOUD", "CLASSES.DEPARTMENT"]})
                 ]);
                 break;
             case "CLASS.BRANCHE":
-                valueContainer = createKeywordEntriesContainer([
-                     createKeywordEntry("1", translate.text("Branche 1"), null)
-                    ,createKeywordEntry("2", translate.text("Branche 2"), null)
-                    ,createKeywordEntry("3", translate.text("Branche 3"), null)
+                valueContainer = _createKeywordEntriesContainer([
+                     _createKeywordEntry("1", translate.text("Branche 1"), null)
+                    ,_createKeywordEntry("2", translate.text("Branche 2"), null)
+                    ,_createKeywordEntry("3", translate.text("Branche 3"), null)
                 ]);
                 break;
             case "OFFER.PROBABILITY":