From ed15922f63a88f59cf02755e42417d5e2f4fe13b Mon Sep 17 00:00:00 2001
From: Mohamed Mansour <m.mansour@adito.de>
Date: Tue, 23 Jul 2019 17:51:46 +0200
Subject: [PATCH] fixed attributes for payment terms. Das Zahlungsziel wird je
 nach Zahlungsbedingung vorbelegt. + added addresses

---
 .../2019.1.4/Salesorder_Payment_DayNumber.xml | 34 ++++++++++
 .../Data_alias/basic/2019.1.4/changelog.xml   |  2 +
 entity/Address_entity/Address_entity.aod      |  6 ++
 entity/Order_entity/Order_entity.aod          | 26 ++++++++
 .../entityfields/cancellation/valueProcess.js | 10 +--
 .../entityfields/dunningdate/stateProcess.js  |  2 +-
 .../entityfields/dunninglevel/stateProcess.js |  2 +-
 .../entityfields/orderstatus/valueProcess.js  | 10 +--
 .../entityfields/ordertype/valueProcess.js    |  3 +-
 .../entityfields/paydate/stateProcess.js      |  9 +++
 .../entityfields/paydate/valueProcess.js      | 14 ++++
 .../payduedate/selectionModeProcess.js        |  0
 .../entityfields/payduedate/valueProcess.js   |  7 ++
 .../paymentaddress/displayValueProcess.js     |  5 ++
 .../paymentaddress/valueProcess.js            | 11 ++++
 .../entityfields/paymentterms/valueProcess.js | 40 ++++++------
 .../children/contactid_param/valueProcess.js  |  4 ++
 .../salesorderdate/displayValueProcess.js     |  0
 .../salesorderdate/stateProcess.js            |  9 ---
 .../salesorderdate/valueProcess.js            | 11 ----
 .../SalesprojectMilestone_entity.aod          |  1 +
 .../valuelongname/displayValueProcess.js      |  0
 neonView/OrderEdit_view/OrderEdit_view.aod    |  8 +--
 .../SalesprojectMilestoneInfo_view.aod        | 64 +++++++++----------
 24 files changed, 189 insertions(+), 89 deletions(-)
 create mode 100644 .liquibase/Data_alias/basic/2019.1.4/Salesorder_Payment_DayNumber.xml
 create mode 100644 entity/Order_entity/entityfields/paydate/stateProcess.js
 create mode 100644 entity/Order_entity/entityfields/paydate/valueProcess.js
 create mode 100644 entity/Order_entity/entityfields/payduedate/selectionModeProcess.js
 create mode 100644 entity/Order_entity/entityfields/payduedate/valueProcess.js
 create mode 100644 entity/Order_entity/entityfields/paymentaddress/displayValueProcess.js
 create mode 100644 entity/Order_entity/entityfields/paymentaddress/valueProcess.js
 create mode 100644 entity/Order_entity/entityfields/possibleaddresses/children/contactid_param/valueProcess.js
 create mode 100644 entity/Order_entity/entityfields/salesorderdate/displayValueProcess.js
 create mode 100644 entity/SalesprojectMilestone_entity/entityfields/valuelongname/displayValueProcess.js

