From d74df4c2608e3b3a33bb10e5928654883eaef58c Mon Sep 17 00:00:00 2001
From: Johannes Hoermann <j.hoermann@adito.de>
Date: Fri, 1 Feb 2019 15:03:58 +0100
Subject: [PATCH] Objectrelations in ein paar contexte eingebunden

---
 entity/Contract_entity/Contract_entity.aod    | 20 +++++++++++++++++++
 .../children/anyobjectrowid_param/code.js     |  4 ++++
 .../children/anyobjecttype_param/code.js      |  4 ++++
 .../ObjectRelation_entity.aod                 | 17 +++++++++++-----
 .../Salesproject_entity.aod                   | 20 +++++++++++++++++++
 .../children/anyobjectrowid_param/code.js     |  4 ++++
 .../children/anyobjecttype_param/code.js      |  4 ++++
 .../ActivityLinkFilter_view.aod               |  4 ++++
 .../ContractMain_view/ContractMain_view.aod   |  5 +++++
 .../SalesprojectMain_view.aod                 |  5 +++++
 .../example_salesproject/SALESPROJECT_gfk.xml | 10 +++++++++-
 11 files changed, 91 insertions(+), 6 deletions(-)
 create mode 100644 entity/Contract_entity/entityfields/objectrelation_dfo/children/anyobjectrowid_param/code.js
 create mode 100644 entity/Contract_entity/entityfields/objectrelation_dfo/children/anyobjecttype_param/code.js
 create mode 100644 entity/Salesproject_entity/entityfields/objectrelation_dfo/children/anyobjectrowid_param/code.js
 create mode 100644 entity/Salesproject_entity/entityfields/objectrelation_dfo/children/anyobjecttype_param/code.js

diff --git a/entity/Contract_entity/Contract_entity.aod b/entity/Contract_entity/Contract_entity.aod
index 13b0f583d98..886a71f4f69 100644
--- a/entity/Contract_entity/Contract_entity.aod
+++ b/entity/Contract_entity/Contract_entity.aod
@@ -235,6 +235,26 @@
         </entityParameter>
       </children>
     </entityOutgoingField>
+    <entityOutgoingField>
+      <name>ObjectRelation_dfo</name>
+      <title>Relations</title>
+      <fieldType>DEPENDENCY_OUT</fieldType>
+      <dependency>
+        <name>dependency</name>
+        <entityName>ObjectRelation_entity</entityName>
+        <fieldName>ByAnyObject_dfi</fieldName>
+      </dependency>
+      <children>
+        <entityParameter>
+          <name>AnyObjectRowid_param</name>
+          <code>%aditoprj%/entity/Contract_entity/entityfields/objectrelation_dfo/children/anyobjectrowid_param/code.js</code>
+        </entityParameter>
+        <entityParameter>
+          <name>AnyObjectType_param</name>
+          <code>%aditoprj%/entity/Contract_entity/entityfields/objectrelation_dfo/children/anyobjecttype_param/code.js</code>
+        </entityParameter>
+      </children>
+    </entityOutgoingField>
   </entityFields>
   <recordContainers>
     <dbRecordContainer>
diff --git a/entity/Contract_entity/entityfields/objectrelation_dfo/children/anyobjectrowid_param/code.js b/entity/Contract_entity/entityfields/objectrelation_dfo/children/anyobjectrowid_param/code.js
new file mode 100644
index 00000000000..6a986948950
--- /dev/null
+++ b/entity/Contract_entity/entityfields/objectrelation_dfo/children/anyobjectrowid_param/code.js
@@ -0,0 +1,4 @@
+import("system.vars");
+import("system.result");
+
+result.string(vars.get("$field.CONTRACTID"));
\ No newline at end of file
diff --git a/entity/Contract_entity/entityfields/objectrelation_dfo/children/anyobjecttype_param/code.js b/entity/Contract_entity/entityfields/objectrelation_dfo/children/anyobjecttype_param/code.js
new file mode 100644
index 00000000000..008915f61de
--- /dev/null
+++ b/entity/Contract_entity/entityfields/objectrelation_dfo/children/anyobjecttype_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/ObjectRelation_entity/ObjectRelation_entity.aod b/entity/ObjectRelation_entity/ObjectRelation_entity.aod
index 33b356f0587..76b6aec8681 100644
--- a/entity/ObjectRelation_entity/ObjectRelation_entity.aod
+++ b/entity/ObjectRelation_entity/ObjectRelation_entity.aod
@@ -215,6 +215,18 @@
           <fieldName>ObjectRelation_dfo</fieldName>
           <isOutgoing v="false" />
         </entityDependency>
