From 312021597a36da96ee51cb997eaa85525bf98c3f Mon Sep 17 00:00:00 2001
From: Johannes Hoermann <j.hoermann@adito.de>
Date: Mon, 29 Apr 2019 10:56:40 +0200
Subject: [PATCH] preset address type

---
 .../basic/2019.2/AditoBasic/init_AddressType.xml   |  4 ++--
 .../entityfields/addr_type/valueProcess.js         | 14 ++++++++++++++
 process/KeywordRegistry_basic/process.js           |  4 ++++
 3 files changed, 20 insertions(+), 2 deletions(-)
 create mode 100644 entity/Address_entity/entityfields/addr_type/valueProcess.js

diff --git a/.liquibase/Data_alias/basic/2019.2/AditoBasic/init_AddressType.xml b/.liquibase/Data_alias/basic/2019.2/AditoBasic/init_AddressType.xml
index 365041d051..05ba4b1d39 100644
--- a/.liquibase/Data_alias/basic/2019.2/AditoBasic/init_AddressType.xml
+++ b/.liquibase/Data_alias/basic/2019.2/AditoBasic/init_AddressType.xml
@@ -23,7 +23,7 @@
             <column name="CONTAINER" value="AddressType"/>
             <column name="SORTING" valueNumeric="1"/>
             <column name="ISACTIVE" valueNumeric="1"/>
-            <column name="ISESSENTIAL" valueNumeric="0"/>
+            <column name="ISESSENTIAL" valueNumeric="1"/>
         </insert>
         <insert tableName="AB_KEYWORD_ATTRIBUTERELATION">
             <column name="AB_KEYWORD_ATTRIBUTERELATIONID" value="a62eae3b-b670-4bf7-a144-696d456cd26a"/>
@@ -45,7 +45,7 @@
             <column name="CONTAINER" value="AddressType"/>
             <column name="SORTING" valueNumeric="2"/>
             <column name="ISACTIVE" valueNumeric="1"/>
-            <column name="ISESSENTIAL" valueNumeric="0"/>
+            <column name="ISESSENTIAL" valueNumeric="1"/>
         </insert>
         <insert tableName="AB_KEYWORD_ATTRIBUTERELATION">
             <column name="AB_KEYWORD_ATTRIBUTERELATIONID" value="f6d6f746-bb2c-48c1-92a9-e5624d0a72e1"/>
diff --git a/entity/Address_entity/entityfields/addr_type/valueProcess.js b/entity/Address_entity/entityfields/addr_type/valueProcess.js
new file mode 100644
index 0000000000..f029c00849
--- /dev/null
+++ b/entity/Address_entity/entityfields/addr_type/valueProcess.js
@@ -0,0 +1,14 @@
+import("system.neon");
+import("system.result");
+import("system.vars");
+import("Contact_lib");
+import("KeywordRegistry_basic");
+
+if (vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW && vars.exists("$param.ContactType_param"))
+{
+    if (vars.get("$param.ContactType_param") == Contact.TYPES.Organisation)
+        result.string($KeywordRegistry.addressType$office());
+    else
+        result.string($KeywordRegistry.addressType$private());
+}   
+
diff --git a/process/KeywordRegistry_basic/process.js b/process/KeywordRegistry_basic/process.js
index fbd894dc51..c5d0caf1d1 100644
--- a/process/KeywordRegistry_basic/process.js
+++ b/process/KeywordRegistry_basic/process.js
@@ -55,7 +55,11 @@ $KeywordRegistry.salesprojectWonLost = function(){return "SalesprojectWonLost";}
 $KeywordRegistry.stockWarehouse = function(){return "StockWarehouse";};
 $KeywordRegistry.salesprojectProbability = function(){return "SalesprojectProbability";};
 $KeywordRegistry.activityCategory = function(){return "ActivityCategory";};
+
 $KeywordRegistry.addressType = function(){return "AddressType";};
+$KeywordRegistry.addressType$private = function(){return "a7466ee5-3fba-40bf-93cf-aa20a2b32ad6";};
+$KeywordRegistry.addressType$office = function(){return "b3292432-bca2-4674-8b06-b78b2b06351e";};
+
 $KeywordRegistry.offerProbability = function(){return "OfferProbability";};
 $KeywordRegistry.communicationMedium = function(){return "CommunicationMedium";};
 $KeywordRegistry.salesprojectPricePolitics = function(){return "SalesprojectPricePolitics";};
-- 
GitLab