diff --git a/.liquibase/Data_alias/basic/2019.1.4/Salesorder_Payment_DayNumber.xml b/.liquibase/Data_alias/basic/2019.1.4/Salesorder_Payment_DayNumber.xml
new file mode 100644
index 00000000000..e7386fceed0
--- /dev/null
+++ b/.liquibase/Data_alias/basic/2019.1.4/Salesorder_Payment_DayNumber.xml
@@ -0,0 +1,34 @@
+<?xml version="1.1" encoding="UTF-8" standalone="no"?>
+<databaseChangeLog xmlns="http://www.liquibase.org/xml/ns/dbchangelog" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-3.6.xsd">
+    <changeSet author="m.mansour" id="13c8eaf7-39d2-41c0-aff4-9cca30d32422">
+        <insert tableName="AB_KEYWORD_ATTRIBUTE">
+            <column name="AB_KEYWORD_ATTRIBUTEID" value="b5a322c7-41a0-4713-b90a-3c3151833f8d"/>
+            <column name="NAME" value="dayNumber"/>
+            <column name="CONTAINER" value="PaymentTerm"/>
+            <column name="TYPE" value="NUMBER_VALUE"/>
+        </insert>
+
+        <insert tableName="AB_KEYWORD_ATTRIBUTERELATION">
+            <column name="AB_KEYWORD_ATTRIBUTERELATIONID" value="eb80b4ae-f931-4000-9e48-ee9da528efa5"/>
+            <column name="AB_KEYWORD_ENTRY_ID" value="b8409c4a-6447-408a-bd06-dfe67054a4f1"/>
+            <column name="AB_KEYWORD_ATTRIBUTE_ID" value="b5a322c7-41a0-4713-b90a-3c3151833f8d"/>
+            <column name="NUMBER_VALUE" valueNumeric="7"/>
+        </insert>
+        
+        <insert tableName="AB_KEYWORD_ATTRIBUTERELATION">
+            <column name="AB_KEYWORD_ATTRIBUTERELATIONID" value="f9a1bdf4-15a6-48d7-a427-34845320cab8"/>
+            <column name="AB_KEYWORD_ENTRY_ID" value="edba1a8f-766b-4dfa-9360-1a2aca8569d6"/>
+            <column name="AB_KEYWORD_ATTRIBUTE_ID" value="b5a322c7-41a0-4713-b90a-3c3151833f8d"/>
+            <column name="NUMBER_VALUE" valueNumeric="30"/>
+        </insert>
+        
+        <insert tableName="AB_KEYWORD_ATTRIBUTERELATION">
+            <column name="AB_KEYWORD_ATTRIBUTERELATIONID" value="47140d0b-7820-469d-929d-d6d6f0513899"/>
+            <column name="AB_KEYWORD_ENTRY_ID" value="ed1b3d39-9cab-4c3c-84c5-438a8b67be53"/>
+            <column name="AB_KEYWORD_ATTRIBUTE_ID" value="b5a322c7-41a0-4713-b90a-3c3151833f8d"/>
+            <column name="NUMBER_VALUE" valueNumeric="38"/>
+        </insert>
+        
+       
+    </changeSet>
+</databaseChangeLog>
diff --git a/.liquibase/Data_alias/basic/2019.1.4/changelog.xml b/.liquibase/Data_alias/basic/2019.1.4/changelog.xml
index 1ddfdf8a087..016ca81ebdc 100644
--- a/.liquibase/Data_alias/basic/2019.1.4/changelog.xml
+++ b/.liquibase/Data_alias/basic/2019.1.4/changelog.xml
@@ -190,4 +190,6 @@
     <include relativeToChangelogFile="true" file="Salesorder/create_dunninglevel_keyword.xml"/>
     <include relativeToChangelogFile="true" file="Salesorder/update_Salesorder.xml"/>
     <include relativeToChangelogFile="true" file="Salesorder/Salesorder_terms.xml"/>
+    <include relativeToChangelogFile="true" file="Salesproject_Phase_LongNames.xml"/>
+    <include relativeToChangelogFile="true" file="Salesorder_Payment_DayNumber.xml"/>
 </databaseChangeLog>
diff --git a/entity/Address_entity/Address_entity.aod b/entity/Address_entity/Address_entity.aod
index 5af0dc7e06a..6dbbfbd4a2a 100644
--- a/entity/Address_entity/Address_entity.aod
+++ b/entity/Address_entity/Address_entity.aod
@@ -241,6 +241,12 @@
           <fieldName>PossibleAddresses</fieldName>
           <isConsumer v="false" />
         </entityDependency>
+        <entityDependency>
+          <name>2f162626-bd99-4e2a-b9cf-e95864d9ed0e</name>
+          <entityName>Order_entity</entityName>
+          <fieldName>PossibleAddresses</fieldName>
+          <isConsumer v="false" />
+        </entityDependency>
       </dependencies>
       <children>
         <entityParameter>
diff --git a/entity/Order_entity/Order_entity.aod b/entity/Order_entity/Order_entity.aod
index 068826b48e0..f3e8ded76aa 100644
--- a/entity/Order_entity/Order_entity.aod
+++ b/entity/Order_entity/Order_entity.aod
@@ -46,6 +46,7 @@
       <mandatory v="true" />
       <stateProcess>%aditoprj%/entity/Order_entity/entityfields/salesorderdate/stateProcess.js</stateProcess>
       <valueProcess>%aditoprj%/entity/Order_entity/entityfields/salesorderdate/valueProcess.js</valueProcess>