+        <entityDependency>
+          <name>5c2e0fd4-8b64-46c7-afe1-fbb5fbbbedf8</name>
+          <entityName>Salesproject_entity</entityName>
+          <fieldName>ObjectRelation_dfo</fieldName>
+          <isOutgoing v="false" />
+        </entityDependency>
+        <entityDependency>
+          <name>e91667d7-9031-4c91-82af-5db255305793</name>
+          <entityName>Contract_entity</entityName>
+          <fieldName>ObjectRelation_dfo</fieldName>
+          <isOutgoing v="false" />
+        </entityDependency>
       </dependencies>
       <children>
         <entityParameter>
@@ -243,11 +255,6 @@
         </entityParameter>
       </children>
     </entityIncomingField>
-    <entityIncomingField>
-      <name>test_dfi</name>
-      <fieldType>DEPENDENCY_IN</fieldType>
-      <recordContainer>db</recordContainer>
-    </entityIncomingField>
   </entityFields>
   <recordContainers>
     <dbRecordContainer>
diff --git a/entity/Salesproject_entity/Salesproject_entity.aod b/entity/Salesproject_entity/Salesproject_entity.aod
index 15e361722c0..1925dee683d 100644
--- a/entity/Salesproject_entity/Salesproject_entity.aod
+++ b/entity/Salesproject_entity/Salesproject_entity.aod
@@ -306,6 +306,26 @@
       <expose v="true" />
       <description>PARAMETER</description>
     </entityParameter>
+    <entityOutgoingField>
+      <name>ObjectRelation_dfo</name>
+      <title>Relations</title>
+      <fieldType>DEPENDENCY_OUT</fieldType>
+      <dependency>
+        <name>dependency</name>
+        <entityName>ObjectRelation_entity</entityName>
+        <fieldName>ByAnyObject_dfi</fieldName>
+      </dependency>
+      <children>
+        <entityParameter>
+          <name>AnyObjectRowid_param</name>
+          <code>%aditoprj%/entity/Salesproject_entity/entityfields/objectrelation_dfo/children/anyobjectrowid_param/code.js</code>
+        </entityParameter>
+        <entityParameter>
+          <name>AnyObjectType_param</name>
+          <code>%aditoprj%/entity/Salesproject_entity/entityfields/objectrelation_dfo/children/anyobjecttype_param/code.js</code>
+        </entityParameter>
+      </children>
+    </entityOutgoingField>
   </entityFields>
   <recordContainers>
     <dbRecordContainer>
diff --git a/entity/Salesproject_entity/entityfields/objectrelation_dfo/children/anyobjectrowid_param/code.js b/entity/Salesproject_entity/entityfields/objectrelation_dfo/children/anyobjectrowid_param/code.js
new file mode 100644
index 00000000000..2b119ebfa19
--- /dev/null
+++ b/entity/Salesproject_entity/entityfields/objectrelation_dfo/children/anyobjectrowid_param/code.js
@@ -0,0 +1,4 @@
+import("system.vars");
+import("system.result");
+
+result.string(vars.get("$field.SALESPROJECTID"));
\ No newline at end of file
diff --git a/entity/Salesproject_entity/entityfields/objectrelation_dfo/children/anyobjecttype_param/code.js b/entity/Salesproject_entity/entityfields/objectrelation_dfo/children/anyobjecttype_param/code.js
new file mode 100644
index 00000000000..008915f61de
--- /dev/null
+++ b/entity/Salesproject_entity/entityfields/objectrelation_dfo/children/anyobjecttype_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/neonView/ActivityLinkFilter_view/ActivityLinkFilter_view.aod b/neonView/ActivityLinkFilter_view/ActivityLinkFilter_view.aod
index a572f5a1933..597ac9502a5 100644
--- a/neonView/ActivityLinkFilter_view/ActivityLinkFilter_view.aod
+++ b/neonView/ActivityLinkFilter_view/ActivityLinkFilter_view.aod
@@ -13,6 +13,10 @@
       <name>ActivityLinkFilter_template</name>
       <entityField>#ENTITY</entityField>
       <columns>
