From db41ef01e5205ba353d97f06894e83aa81a915e8 Mon Sep 17 00:00:00 2001
From: Johannes Hoermann <j.hoermann@adito.de>
Date: Tue, 19 Feb 2019 11:31:26 +0100
Subject: [PATCH] =?UTF-8?q?Activit=C3=A4ten=20in=20alle=20Haupt-Contexte?=
 =?UTF-8?q?=20eingebaut?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 entity/Activity_entity/Activity_entity.aod    | 18 +++++++++++++++++
 entity/Contract_entity/Contract_entity.aod    |  4 ++++
 .../children/objectid_param/code.js           |  4 ++++
 entity/Offer_entity/Offer_entity.aod          | 20 +++++++++++++++++++
 .../children/objectid_param/code.js           |  4 ++++
 .../activities/children/rowid_param/code.js   |  4 ++++
 entity/Order_entity/Order_entity.aod          | 20 +++++++++++++++++++
 .../children/objectid_param/code.js           |  4 ++++
 .../activities/children/rowid_param/code.js   |  4 ++++
 entity/Product_entity/Product_entity.aod      | 20 +++++++++++++++++++
 .../children/objectid_param/code.js           |  4 ++++
 .../activities/children/rowid_param/code.js   |  4 ++++
 .../_____LANGUAGE_EXTRA.aod                   |  7 +++++--
 .../_____LANGUAGE_de/_____LANGUAGE_de.aod     | 10 +++++++---
 .../_____LANGUAGE_en/_____LANGUAGE_en.aod     |  9 ++++++---
 neonView/OfferMain_view/OfferMain_view.aod    |  5 +++++
 neonView/OrderMain_view/OrderMain_view.aod    |  5 +++++
 .../ProductMain_view/ProductMain_view.aod     |  5 +++++
 process/Context_lib/process.js                | 17 +++++++++-------
 19 files changed, 153 insertions(+), 15 deletions(-)
 create mode 100644 entity/Contract_entity/entityfields/activities/children/objectid_param/code.js
 create mode 100644 entity/Offer_entity/entityfields/activities/children/objectid_param/code.js
 create mode 100644 entity/Offer_entity/entityfields/activities/children/rowid_param/code.js
 create mode 100644 entity/Order_entity/entityfields/activities/children/objectid_param/code.js
 create mode 100644 entity/Order_entity/entityfields/activities/children/rowid_param/code.js
 create mode 100644 entity/Product_entity/entityfields/activities/children/objectid_param/code.js
 create mode 100644 entity/Product_entity/entityfields/activities/children/rowid_param/code.js

diff --git a/entity/Activity_entity/Activity_entity.aod b/entity/Activity_entity/Activity_entity.aod
index 52c7b770790..c87bb1efc16 100644
--- a/entity/Activity_entity/Activity_entity.aod
+++ b/entity/Activity_entity/Activity_entity.aod
@@ -234,6 +234,24 @@
           <fieldName>Activities</fieldName>
           <isConsumer v="false" />
         </entityDependency>
+        <entityDependency>
+          <name>207920cd-b4b8-4f40-b6c4-6e25d4df9947</name>
+          <entityName>Offer_entity</entityName>
+          <fieldName>Activities</fieldName>
+          <isConsumer v="false" />
+        </entityDependency>
+        <entityDependency>
+          <name>b086fbf7-aa94-441f-a33c-e2ca8eda5dcd</name>
+          <entityName>Order_entity</entityName>
+          <fieldName>Activities</fieldName>
+          <isConsumer v="false" />
+        </entityDependency>
+        <entityDependency>
+          <name>00b4f354-5b82-4071-b70c-acab4780a2de</name>
+          <entityName>Product_entity</entityName>
+          <fieldName>Activities</fieldName>
+          <isConsumer v="false" />
+        </entityDependency>
       </dependencies>
       <children>
         <entityParameter>
