From 6bbf0ae5336f30441607b74b8854080b7b056ee2 Mon Sep 17 00:00:00 2001
From: Benjamin Ulrich <b.ulrich@adito.de>
Date: Mon, 25 May 2020 12:09:25 +0000
Subject: [PATCH] [Projekt: Entwicklung - Neon][TicketNr.: 1053667][Salutation:
 Exception bei Edit und weitere Fehler]

---
 .../Salutation_entity/Salutation_entity.aod   |  1 +
 .../entityfields/sex/valueProcess.js          |  4 +-
 .../entityfields/sort/valueProcess.js         | 12 +++++
 neonContext/Salutation/Salutation.aod         |  5 ++
 .../SalutationEdit_view.aod                   | 48 +++++++++++++++++++
 .../SalutationFilter_view.aod                 | 15 +++---
 6 files changed, 75 insertions(+), 10 deletions(-)
 create mode 100644 entity/Salutation_entity/entityfields/sort/valueProcess.js
 create mode 100644 neonView/SalutationEdit_view/SalutationEdit_view.aod

diff --git a/entity/Salutation_entity/Salutation_entity.aod b/entity/Salutation_entity/Salutation_entity.aod
index 9c5ee36bbd9..f7f79d1f013 100644
--- a/entity/Salutation_entity/Salutation_entity.aod
+++ b/entity/Salutation_entity/Salutation_entity.aod
@@ -51,6 +51,7 @@
     <entityField>
       <name>SORT</name>
       <title>Sorting</title>
+      <valueProcess>%aditoprj%/entity/Salutation_entity/entityfields/sort/valueProcess.js</valueProcess>
     </entityField>
     <entityField>
       <name>TITLE</name>
diff --git a/entity/Salutation_entity/entityfields/sex/valueProcess.js b/entity/Salutation_entity/entityfields/sex/valueProcess.js
index ce31dcbede0..fdf5d8633b6 100644
--- a/entity/Salutation_entity/entityfields/sex/valueProcess.js
+++ b/entity/Salutation_entity/entityfields/sex/valueProcess.js
@@ -3,7 +3,7 @@ import("system.vars");
 import("KeywordRegistry_basic");
 import("system.result");
 
-/*if ((vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW || vars.get("$sys.recordstate") == neon.OPERATINGSTATE_EDIT) && vars.get("$this.value") == null)
+if ((vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW || vars.get("$sys.recordstate") == neon.OPERATINGSTATE_EDIT) && vars.get("$this.value") == null)
 {
     result.string($KeywordRegistry.personGender$other());
-}*/
\ No newline at end of file
+}
\ No newline at end of file
diff --git a/entity/Salutation_entity/entityfields/sort/valueProcess.js b/entity/Salutation_entity/entityfields/sort/valueProcess.js
new file mode 100644
index 00000000000..867b597fbcf
--- /dev/null
+++ b/entity/Salutation_entity/entityfields/sort/valueProcess.js
@@ -0,0 +1,12 @@
+import("system.neon");
+import("Sql_lib");
+import("system.vars");
+import("system.result");
+
+if ((vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW || vars.get("$sys.recordstate") == neon.OPERATINGSTATE_EDIT) && vars.get("$this.value") == null)
+{
+    var res = newSelect("max(SALUTATION.SORT)+1")
+                        .from("SALUTATION")
+                        .cell()
+    result.string(res);
+}
\ No newline at end of file
diff --git a/neonContext/Salutation/Salutation.aod b/neonContext/Salutation/Salutation.aod
index 105e44671fa..e483914f5a8 100644
--- a/neonContext/Salutation/Salutation.aod
+++ b/neonContext/Salutation/Salutation.aod
@@ -4,11 +4,16 @@
   <title></title>
   <majorModelMode>DISTRIBUTED</majorModelMode>
   <filterView>SalutationFilter_view</filterView>
+  <editView>SalutationEdit_view</editView>
   <entity>Salutation_entity</entity>
   <references>
     <neonViewReference>
       <name>f4dff131-e058-4959-8141-f60910394a02</name>
       <view>SalutationFilter_view</view>
     </neonViewReference>
+    <neonViewReference>
+      <name>f06f67b0-c7e3-4855-8342-4bc0f3ed7343</name>
+      <view>SalutationEdit_view</view>
+    </neonViewReference>
   </references>
 </neonContext>
