diff --git a/entity/Task_entity/Task_entity.aod b/entity/Task_entity/Task_entity.aod index 00bb37e12ba34f25467a6f2a0d84871afd4a620d..2b839216346e76e05f23c3771f85db8eb5813093 100644 --- a/entity/Task_entity/Task_entity.aod +++ b/entity/Task_entity/Task_entity.aod @@ -5,6 +5,7 @@ <majorModelMode>DISTRIBUTED</majorModelMode> <documentation>%aditoprj%/entity/Task_entity/documentation.adoc</documentation> <icon>VAADIN:TASKS</icon> + <onValidation>%aditoprj%/entity/Task_entity/onValidation.js</onValidation> <iconId>VAADIN:TASKS</iconId> <recordContainer>db</recordContainer> <entityFields> @@ -13,11 +14,13 @@ </entityIncomingField> <entityField> <name>CODE</name> + <documentation>%aditoprj%/entity/Task_entity/entityfields/code/documentation.adoc</documentation> <title>task number</title> <contentType>NUMBER</contentType> <outputFormat>0000000</outputFormat> <state>READONLY</state> <stateProcess>%aditoprj%/entity/Task_entity/entityfields/code/stateProcess.js</stateProcess> + <valueProcess>%aditoprj%/entity/Task_entity/entityfields/code/valueProcess.js</valueProcess> </entityField> <entityField> <name>SUBJECT</name> @@ -75,7 +78,7 @@ <entityField> <name>DESCRIPTION</name> <title>description</title> - <contentType>HTML</contentType> + <contentType>LONG_TEXT</contentType> </entityField> <entityField> <name>PROTECTIONLEVEL</name> @@ -88,25 +91,34 @@ <entityField> <name>TASKID</name> <mandatory v="true" /> + <searchable v="false" /> <valueProcess>%aditoprj%/entity/Task_entity/entityfields/taskid/valueProcess.js</valueProcess> </entityField> <entityField> <name>DATE_NEW</name> + <title>{$DATE_NEW}</title> <contentType>DATE</contentType> <resolution>SECOND</resolution> <mandatory v="true" /> + <valueProcess>%aditoprj%/entity/Task_entity/entityfields/date_new/valueProcess.js</valueProcess> </entityField> <entityField> <name>USER_NEW</name> + <title>{$USER_NEW}</title> <mandatory v="true" /> + <valueProcess>%aditoprj%/entity/Task_entity/entityfields/user_new/valueProcess.js</valueProcess> </entityField> <entityField> <name>DATE_EDIT</name> + <title>{$DATE_EDIT}</title> <contentType>DATE</contentType> <resolution>SECOND</resolution> + <valueProcess>%aditoprj%/entity/Task_entity/entityfields/date_edit/valueProcess.js</valueProcess> </entityField> <entityField> <name>USER_EDIT</name> + <title>{$USER_EDIT}</title> + <valueProcess>%aditoprj%/entity/Task_entity/entityfields/user_edit/valueProcess.js</valueProcess> </entityField> <entityOutgoingField> <name>PersEditor_dfo</name> diff --git a/entity/Task_entity/entityfields/code/documentation.adoc b/entity/Task_entity/entityfields/code/documentation.adoc new file mode 100644 index 0000000000000000000000000000000000000000..418cfa22905051736503922471bcb74502b2508d --- /dev/null +++ b/entity/Task_entity/entityfields/code/documentation.adoc @@ -0,0 +1,3 @@ +The `CODE` field is a automatically increased sequential number. +It cannot be set by the user. +Therefore it's only visible after creation of a `TASK` record. \ No newline at end of file diff --git a/entity/Task_entity/entityfields/code/valueProcess.js b/entity/Task_entity/entityfields/code/valueProcess.js new file mode 100644 index 0000000000000000000000000000000000000000..7175621de3beecb887b38e37d160d505af2b2c42 --- /dev/null +++ b/entity/Task_entity/entityfields/code/valueProcess.js @@ -0,0 +1,18 @@ +import("system.logging"); +import("system.neon"); +import("system.db"); +import("system.vars"); +import("Sql_lib"); + + +//if (vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW) +//{ +// var maskingHelper = new SqlMaskingUtils(); +// var newCodeNumber = db.cell("select " + maskingHelper.max("TASK.CODE") + " from TASK"); +// newCodeNumber = Number(newCodeNumber);//if no number exists till no, start value will be 1 (due to: ++0) +// if (isNaN(newCodeNumber)) +// throw new TypeError();//TODO:add Message +// ++newCodeNumber; +// logging.log("newCodeNumber: " + newCodeNumber) +// vars.set("$field.CODE", newCodeNumber); +//} \ No newline at end of file diff --git a/entity/Task_entity/entityfields/date_edit/valueProcess.js b/entity/Task_entity/entityfields/date_edit/valueProcess.js new file mode 100644 index 0000000000000000000000000000000000000000..710ac8a06a9911f82ff222c7d9d231846ca93fb2 --- /dev/null +++ b/entity/Task_entity/entityfields/date_edit/valueProcess.js @@ -0,0 +1,6 @@ +import("system.vars"); +import("system.result"); +import("system.neon"); + +if(vars.get("$sys.recordstate") == neon.OPERATINGSTATE_EDIT) + result.string(vars.getString("$sys.date")); \ No newline at end of file diff --git a/entity/Task_entity/entityfields/date_new/valueProcess.js b/entity/Task_entity/entityfields/date_new/valueProcess.js new file mode 100644 index 0000000000000000000000000000000000000000..408c498a4c90f59cd95eafbf74a8ea2683bab068 --- /dev/null +++ b/entity/Task_entity/entityfields/date_new/valueProcess.js @@ -0,0 +1,7 @@ +import("system.vars"); +import("system.result"); +import("system.neon"); + +if(vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW) + result.string(vars.getString("$sys.date")); + diff --git a/entity/Task_entity/entityfields/user_edit/valueProcess.js b/entity/Task_entity/entityfields/user_edit/valueProcess.js new file mode 100644 index 0000000000000000000000000000000000000000..1581e18d9763043ae602b98658f87cb0a3b0c967 --- /dev/null +++ b/entity/Task_entity/entityfields/user_edit/valueProcess.js @@ -0,0 +1,6 @@ +import("system.vars"); +import("system.result"); +import("system.neon"); + +if(vars.get("$sys.recordstate") == neon.OPERATINGSTATE_EDIT) + result.string(vars.getString("$sys.user")); \ No newline at end of file diff --git a/entity/Task_entity/entityfields/user_new/valueProcess.js b/entity/Task_entity/entityfields/user_new/valueProcess.js new file mode 100644 index 0000000000000000000000000000000000000000..7c566863b493d778b72dea7d8822f6a59333e77d --- /dev/null +++ b/entity/Task_entity/entityfields/user_new/valueProcess.js @@ -0,0 +1,6 @@ +import("system.vars"); +import("system.result"); +import("system.neon"); + +if(vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW) + result.string(vars.getString("$sys.user")); \ No newline at end of file diff --git a/entity/Task_entity/onValidation.js b/entity/Task_entity/onValidation.js new file mode 100644 index 0000000000000000000000000000000000000000..adec45e2126cefedb731170f258d89d77162deb9 --- /dev/null +++ b/entity/Task_entity/onValidation.js @@ -0,0 +1,16 @@ +import("system.db"); +import("system.vars"); +import("system.text"); +import("system.neon"); +import("Sql_lib"); + +//TODO: crashes server +//if (vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW) +//{ +// var maskingHelper = new SqlMaskingUtils(); +// var newCodeNumber = db.cell("select " + maskingHelper.max("TASK.CODE") + " from TASK"); +// newCodeNumber = Number(newCodeNumber);//if no number exists till no, start value will be 1 (due to: ++0) +// if (isNaN(newCodeNumber)) +// throw new TypeError();//TODO:add Message +// neon.setFieldValue("$field.CODE", text.formatLong(++newCodeNumber, "0000000")); +//} \ No newline at end of file diff --git a/entity/Task_entity/recordcontainers/db/onDBInsert.js b/entity/Task_entity/recordcontainers/db/onDBInsert.js index 664a88059701f55a8f39e55f19dff38d4a3c9776..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 100644 --- a/entity/Task_entity/recordcontainers/db/onDBInsert.js +++ b/entity/Task_entity/recordcontainers/db/onDBInsert.js @@ -1,15 +0,0 @@ -import("system.db"); -import("system.vars"); -import("system.neon"); -import("Sql_lib"); - -if (!vars.get("$field.CODE")) -{ - var maskingHelper = new SqlMaskingUtils(); - var newCodeNumber = db.cell("select " + maskingHelper.max("TASK.CODE") + " from TASK"); - newCodeNumber = Number(newCodeNumber);//if no number exists till no, start value will be 1 (due to: ++0) - if (isNaN(newCodeNumber)) - throw new TypeError();//TODO:add Message - - neon.setFieldValue("$field.CODE", ++newCodeNumber); -} \ No newline at end of file diff --git a/language/_____LANGUAGE_EXTRA/_____LANGUAGE_EXTRA.aod b/language/_____LANGUAGE_EXTRA/_____LANGUAGE_EXTRA.aod index 38371ff7fad40ab4b8d848f18860a66d801db262..a6b15592693cc0ae3333433d9c3c31de7cb1132e 100644 --- a/language/_____LANGUAGE_EXTRA/_____LANGUAGE_EXTRA.aod +++ b/language/_____LANGUAGE_EXTRA/_____LANGUAGE_EXTRA.aod @@ -1414,7 +1414,19 @@ <key>Angebot</key> </entry> <entry> - <key>responsible</key> + <key>{$DATE_NEW}</key> + </entry> + <entry> + <key>{$USER_NEW}</key> + </entry> + <entry> + <key>{$USER_EDIT}</key> + </entry> + <entry> + <key>details</key> + </entry> + <entry> + <key>{$DATE_EDIT}</key> </entry> <entry> <key>maturity date</key> @@ -1443,6 +1455,9 @@ <entry> <key>${SALESPROJECT_MEMBER}</key> </entry> + <entry> + <key>responsible</key> + </entry> </keyValueMap> <font name="Dialog" style="0" size="11" /> <sqlModels> diff --git a/language/_____LANGUAGE_de/_____LANGUAGE_de.aod b/language/_____LANGUAGE_de/_____LANGUAGE_de.aod index 0366cab656588da790644315dc1dccad54f203ed..133c768f66871f7c83e350f0379360dc98120f61 100644 --- a/language/_____LANGUAGE_de/_____LANGUAGE_de.aod +++ b/language/_____LANGUAGE_de/_____LANGUAGE_de.aod @@ -1837,6 +1837,25 @@ <entry> <key>Angebot</key> </entry> + <entry> + <key>{$DATE_NEW}</key> + <value>Erstelldatum</value> + </entry> + <entry> + <key>{$USER_NEW}</key> + <value>Ersteller</value> + </entry> + <entry> + <key>{$USER_EDIT}</key> + <value>Bearbeiter</value> + </entry> + <entry> + <key>details</key> + </entry> + <entry> + <key>{$DATE_EDIT}</key> + <value>Änderungsdatum</value> + </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 7d704ade1af6d2feb2bf76292976c4bec092df21..e851009f1d3001359ae878ae5a154c6814d51002 100644 --- a/language/_____LANGUAGE_en/_____LANGUAGE_en.aod +++ b/language/_____LANGUAGE_en/_____LANGUAGE_en.aod @@ -1303,6 +1303,7 @@ </entry> <entry> <key>{$TASK_STATUS}</key> + <value>status</value> </entry> <entry> <key>Task</key> @@ -1312,6 +1313,7 @@ </entry> <entry> <key>{$TASK_REQUESTOR}</key> + <value>requestor</value> </entry> <entry> <key>start date</key> @@ -1321,6 +1323,7 @@ </entry> <entry> <key>{$TASK_EDITOR}</key> + <value>editor</value> </entry> <entry> <key>description</key> @@ -1333,6 +1336,7 @@ </entry> <entry> <key>{$TASK_PRIORITY_HIGH}</key> + <value>high</value> </entry> <entry> <key>Seite</key> @@ -1363,12 +1367,14 @@ </entry> <entry> <key>{$TASK_PRIORITY_LOW}</key> + <value>low</value> </entry> <entry> <key>Nur Eigene anzeigen</key> </entry> <entry> <key>{$TASK_PRIORITY_NORMAL}</key> + <value>normal</value> </entry> <entry> <key>new</key> @@ -1405,6 +1411,7 @@ </entry> <entry> <key>{$TASK_PRIORITY_NONE}</key> + <value>none</value> </entry> <entry> <key>vielleicht</key> @@ -1431,7 +1438,23 @@ <key>Angebot</key> </entry> <entry> - <key>responsible</key> + <key>{$DATE_NEW}</key> + <value>creation date</value> + </entry> + <entry> + <key>{$USER_NEW}</key> + <value>creation user</value> + </entry> + <entry> + <key>{$USER_EDIT}</key> + <value>edit user</value> + </entry> + <entry> + <key>details</key> + </entry> + <entry> + <key>{$DATE_EDIT}</key> + <value>edit date</value> </entry> <entry> <key>maturity date</key> @@ -1461,6 +1484,9 @@ <key>${SALESPROJECT_MEMBER}</key> <value>Project member</value> </entry> + <entry> + <key>responsible</key> + </entry> </keyValueMap> <font name="Dialog" style="0" size="11" /> </language> diff --git a/neonContext/Task_context/Task_context.aod b/neonContext/Task_context/Task_context.aod index afaf210f1dd58231f0f144bb563cd4c21b1781a1..d6459a17b6e3a705b34defe319bee538cfb4173c 100644 --- a/neonContext/Task_context/Task_context.aod +++ b/neonContext/Task_context/Task_context.aod @@ -27,5 +27,9 @@ <name>83309ef0-d1c0-4f74-bb44-41fd8e054b4b</name> <view>TaskMain_view</view> </neonViewReference> + <neonViewReference> + <name>b2d84509-c72b-497e-9422-e4efae2e6b68</name> + <view>TaskMainPreview_view</view> + </neonViewReference> </references> </neonContext> diff --git a/neonView/TaskFilter_view/TaskFilter_view.aod b/neonView/TaskFilter_view/TaskFilter_view.aod index 941e4f7a9b2219e13cf1a97abbae476cd544875b..01dc1876945f01e1f00a54ce5d68fbeba89d714d 100644 --- a/neonView/TaskFilter_view/TaskFilter_view.aod +++ b/neonView/TaskFilter_view/TaskFilter_view.aod @@ -2,6 +2,7 @@ <neonView xmlns="http://www.adito.de/2018/ao/Model" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" VERSION="1.0.1" xsi:schemaLocation="http://www.adito.de/2018/ao/Model adito://models/xsd/neonView/1.0.1"> <name>TaskFilter_view</name> <majorModelMode>DISTRIBUTED</majorModelMode> + <filterable v="true" /> <layout> <boxLayout> <name>layout</name> diff --git a/neonView/TaskMainPreview_view/TaskMainPreview_view.aod b/neonView/TaskMainPreview_view/TaskMainPreview_view.aod new file mode 100644 index 0000000000000000000000000000000000000000..55b3e271dd2ca54553b0b26756528796e93c7b88 --- /dev/null +++ b/neonView/TaskMainPreview_view/TaskMainPreview_view.aod @@ -0,0 +1,53 @@ +<?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.0.1" xsi:schemaLocation="http://www.adito.de/2018/ao/Model adito://models/xsd/neonView/1.0.1"> + <name>TaskMainPreview_view</name> + <majorModelMode>DISTRIBUTED</majorModelMode> + <layout> + <boxLayout> + <name>layout</name> + </boxLayout> + </layout> + <children> + <cardViewTemplate> + <name>head</name> + <iconField>#ICON</iconField> + <titleField>SUBJECT</titleField> + <entityField>#ENTITY</entityField> + </cardViewTemplate> + <genericViewTemplate> + <name>extendedData</name> + <showDrawer v="true" /> + <entityField>#ENTITY</entityField> + <fields> + <entityFieldLink> + <name>0bfb984a-1a1b-404d-beb9-a1b8002ebed2</name> + <entityField>CODE</entityField> + </entityFieldLink> + <entityFieldLink> + <name>f988850e-53ed-443d-bd3d-16946eba656e</name> + <entityField>START_DATE</entityField> + </entityFieldLink> + <entityFieldLink> + <name>dda6aefc-9d4f-4d93-9a45-bc97a278c050</name> + <entityField>MATURITY_DATE</entityField> + </entityFieldLink> + <entityFieldLink> + <name>95c12be2-3cbe-4bc6-8879-91fad6916dad</name> + <entityField>STATUS</entityField> + </entityFieldLink> + <entityFieldLink> + <name>ebdffed8-4999-4ec1-ac4d-c22514dfed0c</name> + <entityField>PRIORITY</entityField> + </entityFieldLink> + <entityFieldLink> + <name>05de9afc-429e-46a8-8e3b-2ff689ed090e</name> + <entityField>REQUESTOR_RELATION_ID</entityField> + </entityFieldLink> + <entityFieldLink> + <name>bbf1a736-acf9-4b41-9df9-5675fc6d8943</name> + <entityField>EDITOR_RELATION_ID</entityField> + </entityFieldLink> + </fields> + </genericViewTemplate> + </children> +</neonView> diff --git a/neonView/TaskMain_view/TaskMain_view.aod b/neonView/TaskMain_view/TaskMain_view.aod index 4073f67d0a527c47dbcaa242f335bb12b4ddfe6e..77f3e8ab66102189f842836610088e14cb198713 100644 --- a/neonView/TaskMain_view/TaskMain_view.aod +++ b/neonView/TaskMain_view/TaskMain_view.aod @@ -5,20 +5,29 @@ <layout> <masterSlaveLayout> <name>layout</name> - <master>c8294ae1-65d8-4cee-a003-931a4759c619</master> + <master>339e160e-e482-4be2-9550-fc06131fbffe</master> </masterSlaveLayout> </layout> <children> <neonViewReference> - <name>c8294ae1-65d8-4cee-a003-931a4759c619</name> + <name>339e160e-e482-4be2-9550-fc06131fbffe</name> <entityField>#ENTITY</entityField> - <view>TaskPreview_view</view> + <view>TaskMainPreview_view</view> </neonViewReference> <genericViewTemplate> <name>details</name> + <showDrawer v="true" /> <entityField>#ENTITY</entityField> <title>details</title> <fields> + <entityFieldLink> + <name>e95918f5-d21e-4c99-8d05-d70811aa3d89</name> + <entityField>PROTECTIONLEVEL</entityField> + </entityFieldLink> + <entityFieldLink> + <name>e73dda40-22cd-4d2d-abcf-c7fc59ea2e67</name> + <entityField>TYPE</entityField> + </entityFieldLink> <entityFieldLink> <name>fea59f13-750b-427d-bf33-cc1bead95446</name> <entityField>DESCRIPTION</entityField> diff --git a/neonView/TaskPreview_view/TaskPreview_view.aod b/neonView/TaskPreview_view/TaskPreview_view.aod index 2eaf021b12e3c236b33c9aba54695528ad6a2a36..7dfd8aa77a434c8598ef96f25f4e0705113e56cf 100644 --- a/neonView/TaskPreview_view/TaskPreview_view.aod +++ b/neonView/TaskPreview_view/TaskPreview_view.aod @@ -32,10 +32,6 @@ <name>dda6aefc-9d4f-4d93-9a45-bc97a278c050</name> <entityField>MATURITY_DATE</entityField> </entityFieldLink> - <entityFieldLink> - <name>95c12be2-3cbe-4bc6-8879-91fad6916dad</name> - <entityField>STATUS</entityField> - </entityFieldLink> <entityFieldLink> <name>ebdffed8-4999-4ec1-ac4d-c22514dfed0c</name> <entityField>PRIORITY</entityField> @@ -58,5 +54,10 @@ </entityFieldLink> </fields> </genericViewTemplate> + <neonViewReference> + <name>2941084f-b72c-4cb2-9d73-5e6827795be2</name> + <entityField>MainDocument_dfo</entityField> + <view>DocumentList_view</view> + </neonViewReference> </children> </neonView> diff --git a/preferences/_____PREFERENCES_PROJECT/_____PREFERENCES_PROJECT.aod b/preferences/_____PREFERENCES_PROJECT/_____PREFERENCES_PROJECT.aod index 5edf76c7779d54bddc411de7cb54029b31b8bf2f..1fcf8c780820f5852cd9b64a0e60e7f18eec3766 100644 --- a/preferences/_____PREFERENCES_PROJECT/_____PREFERENCES_PROJECT.aod +++ b/preferences/_____PREFERENCES_PROJECT/_____PREFERENCES_PROJECT.aod @@ -2,7 +2,7 @@ <preferences xmlns="http://www.adito.de/2018/ao/Model" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" VERSION="3.0.3" xsi:schemaLocation="http://www.adito.de/2018/ao/Model adito://models/xsd/preferences/3.0.3"> <name>_____PREFERENCES_PROJECT</name> <majorModelMode>DISTRIBUTED</majorModelMode> - <projectName>xRM-Basic5</projectName> + <projectName>xRM-Basic TIKAL</projectName> <jditoMaxContentSize v="57671680" /> <calendarCategoriesEvent> <entry>