+        <neonTableColumn>
+          <name>2cf427f2-2dcd-4e4e-9f5c-82f103f9cf86</name>
+          <entityField>OBJECT_TYPE</entityField>
+        </neonTableColumn>
         <neonTableColumn>
           <name>27bc9661-7f28-44d6-bda5-1353d8734b7a</name>
           <entityField>OBJECT_ROWID</entityField>
diff --git a/neonView/ContractMain_view/ContractMain_view.aod b/neonView/ContractMain_view/ContractMain_view.aod
index 336d5e46fa3..1f9ead0fdb3 100644
--- a/neonView/ContractMain_view/ContractMain_view.aod
+++ b/neonView/ContractMain_view/ContractMain_view.aod
@@ -24,5 +24,10 @@
       <entityField>ContractDocument_dfo</entityField>
       <view>DocumentFilter_view</view>
     </neonViewReference>
+    <neonViewReference>
+      <name>b6b0289f-9faa-42c6-812d-fe4dbc1f3be4</name>
+      <entityField>ObjectRelation_dfo</entityField>
+      <view>ObjectRelationFilter_view</view>
+    </neonViewReference>
   </children>
 </neonView>
diff --git a/neonView/SalesprojectMain_view/SalesprojectMain_view.aod b/neonView/SalesprojectMain_view/SalesprojectMain_view.aod
index 54629c46a54..ffebd06fd96 100644
--- a/neonView/SalesprojectMain_view/SalesprojectMain_view.aod
+++ b/neonView/SalesprojectMain_view/SalesprojectMain_view.aod
@@ -59,5 +59,10 @@
       <entityField>SalesprojectTimetracking_dfo</entityField>
       <view>TimetrackingFilter_view</view>
     </neonViewReference>
+    <neonViewReference>
+      <name>d02bf839-1901-4ca1-bcee-245ee9512fe2</name>
+      <entityField>ObjectRelation_dfo</entityField>
+      <view>ObjectRelationFilter_view</view>
+    </neonViewReference>
   </children>
 </neonView>
diff --git a/others/db_changes/data_alias/data/example_salesproject/SALESPROJECT_gfk.xml b/others/db_changes/data_alias/data/example_salesproject/SALESPROJECT_gfk.xml
index 5c486a82cab..e98798d6a81 100644
--- a/others/db_changes/data_alias/data/example_salesproject/SALESPROJECT_gfk.xml
+++ b/others/db_changes/data_alias/data/example_salesproject/SALESPROJECT_gfk.xml
@@ -19,7 +19,15 @@
         <column name="ESTIMATIONVALUE" valueNumeric="2"/>
         <column name="PROBABILITY" valueNumeric="30"/>
     </insert>
-
+    <insert tableName="AB_OBJECTRELATION">
+        <column name="AB_OBJECTRELATIONID" value="6dd516b2-7887-4a17-930a-d39607c8b626"/>
+        <column name="USER_NEW" value="admin"/>
+        <column name="DATE_NEW" valueDate="2018-06-13T09:03:43"/>
+        <column name="OBJECT1_TYPE" value="Salesproject_context"/>
+        <column name="OBJECT1_ROWID" value="0833465c-8851-4fbb-b7e3-8c1d73c903da"/>
+        <column name="OBJECT2_TYPE" value="Pers_context"/>
+        <column name="OBJECT2_ROWID" value="1a67eaa7-21da-4a18-97ab-755ac5cb74f7"/>
+    </insert>
     <insert tableName="SALESPROJECT_SOURCE">
         <column name="SALESPROJECT_SOURCEID" value="1c1f83ad-9e4b-4d0f-b820-98e724e34aec"/>
         <column name="USER_NEW" value="admin"/>
-- 
GitLab