diff --git a/entity/Contract_entity/Contract_entity.aod b/entity/Contract_entity/Contract_entity.aod
index 63e27f36ce4..040d0cff489 100644
--- a/entity/Contract_entity/Contract_entity.aod
+++ b/entity/Contract_entity/Contract_entity.aod
@@ -138,6 +138,10 @@
           <name>RowId_param</name>
           <code>%aditoprj%/entity/Contract_entity/entityfields/activities/children/rowid_param/code.js</code>
         </entityParameter>
+        <entityParameter>
+          <name>ObjectId_param</name>
+          <code>%aditoprj%/entity/Contract_entity/entityfields/activities/children/objectid_param/code.js</code>
+        </entityParameter>
       </children>
     </entityConsumer>
     <entityConsumer>
diff --git a/entity/Contract_entity/entityfields/activities/children/objectid_param/code.js b/entity/Contract_entity/entityfields/activities/children/objectid_param/code.js
new file mode 100644
index 00000000000..008915f61de
--- /dev/null
+++ b/entity/Contract_entity/entityfields/activities/children/objectid_param/code.js
@@ -0,0 +1,4 @@
+import("system.result");
+import("Context_lib");
+
+result.string(ContextUtils.getCurrentContextId());
\ No newline at end of file
diff --git a/entity/Offer_entity/Offer_entity.aod b/entity/Offer_entity/Offer_entity.aod
index a8c757e5b62..20b766fbc3c 100644
--- a/entity/Offer_entity/Offer_entity.aod
+++ b/entity/Offer_entity/Offer_entity.aod
@@ -368,6 +368,26 @@
         <fieldName>LanguagesISO3Code</fieldName>
       </dependency>
     </entityConsumer>
+    <entityConsumer>
+      <name>Activities</name>
+      <title>Activities</title>
+      <fieldType>DEPENDENCY_OUT</fieldType>
+      <dependency>
+        <name>dependency</name>
+        <entityName>Activity_entity</entityName>
+        <fieldName>LinkedObjects</fieldName>
+      </dependency>
+      <children>
+        <entityParameter>
+          <name>ObjectId_param</name>
+          <code>%aditoprj%/entity/Offer_entity/entityfields/activities/children/objectid_param/code.js</code>
+        </entityParameter>
+        <entityParameter>
+          <name>RowId_param</name>
+          <code>%aditoprj%/entity/Offer_entity/entityfields/activities/children/rowid_param/code.js</code>
+        </entityParameter>
+      </children>
+    </entityConsumer>
   </entityFields>
   <recordContainers>
     <dbRecordContainer>
diff --git a/entity/Offer_entity/entityfields/activities/children/objectid_param/code.js b/entity/Offer_entity/entityfields/activities/children/objectid_param/code.js
new file mode 100644
index 00000000000..008915f61de
--- /dev/null
+++ b/entity/Offer_entity/entityfields/activities/children/objectid_param/code.js
@@ -0,0 +1,4 @@
+import("system.result");
+import("Context_lib");
+
+result.string(ContextUtils.getCurrentContextId());
\ No newline at end of file
diff --git a/entity/Offer_entity/entityfields/activities/children/rowid_param/code.js b/entity/Offer_entity/entityfields/activities/children/rowid_param/code.js
new file mode 100644
index 00000000000..e9d96c53826
--- /dev/null
+++ b/entity/Offer_entity/entityfields/activities/children/rowid_param/code.js
@@ -0,0 +1,4 @@
+import("system.result");
+import("system.vars");
+
+result.string(vars.get("$field.OFFERID"));
\ No newline at end of file
diff --git a/entity/Order_entity/Order_entity.aod b/entity/Order_entity/Order_entity.aod
index 3940f0c8947..45c68993e43 100644
--- a/entity/Order_entity/Order_entity.aod
+++ b/entity/Order_entity/Order_entity.aod
@@ -358,6 +358,26 @@
       <mandatory v="false" />
       <description>PARAMETER</description>
     </entityParameter>