+      <displayValueProcess>%aditoprj%/entity/Order_entity/entityfields/salesorderdate/displayValueProcess.js</displayValueProcess>
     </entityField>
     <entityField>
       <name>SALESORDERID</name>
@@ -509,11 +510,18 @@
       <name>PAYDATE</name>
       <title>Pay date</title>
       <contentType>DATE</contentType>
+      <resolution>DAY</resolution>
+      <stateProcess>%aditoprj%/entity/Order_entity/entityfields/paydate/stateProcess.js</stateProcess>
+      <valueProcess>%aditoprj%/entity/Order_entity/entityfields/paydate/valueProcess.js</valueProcess>
     </entityField>
     <entityField>
       <name>PAYDUEDATE</name>
       <title>Pay due date</title>
       <contentType>DATE</contentType>
+      <resolution>DAY</resolution>
+      <selectionModeProcess>%aditoprj%/entity/Order_entity/entityfields/payduedate/selectionModeProcess.js</selectionModeProcess>
+      <state>READONLY</state>
+      <valueProcess>%aditoprj%/entity/Order_entity/entityfields/payduedate/valueProcess.js</valueProcess>
     </entityField>
     <entityConsumer>
       <name>KeywordOrderTypes</name>
@@ -632,6 +640,10 @@
     </entityField>
     <entityField>
       <name>PAYMENTADDRESS</name>
+      <title>Payment address</title>
+      <consumer>PossibleAddresses</consumer>
+      <valueProcess>%aditoprj%/entity/Order_entity/entityfields/paymentaddress/valueProcess.js</valueProcess>
+      <displayValueProcess>%aditoprj%/entity/Order_entity/entityfields/paymentaddress/displayValueProcess.js</displayValueProcess>
     </entityField>
     <entityConsumer>
       <name>KeywordPaymentTerms</name>
@@ -661,6 +673,20 @@
         </entityParameter>
       </children>
     </entityConsumer>
+    <entityConsumer>
+      <name>PossibleAddresses</name>
+      <dependency>
+        <name>dependency</name>
+        <entityName>Address_entity</entityName>
+        <fieldName>OrganisationAndContactAddresses</fieldName>
+      </dependency>
+      <children>
+        <entityParameter>
+          <name>ContactId_param</name>
+          <valueProcess>%aditoprj%/entity/Order_entity/entityfields/possibleaddresses/children/contactid_param/valueProcess.js</valueProcess>
+        </entityParameter>
+      </children>
+    </entityConsumer>
   </entityFields>
   <recordContainers>
     <dbRecordContainer>
diff --git a/entity/Order_entity/entityfields/cancellation/valueProcess.js b/entity/Order_entity/entityfields/cancellation/valueProcess.js
index 063991ec9e2..d84ae390797 100644
--- a/entity/Order_entity/entityfields/cancellation/valueProcess.js
+++ b/entity/Order_entity/entityfields/cancellation/valueProcess.js
@@ -1,6 +1,6 @@
-import("system.neon");
-import("system.vars");
-import("system.result");
-
-if (vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW)
+import("system.neon");
+import("system.vars");
+import("system.result");
+
+if (vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW&& vars.get("$this.value") == null)
     result.string("0");
\ No newline at end of file
diff --git a/entity/Order_entity/entityfields/dunningdate/stateProcess.js b/entity/Order_entity/entityfields/dunningdate/stateProcess.js
index df7975c62d4..5d6dc09c725 100644
--- a/entity/Order_entity/entityfields/dunningdate/stateProcess.js
+++ b/entity/Order_entity/entityfields/dunningdate/stateProcess.js
@@ -3,7 +3,7 @@ import("system.vars");
 import("system.neon");
 import("KeywordRegistry_basic")
 
-if(vars.get("$field.ORDERTYPE") == $KeywordRegistry.orderType$invoice())
+if(vars.get("$field.ORDERTYPE") == $KeywordRegistry.orderType$invoice() || neon.OPERATINGSTATE_NEW )
     result.string(neon.COMPONENTSTATE_AUTO);
 else
     result.string(neon.COMPONENTSTATE_INVISIBLE);