diff --git a/neonView/SalutationEdit_view/SalutationEdit_view.aod b/neonView/SalutationEdit_view/SalutationEdit_view.aod
new file mode 100644
index 00000000000..ebbb601e04d
--- /dev/null
+++ b/neonView/SalutationEdit_view/SalutationEdit_view.aod
@@ -0,0 +1,48 @@
+<?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.6" xsi:schemaLocation="http://www.adito.de/2018/ao/Model adito://models/xsd/neonView/1.1.6">
+  <name>SalutationEdit_view</name>
+  <majorModelMode>DISTRIBUTED</majorModelMode>
+  <size>SMALL</size>
+  <layout>
+    <noneLayout>
+      <name>layout</name>
+    </noneLayout>
+  </layout>
+  <children>
+    <genericViewTemplate>
+      <name>generic</name>
+      <editMode v="true" />
+      <entityField>#ENTITY</entityField>
+      <fields>
+        <entityFieldLink>
+          <name>5c13e664-eb51-470f-84f0-bb25f72b0881</name>
+          <entityField>ISOLANGUAGE</entityField>
+        </entityFieldLink>
+        <entityFieldLink>
+          <name>642ebe6f-1225-4ffd-9755-778997c8a179</name>
+          <entityField>SALUTATION_TEXT</entityField>
+        </entityFieldLink>
+        <entityFieldLink>
+          <name>22befd63-0f23-4527-aa63-22a2bb4aec73</name>
+          <entityField>TITLE</entityField>
+        </entityFieldLink>
+        <entityFieldLink>
+          <name>d1db49fd-5599-4994-9a01-a93694a020c4</name>
+          <entityField>HEADLINE</entityField>
+        </entityFieldLink>
+        <entityFieldLink>
+          <name>1e4d42d1-e075-4599-bd8e-0798ea77f0d2</name>
+          <entityField>LETTERSALUTATION</entityField>
+        </entityFieldLink>
+        <entityFieldLink>
+          <name>14541607-aa61-4a11-bca6-e5a5bbde743b</name>
+          <entityField>SEX</entityField>
+        </entityFieldLink>
+        <entityFieldLink>
+          <name>6ff09b16-dfdb-41de-88fe-a9a9fface3b7</name>
+          <entityField>SORT</entityField>
+        </entityFieldLink>
+      </fields>
+    </genericViewTemplate>
+  </children>
+</neonView>
diff --git a/neonView/SalutationFilter_view/SalutationFilter_view.aod b/neonView/SalutationFilter_view/SalutationFilter_view.aod
index b7e8746bfb3..9c60dce1f71 100644
--- a/neonView/SalutationFilter_view/SalutationFilter_view.aod
+++ b/neonView/SalutationFilter_view/SalutationFilter_view.aod
@@ -11,38 +11,37 @@
   <children>
     <tableViewTemplate>
       <name>Salutations</name>
-      <inlineEdit v="true" />
       <titleField>SALUTATION_TEXT</titleField>
       <subtitleField>TITLE</subtitleField>
       <entityField>#ENTITY</entityField>
       <autoNewRow v="true" />
       <columns>
         <neonTableColumn>
-          <name>32e3fa28-1749-45a2-ae77-27ddfb221dba</name>
+          <name>ab3b9892-d5fa-4926-baf1-7f070ea7f68a</name>
           <entityField>ISOLANGUAGE</entityField>
         </neonTableColumn>
         <neonTableColumn>
-          <name>9cccf3a4-bbe7-453a-955c-246691c27dba</name>
+          <name>5a446b0a-f7cd-4c0d-9ce6-137958f28f4b</name>
           <entityField>SALUTATION_TEXT</entityField>
         </neonTableColumn>
         <neonTableColumn>
-          <name>3d4b8959-4558-4398-876a-09b46706827d</name>
+          <name>7789c052-d472-4870-b7a8-5c02b20b104b</name>
           <entityField>TITLE</entityField>
         </neonTableColumn>
         <neonTableColumn>
-          <name>f7e7e4a7-5719-457c-ac65-a2cdd993d9fb</name>
+          <name>75564574-3f21-4589-93ad-e30a69b44f4a</name>
           <entityField>HEADLINE</entityField>
         </neonTableColumn>
         <neonTableColumn>
-          <name>af9f6db4-f53a-48d8-aaa4-1dc8a6fd211e</name>
+          <name>621460f6-5e1b-4baa-b874-18097b6ca1bf</name>
           <entityField>LETTERSALUTATION</entityField>
         </neonTableColumn>
         <neonTableColumn>
-          <name>071b540d-3d67-4b0b-b382-7c8b3a43e755</name>
+          <name>3165c331-0b77-46ec-8f55-44cdb86edb6e</name>
           <entityField>SEX</entityField>
         </neonTableColumn>
         <neonTableColumn>
-          <name>b642b2cc-3439-4813-bda7-bb4358247f68</name>
+          <name>b4061b67-bd43-40de-8538-7fc1ca54afef</name>
           <entityField>SORT</entityField>
         </neonTableColumn>
       </columns>
-- 
GitLab