+    <entityConsumer>
+      <name>Activities</name>
+      <title>Activity</title>
+      <fieldType>DEPENDENCY_OUT</fieldType>
+      <dependency>
+        <name>dependency</name>
+        <entityName>Activity_entity</entityName>
+        <fieldName>LinkedObjects</fieldName>
+      </dependency>
+      <children>
+        <entityParameter>
+          <name>RowId_param</name>
+          <code>%aditoprj%/entity/Order_entity/entityfields/activities/children/rowid_param/code.js</code>
+        </entityParameter>
+        <entityParameter>
+          <name>ObjectId_param</name>
+          <code>%aditoprj%/entity/Order_entity/entityfields/activities/children/objectid_param/code.js</code>
+        </entityParameter>
+      </children>
+    </entityConsumer>
   </entityFields>
   <recordContainers>
     <dbRecordContainer>
diff --git a/entity/Order_entity/entityfields/activities/children/objectid_param/code.js b/entity/Order_entity/entityfields/activities/children/objectid_param/code.js
new file mode 100644
index 00000000000..008915f61de
--- /dev/null
+++ b/entity/Order_entity/entityfields/activities/children/objectid_param/code.js
@@ -0,0 +1,4 @@
+import("system.result");
+import("Context_lib");
+
+result.string(ContextUtils.getCurrentContextId());
\ No newline at end of file
diff --git a/entity/Order_entity/entityfields/activities/children/rowid_param/code.js b/entity/Order_entity/entityfields/activities/children/rowid_param/code.js
new file mode 100644
index 00000000000..229c1cc5524
--- /dev/null
+++ b/entity/Order_entity/entityfields/activities/children/rowid_param/code.js
@@ -0,0 +1,4 @@
+import("system.result");
+import("system.vars");
+
+result.string(vars.get("$field.SALESORDERID"));
\ No newline at end of file
diff --git a/entity/Product_entity/Product_entity.aod b/entity/Product_entity/Product_entity.aod
index 2cd464e46c2..674f22c4d72 100644
--- a/entity/Product_entity/Product_entity.aod
+++ b/entity/Product_entity/Product_entity.aod
@@ -290,6 +290,26 @@
         <fieldName>LanguagesISO3Code</fieldName>
       </dependency>
     </entityConsumer>
+    <entityConsumer>
+      <name>Activities</name>
+      <title>Activity</title>
+      <fieldType>DEPENDENCY_OUT</fieldType>
+      <dependency>
+        <name>dependency</name>
+        <entityName>Activity_entity</entityName>
+        <fieldName>LinkedObjects</fieldName>
+      </dependency>
+      <children>
+        <entityParameter>
+          <name>ObjectId_param</name>
+          <code>%aditoprj%/entity/Product_entity/entityfields/activities/children/objectid_param/code.js</code>
+        </entityParameter>
+        <entityParameter>
+          <name>RowId_param</name>
+          <code>%aditoprj%/entity/Product_entity/entityfields/activities/children/rowid_param/code.js</code>
+        </entityParameter>
+      </children>
+    </entityConsumer>
   </entityFields>
   <recordContainers>
     <dbRecordContainer>
diff --git a/entity/Product_entity/entityfields/activities/children/objectid_param/code.js b/entity/Product_entity/entityfields/activities/children/objectid_param/code.js
new file mode 100644
index 00000000000..008915f61de
--- /dev/null
+++ b/entity/Product_entity/entityfields/activities/children/objectid_param/code.js
@@ -0,0 +1,4 @@
+import("system.result");
+import("Context_lib");
+
+result.string(ContextUtils.getCurrentContextId());
\ No newline at end of file
diff --git a/entity/Product_entity/entityfields/activities/children/rowid_param/code.js b/entity/Product_entity/entityfields/activities/children/rowid_param/code.js
new file mode 100644
index 00000000000..eaa8f9632d8
--- /dev/null
+++ b/entity/Product_entity/entityfields/activities/children/rowid_param/code.js
@@ -0,0 +1,4 @@
+import("system.result");
+import("system.vars");
+
+result.string(vars.get("$field.PRODUCTID"));
\ No newline at end of file
diff --git a/language/_____LANGUAGE_EXTRA/_____LANGUAGE_EXTRA.aod b/language/_____LANGUAGE_EXTRA/_____LANGUAGE_EXTRA.aod
index 6d07ea71054..2e8efe2be5f 100644
--- a/language/_____LANGUAGE_EXTRA/_____LANGUAGE_EXTRA.aod
+++ b/language/_____LANGUAGE_EXTRA/_____LANGUAGE_EXTRA.aod
@@ -2338,10 +2338,13 @@
       <key>Links</key>
     </entry>
     <entry>