\ No newline at end of file
diff --git a/entity/Order_entity/entityfields/dunninglevel/stateProcess.js b/entity/Order_entity/entityfields/dunninglevel/stateProcess.js
index df7975c62d4..74c560bd8b0 100644
--- a/entity/Order_entity/entityfields/dunninglevel/stateProcess.js
+++ b/entity/Order_entity/entityfields/dunninglevel/stateProcess.js
@@ -3,7 +3,7 @@ import("system.vars");
 import("system.neon");
 import("KeywordRegistry_basic")
 
-if(vars.get("$field.ORDERTYPE") == $KeywordRegistry.orderType$invoice())
+if(vars.get("$field.ORDERTYPE") == $KeywordRegistry.orderType$invoice()|| neon.OPERATINGSTATE_NEW)
     result.string(neon.COMPONENTSTATE_AUTO);
 else
     result.string(neon.COMPONENTSTATE_INVISIBLE);
\ No newline at end of file
diff --git a/entity/Order_entity/entityfields/orderstatus/valueProcess.js b/entity/Order_entity/entityfields/orderstatus/valueProcess.js
index 063991ec9e2..a4bf6a66926 100644
--- a/entity/Order_entity/entityfields/orderstatus/valueProcess.js
+++ b/entity/Order_entity/entityfields/orderstatus/valueProcess.js
@@ -1,6 +1,6 @@
-import("system.neon");
-import("system.vars");
-import("system.result");
-
-if (vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW)
+import("system.neon");
+import("system.vars");
+import("system.result");
+
+if (vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW && vars.get("$this.value") == null)
     result.string("0");
\ No newline at end of file
diff --git a/entity/Order_entity/entityfields/ordertype/valueProcess.js b/entity/Order_entity/entityfields/ordertype/valueProcess.js
index 321a7e6424a..4e33bde706c 100644
--- a/entity/Order_entity/entityfields/ordertype/valueProcess.js
+++ b/entity/Order_entity/entityfields/ordertype/valueProcess.js
@@ -9,6 +9,5 @@ import("Contact_lib");
 
 if (vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW && vars.get("$this.value") == null)
 {
-   
-        result.string(KeywordUtils.getFirst($KeywordRegistry.orderType()));
+    result.string(KeywordUtils.getFirst($KeywordRegistry.orderType()));
 }
