diff --git a/aliasDefinition/Data_alias/Data_alias.aod b/aliasDefinition/Data_alias/Data_alias.aod
index c6a34fb55d8c01181ef7853da03ebf1897d0768d..33b32e1133b981bfb92d44fa8854a5686ae12b67 100644
--- a/aliasDefinition/Data_alias/Data_alias.aod
+++ b/aliasDefinition/Data_alias/Data_alias.aod
@@ -3443,20 +3443,6 @@
                 <title></title>
                 <description></description>
               </entityFieldDb>
-              <entityFieldDb>
-                <name>ORGNAME</name>
-                <dbName></dbName>
-                <primaryKey v="false" />
-                <columnType v="12" />
-                <size v="50" />
-                <scale v="0" />
-                <notNull v="false" />
-                <isUnique v="false" />
-                <index v="false" />
-                <documentation></documentation>
-                <title></title>
-                <description></description>
-              </entityFieldDb>
               <entityFieldDb>
                 <name>DATE_NEW</name>
                 <dbName></dbName>
@@ -3569,6 +3555,20 @@
                 <title></title>
                 <description></description>
               </entityFieldDb>
+              <entityFieldDb>
+                <name>RELATION_ID</name>
+                <dbName></dbName>
+                <primaryKey v="false" />
+                <columnType v="1" />
+                <size v="36" />
+                <scale v="0" />
+                <notNull v="true" />
+                <isUnique v="false" />
+                <index v="false" />
+                <documentation></documentation>
+                <title></title>
+                <description></description>
+              </entityFieldDb>
             </entityFields>
           </entityDb>
           <entityDb>
diff --git a/entity/SalesprojectCompetition_entity/SalesprojectCompetition_entity.aod b/entity/SalesprojectCompetition_entity/SalesprojectCompetition_entity.aod
index 0de0f5401f69dfe8848a4cfb57b8ebdb73bfabd3..45202a13b647c27e2726f3d7098ffdf9e6435e06 100644
--- a/entity/SalesprojectCompetition_entity/SalesprojectCompetition_entity.aod
+++ b/entity/SalesprojectCompetition_entity/SalesprojectCompetition_entity.aod
@@ -5,7 +5,28 @@
   <majorModelMode>DISTRIBUTED</majorModelMode>
   <recordContainerType>DB</recordContainerType>
   <alias>Data_alias</alias>
+  <fromClauseProcess>%aditoprj%/entity/SalesprojectCompetition_entity/fromClauseProcess.js</fromClauseProcess>
   <conditionProcess>%aditoprj%/entity/SalesprojectCompetition_entity/conditionProcess.js</conditionProcess>
+  <linkInformation>
+    <linkInformation>
+      <name>20f54241-6118-4887-b558-471d4657816c</name>
+      <tableName>SALESPROJECT_COMPETITION</tableName>
+      <primaryKey>SALESPROJECT_COMPETITIONID</primaryKey>
+      <isUIDTable v="true" />
+    </linkInformation>
+    <linkInformation>
+      <name>32d1fb91-f382-4416-84d5-934676b495d8</name>
+      <tableName>ORG</tableName>
+      <primaryKey>ORGID</primaryKey>
+      <readonly v="true" />
+    </linkInformation>
+    <linkInformation>
+      <name>02ac74a0-e9a1-44e8-9bc2-358b11b4cb54</name>
+      <tableName>RELATION</tableName>
+      <primaryKey>RELATIONID</primaryKey>
+      <readonly v="true" />
+    </linkInformation>
+  </linkInformation>
   <entityFields>
     <entityIncomingField>
       <name>#INCOMING</name>
@@ -36,13 +57,6 @@
       <tableName>SALESPROJECT_COMPETITION</tableName>
       <columnName>INFO</columnName>
     </entityField>
-    <entityField>
-      <name>ORGNAME</name>
-      <title>Competitor</title>
-      <tableName>SALESPROJECT_COMPETITION</tableName>
-      <columnName>ORGNAME</columnName>
-      <mandatory v="true" />
-    </entityField>
     <entityField>
       <name>REASON</name>
       <title>Reason</title>
@@ -103,13 +117,21 @@
         </entityDependency>
       </dependencies>
     </entityIncomingField>