-      <key>Linktype</key>
+      <key>${PRODUCT_LIB_NO_PRODUCT_ID} function: %0</key>
     </entry>
     <entry>
-      <key>${PRODUCT_LIB_NO_PRODUCT_ID} function: %0</key>
+      <key>Object type</key>
+    </entry>
+    <entry>
+      <key>Level</key>
     </entry>
   </keyValueMap>
   <font name="Dialog" style="0" size="11" />
diff --git a/language/_____LANGUAGE_de/_____LANGUAGE_de.aod b/language/_____LANGUAGE_de/_____LANGUAGE_de.aod
index f18b405fac7..ffe27c577a3 100644
--- a/language/_____LANGUAGE_de/_____LANGUAGE_de.aod
+++ b/language/_____LANGUAGE_de/_____LANGUAGE_de.aod
@@ -2693,13 +2693,17 @@
     <entry>
       <key>Links</key>
     </entry>
-    <entry>
-      <key>Linktype</key>
-    </entry>
     <entry>
       <key>${PRODUCT_LIB_NO_PRODUCT_ID} function: %0</key>
       <value>Es wird der Funktion %0 keine Produktid übergeben.</value>
     </entry>
+    <entry>
+      <key>Object type</key>
+      <value>Typ</value>
+    </entry>
+    <entry>
+      <key>Level</key>
+    </entry>
   </keyValueMap>
   <font name="Dialog" style="0" size="11" />
 </language>
diff --git a/language/_____LANGUAGE_en/_____LANGUAGE_en.aod b/language/_____LANGUAGE_en/_____LANGUAGE_en.aod
index 78ad4e2a7e8..1e68696cfb1 100644
--- a/language/_____LANGUAGE_en/_____LANGUAGE_en.aod
+++ b/language/_____LANGUAGE_en/_____LANGUAGE_en.aod
@@ -2360,13 +2360,16 @@
     <entry>
       <key>Links</key>
     </entry>
-    <entry>
-      <key>Linktype</key>
-    </entry>
     <entry>
       <key>${PRODUCT_LIB_NO_PRODUCT_ID} function: %0</key>
       <value>Missing productId in function %0.</value>
     </entry>
+    <entry>
+      <key>Object type</key>
+    </entry>
+    <entry>
+      <key>Level</key>
+    </entry>
   </keyValueMap>
   <font name="Dialog" style="0" size="11" />
 </language>
diff --git a/neonView/OfferMain_view/OfferMain_view.aod b/neonView/OfferMain_view/OfferMain_view.aod
index 5b736ba5805..01fc943f6aa 100644
--- a/neonView/OfferMain_view/OfferMain_view.aod
+++ b/neonView/OfferMain_view/OfferMain_view.aod
@@ -14,6 +14,11 @@
       <entityField>#ENTITY</entityField>
       <view>OfferPreview_view</view>
     </neonViewReference>
+    <neonViewReference>
+      <name>a3702740-418d-40d5-9415-788542c14abb</name>
+      <entityField>Activities</entityField>
+      <view>ActivityFilter_view</view>
+    </neonViewReference>
     <neonViewReference>
       <name>e6b12eed-d67e-467c-9302-f6340f901235</name>
       <entityField>#ENTITY</entityField>
diff --git a/neonView/OrderMain_view/OrderMain_view.aod b/neonView/OrderMain_view/OrderMain_view.aod
index e5d693958f3..6e56315bc93 100644
--- a/neonView/OrderMain_view/OrderMain_view.aod
+++ b/neonView/OrderMain_view/OrderMain_view.aod
@@ -14,6 +14,11 @@
       <entityField>#ENTITY</entityField>
       <view>OrderPreview_view</view>
     </neonViewReference>