\ No newline at end of file
diff --git a/entity/Order_entity/entityfields/paydate/stateProcess.js b/entity/Order_entity/entityfields/paydate/stateProcess.js
new file mode 100644
index 00000000000..ba1ab918f2b
--- /dev/null
+++ b/entity/Order_entity/entityfields/paydate/stateProcess.js
@@ -0,0 +1,9 @@
+import("system.result");
+import("system.vars");
+import("system.neon");
+import("KeywordRegistry_basic")
+
+if(vars.get("$field.ORDERTYPE") == $KeywordRegistry.orderType$confirmation()|| neon.OPERATINGSTATE_NEW)
+    result.string(neon.COMPONENTSTATE_AUTO);
+else
+    result.string(neon.COMPONENTSTATE_INVISIBLE);
\ No newline at end of file
diff --git a/entity/Order_entity/entityfields/paydate/valueProcess.js b/entity/Order_entity/entityfields/paydate/valueProcess.js
new file mode 100644
index 00000000000..1465808073e
--- /dev/null
+++ b/entity/Order_entity/entityfields/paydate/valueProcess.js
@@ -0,0 +1,14 @@
+import("system.vars");
+import("system.result");
+import("system.neon");
+import("Date_lib");
+
+
+if (vars.get("$this.value") == null){
+if(vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW && !vars.get("$this.value")|| neon.OPERATINGSTATE_NEW )
+{
+    result.string(DateUtils.getTodayUTC());
+}
+else
+    result.string(vars.get("$this.value"));
+}
\ No newline at end of file
diff --git a/entity/Order_entity/entityfields/payduedate/selectionModeProcess.js b/entity/Order_entity/entityfields/payduedate/selectionModeProcess.js
new file mode 100644
index 00000000000..e69de29bb2d
diff --git a/entity/Order_entity/entityfields/payduedate/valueProcess.js b/entity/Order_entity/entityfields/payduedate/valueProcess.js
new file mode 100644
index 00000000000..9e92825f3fa
--- /dev/null
+++ b/entity/Order_entity/entityfields/payduedate/valueProcess.js
@@ -0,0 +1,7 @@
+import("system.datetime");
+import("system.result");
+import("system.vars");
+import("Keyword_lib");
+
+var days= KeywordUtils.getAttributeRelation(vars.get("$field.PAYMENTTERMS"), "PaymentTerm", "dayNumber", "0");
+result.string(parseInt(vars.get("$field.PAYDATE")) + datetime.ONE_DAY * parseInt(days));
\ No newline at end of file
diff --git a/entity/Order_entity/entityfields/paymentaddress/displayValueProcess.js b/entity/Order_entity/entityfields/paymentaddress/displayValueProcess.js
new file mode 100644
index 00000000000..698ddd21921
--- /dev/null
+++ b/entity/Order_entity/entityfields/paymentaddress/displayValueProcess.js
@@ -0,0 +1,5 @@
+import("system.vars");
+import("PostalAddress_lib");
+import("system.result");
+
+result.string(AddressUtils.getFormattedOnlineAddressById(vars.get("$this.value")))
\ No newline at end of file
diff --git a/entity/Order_entity/entityfields/paymentaddress/valueProcess.js b/entity/Order_entity/entityfields/paymentaddress/valueProcess.js
new file mode 100644
index 00000000000..6ebcf9a49b9
--- /dev/null
+++ b/entity/Order_entity/entityfields/paymentaddress/valueProcess.js
@@ -0,0 +1,11 @@
+import("Contact_lib");
+import("system.result");
+import("system.neon");
+import("system.vars");
+
+if ((vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW || vars.get("$sys.recordstate") == neon.OPERATINGSTATE_EDIT) && !vars.get("$field.ADDRESS"))
+{
+    var defaultAddressId = ContactUtils.getDefaultAddressId(vars.get("$field.CONTACT_ID"));
+    if (defaultAddressId)
+        result.string(defaultAddressId);
+}
\ No newline at end of file
diff --git a/entity/Order_entity/entityfields/paymentterms/valueProcess.js b/entity/Order_entity/entityfields/paymentterms/valueProcess.js
index 98081578fa2..5b4f560b502 100644
--- a/entity/Order_entity/entityfields/paymentterms/valueProcess.js
+++ b/entity/Order_entity/entityfields/paymentterms/valueProcess.js
@@ -7,25 +7,27 @@ import("system.result");
 import("system.vars");
 import("Attribute_lib");
 