-  </entityFields>
-  <linkInformation>
-    <linkInformation>
-      <name>474ddf87-d52d-4e4c-b5e3-30499a96d34c</name>
+    <entityField>
+      <name>RELATION_ID</name>
+      <title>Organisation</title>
       <tableName>SALESPROJECT_COMPETITION</tableName>
-      <primaryKey>SALESPROJECT_COMPETITIONID</primaryKey>
-      <isUIDTable v="true" />
-    </linkInformation>
-  </linkInformation>
+      <columnName>RELATION_ID</columnName>
+    </entityField>
+    <entityField>
+      <name>ORG_NAME</name>
+      <tableName>ORG</tableName>
+      <columnName>NAME</columnName>
+    </entityField>
+    <entityField>
+      <name>ORG_ORGID</name>
+      <tableName>ORG</tableName>
+      <columnName>ORGID</columnName>
+    </entityField>
+  </entityFields>
 </entity>
diff --git a/entity/SalesprojectCompetition_entity/fromClauseProcess.js b/entity/SalesprojectCompetition_entity/fromClauseProcess.js
new file mode 100644
index 0000000000000000000000000000000000000000..07f8a92fe2b62b8689d2aa03f069e783ea00c858
--- /dev/null
+++ b/entity/SalesprojectCompetition_entity/fromClauseProcess.js
@@ -0,0 +1,4 @@
+import("system.result");
+
+result.string("SALESPROJECT_COMPETITION left join RELATION on (RELATION.RELATIONID = SALESPROJECT_COMPETITION.RELATION_ID) "
+            + "left join ORG on (ORG.ORGID = RELATION.ORG_ID)");
\ No newline at end of file
diff --git a/entity/SalesprojectCycle_entity/SalesprojectCycle_entity.aod b/entity/SalesprojectCycle_entity/SalesprojectCycle_entity.aod
index d1d4e7cb60c638b38f5f5f6f2c5de8fb0a3b90ae..54f0a57a75684f4dd25c5c25d7d8407af7a520b7 100644
--- a/entity/SalesprojectCycle_entity/SalesprojectCycle_entity.aod
+++ b/entity/SalesprojectCycle_entity/SalesprojectCycle_entity.aod
@@ -6,6 +6,7 @@
   <recordContainerType>DB</recordContainerType>
   <alias>Data_alias</alias>
   <conditionProcess>%aditoprj%/entity/SalesprojectCycle_entity/conditionProcess.js</conditionProcess>
+  <onDBUpdate>%aditoprj%/entity/SalesprojectCycle_entity/onDBUpdate.js</onDBUpdate>
   <linkInformation>
     <linkInformation>
       <name>479f5969-fe03-4b36-8437-d2efc967e7b9</name>
diff --git a/entity/SalesprojectCycle_entity/onDBUpdate.js b/entity/SalesprojectCycle_entity/onDBUpdate.js
new file mode 100644
index 0000000000000000000000000000000000000000..10a9f323e81df96851efce750776cdc263439180
--- /dev/null
+++ b/entity/SalesprojectCycle_entity/onDBUpdate.js
@@ -0,0 +1 @@
+notifyToUpdateForecast()
\ No newline at end of file
diff --git a/entity/Salesproject_entity/onDBInsert.js b/entity/Salesproject_entity/onDBInsert.js
index 24f917cdcd8ce993c006fb9db673be7d7216283b..46e16c3d687c541b66574fd13cfaa2c00fff2b87 100644
--- a/entity/Salesproject_entity/onDBInsert.js
+++ b/entity/Salesproject_entity/onDBInsert.js
@@ -1,5 +1,5 @@
 import("system.vars");
 import("Salesproject_lib");
 
-Salesproject.insertMilestone(vars.getString("$field.SALESPROJECTID"), 1, vars.get("$field.PHASE"));
-Salesproject.insertMilestone(vars.getString("$field.SALESPROJECTID"), 2, vars.get("$field.STATE"));
\ No newline at end of file
+Salesproject.insertMilestone(vars.getString("$field.SALESPROJECTID"), 1, vars.get("$field.PHASE"), false);
+Salesproject.insertMilestone(vars.getString("$field.SALESPROJECTID"), 2, vars.get("$field.STATE"), true);
\ No newline at end of file
diff --git a/entity/Salesproject_entity/onDBUpdate.js b/entity/Salesproject_entity/onDBUpdate.js
index aeffbb32c2e40dc8932b2cf12d7d9223ad5ccfd9..514b528e696d35c1b2116d3fa05826d6e030790e 100644
--- a/entity/Salesproject_entity/onDBUpdate.js
+++ b/entity/Salesproject_entity/onDBUpdate.js
@@ -17,7 +17,7 @@ vars.get("$local.changed").forEach(function(fieldName) {
     }
         
     if (typeValue) {
-        Salesproject.insertMilestone(vars.getString("$field.SALESPROJECTID"), typeValue, vars.getString(fieldVar));
+        Salesproject.insertMilestone(vars.getString("$field.SALESPROJECTID"), typeValue, vars.getString(fieldVar), true);
     }
 });
 