+    <neonViewReference>
+      <name>7ec102f5-fb45-44a7-9bbf-0eba7f1536d7</name>
+      <entityField>Activities</entityField>
+      <view>ActivityFilter_view</view>
+    </neonViewReference>
     <neonViewReference>
       <name>f5455f3f-0743-47d1-bcb7-f2e83526e329</name>
       <entityField>Orderitems</entityField>
diff --git a/neonView/ProductMain_view/ProductMain_view.aod b/neonView/ProductMain_view/ProductMain_view.aod
index 3f6aabdbf74..68c00aaceec 100644
--- a/neonView/ProductMain_view/ProductMain_view.aod
+++ b/neonView/ProductMain_view/ProductMain_view.aod
@@ -14,6 +14,11 @@
       <entityField>#ENTITY</entityField>
       <view>ProductPreview_view</view>
     </neonViewReference>
+    <neonViewReference>
+      <name>41887933-bb9a-48ce-818d-1db815021a36</name>
+      <entityField>Activities</entityField>
+      <view>ActivityFilter_view</view>
+    </neonViewReference>
     <neonViewReference>
       <name>51f37fe5-91e1-4b76-83b3-be0319e871a4</name>
       <entityField>#ENTITY</entityField>
diff --git a/process/Context_lib/process.js b/process/Context_lib/process.js
index 5965deeba14..db0117bcd46 100644
--- a/process/Context_lib/process.js
+++ b/process/Context_lib/process.js
@@ -105,15 +105,18 @@ ContextUtils._getSelectMap = function()
 {
     var maskingUtils = new SqlMaskingUtils();
     return {
-          // contextId             nameField  Tablename, IDField, isSystemAlias
-        "Organisation": ["\"NAME\"", "ORGANISATION", "ORGANISATIONID", false],
-        "Person": [maskingUtils.concat(["FIRSTNAME", "LASTNAME"]), "PERSON", "PERSONID", false],
-        "Activity": ["SUBJECT", "ACTIVITY", "ACTIVITYID", false],
-        "Salesproject": [maskingUtils.concat([maskingUtils.cast("PROJECTCODE", SQLTYPES.VARCHAR, 10), "':'", "PROJECTTITLE"]), "SALESPROJECT", "SALESPROJECTID", false],
+          // contextId             nameField  Tablename, IDField
+        "Organisation": ["\"NAME\"", "ORGANISATION", "ORGANISATIONID"],
+        "Person": [maskingUtils.concat(["FIRSTNAME", "LASTNAME"]), "PERSON", "PERSONID"],
+        "Activity": ["SUBJECT", "ACTIVITY", "ACTIVITYID"],
+        "Salesproject": [maskingUtils.concat([maskingUtils.cast("PROJECTCODE", SQLTYPES.VARCHAR, 10), "':'", "PROJECTTITLE"]), "SALESPROJECT", "SALESPROJECTID"],
         // TODO: keywords sind noch nicht in der DB somit gibt es nichts ähnliches zu getKeySQL.
         // maskingUtils.concat([SqlMaskingUtils.cast("CONTRACTCODE", "varchar", 10), getKeySQL("CONTRACTTYPE", "CONTRACTTYPE" )])
-        "Contract": [maskingUtils.cast("CONTRACTCODE", SQLTYPES.VARCHAR, 10), "CONTRACT", "CONTRACTID", false]
-//        "Appointment": ["SUMMARY", "ASYS_CALENDARBACKEND", "UID", true]
+        "Contract": [maskingUtils.cast("CONTRACTCODE", SQLTYPES.VARCHAR, 10), "CONTRACT", "CONTRACTID"],
+//        "Appointment": ["SUMMARY", "ASYS_CALENDARBACKEND", "UID"]
+        "Offer": [maskingUtils.cast("OFFERCODE", SQLTYPES.VARCHAR, 10), "OFFER", "OFFERID"],
+        "Order": [maskingUtils.cast("SALESORDERCODE", SQLTYPES.VARCHAR, 10), "SALESORDER", "SALESORDERID"],
+        "Product": ["PRODUCTNAME", "PRODUCT", "PRODUCTID"]
     }
 }
 
-- 
GitLab