-if (vars.exists("$param.OfferPaymentTerm_param") && vars.get("$param.OfferPaymentTerm_param")) 
-{
-    result.string(vars.get("$param.OfferPaymentTerm_param"));
-}
-else if (vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW)
-{
-    var presetValue = "";
-    var contactIds = ContactUtils.getPersOrgIds(vars.getString("$field.CONTACT_ID"))
-    if (contactIds.length >= 3 && contactIds[2])
+if (vars.get("$this.value") == null) {
+    if (vars.exists("$param.OfferPaymentTerm_param") && vars.get("$param.OfferPaymentTerm_param")) 
+    {
+        result.string(vars.get("$param.OfferPaymentTerm_param"));
+    }
+    else if (vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW)
     {
-        var orgContactId = ContactUtils.getOrgContactId(contactIds[2]);
-        if (orgContactId)
-        { 
-            presetValue = AttributeRelationUtils.getAttribute($AttributeRegistry.paymentTerm(), orgContactId);
+        var presetValue = "";
+        var contactIds = ContactUtils.getPersOrgIds(vars.getString("$field.CONTACT_ID"))
+        if (contactIds.length >= 3 && contactIds[2])
+        {
+            var orgContactId = ContactUtils.getOrgContactId(contactIds[2]);
+            if (orgContactId)
+            { 
+                presetValue = AttributeRelationUtils.getAttribute($AttributeRegistry.paymentTerm(), orgContactId);
+            }
         }
+
+        if (presetValue)
+            result.string(presetValue);
+        else
+            result.string(KeywordUtils.getFirst($KeywordRegistry.paymentTerm()));
     }
-    
-    if (presetValue)
-        result.string(presetValue);
-    else
-        result.string(KeywordUtils.getFirst($KeywordRegistry.paymentTerm()));
-}
\ No newline at end of file
+}
diff --git a/entity/Order_entity/entityfields/possibleaddresses/children/contactid_param/valueProcess.js b/entity/Order_entity/entityfields/possibleaddresses/children/contactid_param/valueProcess.js
new file mode 100644
index 00000000000..7e0951d02b7
--- /dev/null
+++ b/entity/Order_entity/entityfields/possibleaddresses/children/contactid_param/valueProcess.js
@@ -0,0 +1,4 @@
+import("system.result");
+import("system.vars");
+
+result.string(vars.get("$field.CONTACT_ID"));
\ No newline at end of file
diff --git a/entity/Order_entity/entityfields/salesorderdate/displayValueProcess.js b/entity/Order_entity/entityfields/salesorderdate/displayValueProcess.js
new file mode 100644
index 00000000000..e69de29bb2d
diff --git a/entity/Order_entity/entityfields/salesorderdate/stateProcess.js b/entity/Order_entity/entityfields/salesorderdate/stateProcess.js
index b55e051d86e..e69de29bb2d 100644
--- a/entity/Order_entity/entityfields/salesorderdate/stateProcess.js
+++ b/entity/Order_entity/entityfields/salesorderdate/stateProcess.js
@@ -1,9 +0,0 @@
-import("system.result");
-import("system.vars");
-import("system.neon");
-import("KeywordRegistry_basic")
-
-if(vars.get("$field.ORDERTYPE") == $KeywordRegistry.orderType$confirmation())
-    result.string(neon.COMPONENTSTATE_INVISIBLE);
-else
-    result.string(neon.COMPONENTSTATE_AUTO);
\ No newline at end of file
diff --git a/entity/Order_entity/entityfields/salesorderdate/valueProcess.js b/entity/Order_entity/entityfields/salesorderdate/valueProcess.js
index ca8dba62444..e69de29bb2d 100644
--- a/entity/Order_entity/entityfields/salesorderdate/valueProcess.js
+++ b/entity/Order_entity/entityfields/salesorderdate/valueProcess.js
@@ -1,11 +0,0 @@
-import("system.vars");
-import("system.result");
-import("system.neon");
-import("Date_lib");
-
-if(vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW && !vars.get("$this.value"))
-{
-    result.string(DateUtils.getTodayUTC());
-}
-else
-    result.string(vars.get("$this.value"));
\ No newline at end of file
diff --git a/entity/SalesprojectMilestone_entity/SalesprojectMilestone_entity.aod b/entity/SalesprojectMilestone_entity/SalesprojectMilestone_entity.aod
index 5a0fbf8d663..0137b612622 100644
--- a/entity/SalesprojectMilestone_entity/SalesprojectMilestone_entity.aod
+++ b/entity/SalesprojectMilestone_entity/SalesprojectMilestone_entity.aod
@@ -147,6 +147,7 @@
     <entityField>
       <name>valueLongName</name>
       <valueProcess>%aditoprj%/entity/SalesprojectMilestone_entity/entityfields/valuelongname/valueProcess.js</valueProcess>
+      <displayValueProcess>%aditoprj%/entity/SalesprojectMilestone_entity/entityfields/valuelongname/displayValueProcess.js</displayValueProcess>
     </entityField>
   </entityFields>
   <recordContainers>
diff --git a/entity/SalesprojectMilestone_entity/entityfields/valuelongname/displayValueProcess.js b/entity/SalesprojectMilestone_entity/entityfields/valuelongname/displayValueProcess.js
new file mode 100644
index 00000000000..e69de29bb2d
diff --git a/neonView/OrderEdit_view/OrderEdit_view.aod b/neonView/OrderEdit_view/OrderEdit_view.aod
index 06a9e22990f..0bca583226c 100644
--- a/neonView/OrderEdit_view/OrderEdit_view.aod
+++ b/neonView/OrderEdit_view/OrderEdit_view.aod
@@ -68,10 +68,6 @@
           <name>c4b3c8ed-4625-4785-abc6-c726171ff7f4</name>
           <entityField>FOOTER</entityField>
         </entityFieldLink>
-        <entityFieldLink>
-          <name>97eca233-7383-4fb6-97ff-d722e422befa</name>
-          <entityField>SALESORDERDATE</entityField>
-        </entityFieldLink>
         <entityFieldLink>
           <name>31ed9eba-66a1-4114-a1fe-61ef475d532d</name>
           <entityField>PAID</entityField>
@@ -96,6 +92,10 @@
           <name>8333aea5-0be3-47ac-94c3-f6f8485ba7e0</name>
           <entityField>CANCELLATION</entityField>
         </entityFieldLink>
+        <entityFieldLink>
+          <name>21860875-55d6-4686-9e1d-6b45963878ff</name>
+          <entityField>PAYMENTADDRESS</entityField>
+        </entityFieldLink>
       </fields>
     </genericViewTemplate>
     <neonViewReference>
diff --git a/neonView/SalesprojectMilestoneInfo_view/SalesprojectMilestoneInfo_view.aod b/neonView/SalesprojectMilestoneInfo_view/SalesprojectMilestoneInfo_view.aod
index 9c68c279394..6dc61fe9952 100644
--- a/neonView/SalesprojectMilestoneInfo_view/SalesprojectMilestoneInfo_view.aod
+++ b/neonView/SalesprojectMilestoneInfo_view/SalesprojectMilestoneInfo_view.aod
@@ -1,32 +1,32 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<neonView xmlns="http://www.adito.de/2018/ao/Model" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" VERSION="1.1.1" xsi:schemaLocation="http://www.adito.de/2018/ao/Model adito://models/xsd/neonView/1.1.1">
-  <name>SalesprojectMilestoneInfo_view</name>
-  <majorModelMode>DISTRIBUTED</majorModelMode>
-  <layout>
-    <drawerLayout>
-      <name>layout</name>
-      <layoutCaption>Phase progression</layoutCaption>
-    </drawerLayout>
-  </layout>
-  <children>
-    <ganttViewTemplate>
-      <name>MilestoneGantt</name>
-      <uidField>SALESPROJECT_MILESTONEID</uidField>
-      <titleField>VALUE</titleField>
-      <beginDateField>DATE_START</beginDateField>
-      <endDateField>dateEndGantt</endDateField>
-      <predecessorIdField>PARENT_ID</predecessorIdField>
-      <entityField>#ENTITY</entityField>
-      <columns>
-        <neonTableColumn>
-          <name>4c261b96-17d3-424e-8297-3ff46d780516</name>
-          <entityField>VALUE</entityField>
-        </neonTableColumn>
-        <neonTableColumn>
-          <name>c055c340-0f7b-4c91-a0a6-22e20511d2a9</name>
-          <entityField>DATE_END</entityField>
-        </neonTableColumn>
-      </columns>
-    </ganttViewTemplate>
-  </children>
-</neonView>
+<?xml version="1.0" encoding="UTF-8"?>
+<neonView xmlns="http://www.adito.de/2018/ao/Model" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" VERSION="1.1.1" xsi:schemaLocation="http://www.adito.de/2018/ao/Model adito://models/xsd/neonView/1.1.1">
+  <name>SalesprojectMilestoneInfo_view</name>
+  <majorModelMode>DISTRIBUTED</majorModelMode>
+  <layout>
+    <drawerLayout>
+      <name>layout</name>
+      <layoutCaption>Phase progression</layoutCaption>
+    </drawerLayout>
+  </layout>
+  <children>
+    <ganttViewTemplate>
+      <name>MilestoneGantt</name>
+      <uidField>SALESPROJECT_MILESTONEID</uidField>
+      <titleField>valueLongName</titleField>
+      <beginDateField>DATE_START</beginDateField>
+      <endDateField>dateEndGantt</endDateField>
+      <predecessorIdField>PARENT_ID</predecessorIdField>
+      <entityField>#ENTITY</entityField>
+      <columns>
+        <neonTableColumn>
+          <name>4c261b96-17d3-424e-8297-3ff46d780516</name>
+          <entityField>VALUE</entityField>
+        </neonTableColumn>
+        <neonTableColumn>
+          <name>c055c340-0f7b-4c91-a0a6-22e20511d2a9</name>
+          <entityField>DATE_END</entityField>
+        </neonTableColumn>
+      </columns>
+    </ganttViewTemplate>
+  </children>
+</neonView>
-- 
GitLab