diff --git a/neonView/SalesprojectCompetitionEdit_view/SalesprojectCompetitionEdit_view.aod b/neonView/SalesprojectCompetitionEdit_view/SalesprojectCompetitionEdit_view.aod
index f5892c53809ab8367ddd8fbead8b236c051f9635..ef5cf22d299b0fe4f411a5e1fbf440de5faf1e9d 100644
--- a/neonView/SalesprojectCompetitionEdit_view/SalesprojectCompetitionEdit_view.aod
+++ b/neonView/SalesprojectCompetitionEdit_view/SalesprojectCompetitionEdit_view.aod
@@ -14,8 +14,8 @@
       <entityField>#ENTITY</entityField>
       <fields>
         <entityFieldLink>
-          <name>f3cc24f9-5c2c-468d-a080-3c7af92e3a89</name>
-          <entityField>ORGNAME</entityField>
+          <name>8b4c3245-7b3a-4cd0-90f0-09631e2dbde8</name>
+          <entityField>RELATION_ID</entityField>
         </entityFieldLink>
         <entityFieldLink>
           <name>cdbba6a7-59d1-4831-b098-98a82ad46444</name>
diff --git a/neonView/SalesprojectCompetitionFilter_view/SalesprojectCompetitionFilter_view.aod b/neonView/SalesprojectCompetitionFilter_view/SalesprojectCompetitionFilter_view.aod
index 11ae73d3e11e261ac99ec903c590947e567e8e9b..46bb55a1b157c5de2786299d56b1d41e784c459b 100644
--- a/neonView/SalesprojectCompetitionFilter_view/SalesprojectCompetitionFilter_view.aod
+++ b/neonView/SalesprojectCompetitionFilter_view/SalesprojectCompetitionFilter_view.aod
@@ -16,7 +16,7 @@
       <columns>
         <neonTableColumn>
           <name>511ea459-1b6f-41e8-b35a-0f67361c82eb</name>
-          <entityField>ORGNAME</entityField>
+          <entityField>RELATION_ID</entityField>
         </neonTableColumn>
         <neonTableColumn>
           <name>322f7067-83ac-486e-9540-16d693775bdb</name>
diff --git a/neonView/SalesprojectCompetitionPreview_view/SalesprojectCompetitionPreview_view.aod b/neonView/SalesprojectCompetitionPreview_view/SalesprojectCompetitionPreview_view.aod
index ac49613c7c4440231b667717f01d111225618f09..110db8a6a7f6abd9a38e4021daea4b93c142a1d0 100644
--- a/neonView/SalesprojectCompetitionPreview_view/SalesprojectCompetitionPreview_view.aod
+++ b/neonView/SalesprojectCompetitionPreview_view/SalesprojectCompetitionPreview_view.aod
@@ -10,7 +10,7 @@
   <children>
     <cardViewTemplate>
       <name>SalesprojectCompetitionHeader_template</name>
-      <titleField>ORGNAME</titleField>
+      <titleField>RELATION_ID</titleField>
       <descriptionField>INFO</descriptionField>
       <entityField>#ENTITY</entityField>
     </cardViewTemplate>
diff --git a/others/db_changes/data/example_salesproject/SALESPROJECT_gfk.xml b/others/db_changes/data/example_salesproject/SALESPROJECT_gfk.xml
index 49d73913e795ae76b5921dc0bb4c9e18dafe740b..a6aca25bd2d0e285cf9a5f0cda984d27d3f729ee 100644
--- a/others/db_changes/data/example_salesproject/SALESPROJECT_gfk.xml
+++ b/others/db_changes/data/example_salesproject/SALESPROJECT_gfk.xml
@@ -61,10 +61,9 @@
         <column name="USER_NEW" value="admin"/>
         <column name="DATE_NEW" valueDate="2018-06-13T09:03:43"/>
         <column name="SALESPROJECT_ID" value="0833465c-8851-4fbb-b7e3-8c1d73c903da"/>
-
         <column name="DATE_CANCELLED" valueDate="2018-06-13T09:03:43"/>
         <column name="INFO" value="starkes Prozess Know-How, wird gefährlich für uns. Dazu private Verbindungen"/>
-        <column name="ORGNAME" value="Lieferdienst  GmbH und Co.KG"/>
+        <column name="RELATION_ID" value="e5a0bbdb-6cc4-4889-97ab-dc5143fbeac2"/>
         <column name="STATUS" valueNumeric="1"/>
     </insert>
     
diff --git a/others/db_changes/struct/create_salesproject_competition.xml b/others/db_changes/struct/create_salesproject_competition.xml
index 9619363054f355624192fcc6bd488d8f961d384c..84c4f33f4e672e9c37f5463fbf5ba1a5a3b7e59f 100644
--- a/others/db_changes/struct/create_salesproject_competition.xml
+++ b/others/db_changes/struct/create_salesproject_competition.xml
@@ -8,10 +8,11 @@
             <column name="SALESPROJECT_ID" type="CHAR(36)">
                 <constraints nullable="false"/>
             </column>
-            
+            <column name="RELATION_ID" type="CHAR(36)">
+                <constraints nullable="false"/>
+            </column>
             <column name="DATE_CANCELLED" type="TIMESTAMP"/>
             <column name="INFO" type="NCLOB"/>
-            <column name="ORGNAME" type="VARCHAR(50)"/>
             <column name="REASON" type="INTEGER"/>
             <column name="STATUS" type="INTEGER"/>    
                         
diff --git a/process/Salesproject_lib/process.js b/process/Salesproject_lib/process.js
index 4d5599f65bde186da02439ee7a7d1d3cbeb3cca7..ff3579d430cf3959cc1f1ccbb37ff87c0d4db740 100644
--- a/process/Salesproject_lib/process.js
+++ b/process/Salesproject_lib/process.js
@@ -1,6 +1,8 @@
 import("system.translate");
 import("system.db");
 import("system.eMath");
+import("system.question");
+import("system.logging");
 import("Util_lib");
 import("Keyword_lib");
 
@@ -27,7 +29,7 @@ Salesproject.getNextProjectNumber = function() {
  * 
  * @param {String} projectNumber project number to check
  * 
- * @result {boolean} passed number is valid
+ * @result {Boolean} passed number is valid
  */
 Salesproject.validateProjectNumber = function(projectNumber) {
     var JdUtils = new JDitoUtils();
@@ -40,19 +42,30 @@ Salesproject.validateProjectNumber = function(projectNumber) {
  * @param {String} salesprojectId of the salesproject
  * @param {Integer} type can be any value of the keyword SALESPROJECT.CYCLE.TYPE
  * @param {Integer} value value of the phase or state
+ * @param {Boolean} notifyForecast if true, notify user to update the forecast
  * 
- * @result {boolean} true if inserted, else false
+ * @result {Boolean} true if inserted, else false
  */
-Salesproject.insertMilestone = function(salesprojectId, type, value) {
+Salesproject.insertMilestone = function(salesprojectId, type, value, notifyForecast) {
     if (KeywordUtils.createKeyword("SALESPROJECT.CYCLE.TYPE").exists(type)) {
         db.insertData(
             "SALESPROJECT_CYCLE",
             ["SALESPROJECT_CYCLEID", "SALESPROJECT_ID", "TYPE", "VALUE", "DATE_START", "USER_NEW", "DATE_NEW"],
             null,
             [util.getNewUUID(), salesprojectId, type, value, vars.get("$sys.date"), vars.get("$sys.user"), vars.get("$sys.date")]);
-
+        if (notifyForecast) {
+            this.notifyToUpdateForecast()
+        }
         return true;
     }
 
     return false;
 }
+
+/**
+ * Notify the user to update the forecast
+ */
+Salesproject.notifyToUpdateForecast = function() {
+    // Todo logging.show durch sinnvolle Meldung ersetzen oder ähnlich...
+    logging.show(translate.text("Please update the forecast."))
+}
\ No newline at end of file