From 1d4217c9152c2c1f1a01f3e1787e66fbf38dae91 Mon Sep 17 00:00:00 2001 From: Johannes Hoermann <j.hoermann@adito.de> Date: Wed, 28 Nov 2018 09:34:30 +0100 Subject: [PATCH] Salesproject fix Meilensteine --- .../SalesprojectCycle_entity.aod | 22 +++++++++-------- .../entityfields/type/possibleItemsProcess.js | 8 +++++++ .../entityfields/type/valueProcess.js | 0 .../value/possibleItemsProcess.js | 12 ++++++---- .../_____LANGUAGE_de/_____LANGUAGE_de.aod | 3 +-- .../SalesprojectCycleEdit_view.aod | 4 ++++ .../SalesprojectCycleFilter_view.aod | 5 ++++ process/Keyword_lib/process.js | 24 +++++++++---------- 8 files changed, 49 insertions(+), 29 deletions(-) create mode 100644 entity/SalesprojectCycle_entity/entityfields/type/possibleItemsProcess.js delete mode 100644 entity/SalesprojectCycle_entity/entityfields/type/valueProcess.js diff --git a/entity/SalesprojectCycle_entity/SalesprojectCycle_entity.aod b/entity/SalesprojectCycle_entity/SalesprojectCycle_entity.aod index be74ba4538..d1d4e7cb60 100644 --- a/entity/SalesprojectCycle_entity/SalesprojectCycle_entity.aod +++ b/entity/SalesprojectCycle_entity/SalesprojectCycle_entity.aod @@ -6,6 +6,14 @@ <recordContainerType>DB</recordContainerType> <alias>Data_alias</alias> <conditionProcess>%aditoprj%/entity/SalesprojectCycle_entity/conditionProcess.js</conditionProcess> + <linkInformation> + <linkInformation> + <name>479f5969-fe03-4b36-8437-d2efc967e7b9</name> + <tableName>SALESPROJECT_CYCLE</tableName> + <primaryKey>SALESPROJECT_CYCLEID</primaryKey> + <isUIDTable v="true" /> + </linkInformation> + </linkInformation> <entityFields> <entityIncomingField> <name>#INCOMING</name> @@ -40,16 +48,18 @@ </entityField> <entityField> <name>TYPE</name> + <title>Type</title> <tableName>SALESPROJECT_CYCLE</tableName> <columnName>TYPE</columnName> - <contentType>NUMBER</contentType> - <valueProcess>%aditoprj%/entity/SalesprojectCycle_entity/entityfields/type/valueProcess.js</valueProcess> + <mandatory v="true" /> + <possibleItemsProcess>%aditoprj%/entity/SalesprojectCycle_entity/entityfields/type/possibleItemsProcess.js</possibleItemsProcess> </entityField> <entityField> <name>VALUE</name> <title>Milestone</title> <tableName>SALESPROJECT_CYCLE</tableName> <columnName>VALUE</columnName> + <mandatory v="true" /> <possibleItemsProcess>%aditoprj%/entity/SalesprojectCycle_entity/entityfields/value/possibleItemsProcess.js</possibleItemsProcess> <valueProcess>%aditoprj%/entity/SalesprojectCycle_entity/entityfields/value/valueProcess.js</valueProcess> </entityField> @@ -97,12 +107,4 @@ </dependencies> </entityIncomingField> </entityFields> - <linkInformation> - <linkInformation> - <name>479f5969-fe03-4b36-8437-d2efc967e7b9</name> - <tableName>SALESPROJECT_CYCLE</tableName> - <primaryKey>SALESPROJECT_CYCLEID</primaryKey> - <isUIDTable v="true" /> - </linkInformation> - </linkInformation> </entity> diff --git a/entity/SalesprojectCycle_entity/entityfields/type/possibleItemsProcess.js b/entity/SalesprojectCycle_entity/entityfields/type/possibleItemsProcess.js new file mode 100644 index 0000000000..ca7ec2ba26 --- /dev/null +++ b/entity/SalesprojectCycle_entity/entityfields/type/possibleItemsProcess.js @@ -0,0 +1,8 @@ +import("system.result"); +import("system.vars"); +import("system.logging"); +import("Keyword_lib"); + +var items = KeywordUtils.getStandardArray("SALESPROJECT.CYCLE.TYPE"); +logging.log(items.toSource()) +result.object(items); \ No newline at end of file diff --git a/entity/SalesprojectCycle_entity/entityfields/type/valueProcess.js b/entity/SalesprojectCycle_entity/entityfields/type/valueProcess.js deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/entity/SalesprojectCycle_entity/entityfields/value/possibleItemsProcess.js b/entity/SalesprojectCycle_entity/entityfields/value/possibleItemsProcess.js index 57e45b9818..a3310ce62f 100644 --- a/entity/SalesprojectCycle_entity/entityfields/value/possibleItemsProcess.js +++ b/entity/SalesprojectCycle_entity/entityfields/value/possibleItemsProcess.js @@ -1,17 +1,19 @@ import("system.result"); import("system.vars"); +import("system.logging"); import("Keyword_lib"); -var kwdUtils, items, keyword, type; +var items, keyword, type; items = []; -type = vars.getString("$field.TYPE") +type = vars.getString("$field.TYPE"); +logging.log(type.toSource()) +// load the possible values based on the type. if (type) { - keyword = KeywordUtils.createKeyword("SALESPROJECT.CYCLE.TYPE") - .getPropForKey(vars.getString("$field.TYPE"), "keyword", true); - + keyword = KeywordUtils.get("SALESPROJECT.CYCLE.TYPE", type)[2].keyword; + if (keyword) { items = KeywordUtils.getStandardArray(keyword); } diff --git a/language/_____LANGUAGE_de/_____LANGUAGE_de.aod b/language/_____LANGUAGE_de/_____LANGUAGE_de.aod index ad2ae0ca0f..38c56ae308 100644 --- a/language/_____LANGUAGE_de/_____LANGUAGE_de.aod +++ b/language/_____LANGUAGE_de/_____LANGUAGE_de.aod @@ -300,8 +300,7 @@ </entry> <entry> <key>State</key> - <value>Status -</value> + <value>Status</value> </entry> <entry> <key>Region</key> diff --git a/neonView/SalesprojectCycleEdit_view/SalesprojectCycleEdit_view.aod b/neonView/SalesprojectCycleEdit_view/SalesprojectCycleEdit_view.aod index 00726785ae..ac922eb733 100644 --- a/neonView/SalesprojectCycleEdit_view/SalesprojectCycleEdit_view.aod +++ b/neonView/SalesprojectCycleEdit_view/SalesprojectCycleEdit_view.aod @@ -21,6 +21,10 @@ <name>5df5e35b-4967-4efd-98ac-a57f757e04b4</name> <entityField>DATE_END</entityField> </entityFieldLink> + <entityFieldLink> + <name>db138f88-0cc7-42d9-a5d6-2bfc4f13985c</name> + <entityField>TYPE</entityField> + </entityFieldLink> <entityFieldLink> <name>71891f0f-e610-4584-8936-f2249e99e7ac</name> <entityField>VALUE</entityField> diff --git a/neonView/SalesprojectCycleFilter_view/SalesprojectCycleFilter_view.aod b/neonView/SalesprojectCycleFilter_view/SalesprojectCycleFilter_view.aod index 0e640fea74..17d838b10f 100644 --- a/neonView/SalesprojectCycleFilter_view/SalesprojectCycleFilter_view.aod +++ b/neonView/SalesprojectCycleFilter_view/SalesprojectCycleFilter_view.aod @@ -11,12 +11,17 @@ <children> <tableViewTemplate> <name>SalesprojectCycleFilter_template</name> + <autoNewRow v="true" /> <entityField>#ENTITY</entityField> <columns> <neonTableColumn> <name>1f66befa-a479-437e-b68f-da3cac6fed90</name> <entityField>DATE_START</entityField> </neonTableColumn> + <neonTableColumn> + <name>5001e853-a479-4e63-a0c6-3021926402b6</name> + <entityField>TYPE</entityField> + </neonTableColumn> <neonTableColumn> <name>8a4c91ad-a1e4-4a94-acad-de232c7b0be7</name> <entityField>VALUE</entityField> diff --git a/process/Keyword_lib/process.js b/process/Keyword_lib/process.js index 222a8222e9..ca80a4a47d 100644 --- a/process/Keyword_lib/process.js +++ b/process/Keyword_lib/process.js @@ -34,7 +34,7 @@ function KeywordUtils(){ * result.object(item); */ KeywordUtils.get = function(keywordType, key){ - return this.createKeyword(keywordType).getPropsForKey(key, ["id", "name", "customProperties"]); + return KeywordUtils.createKeyword(keywordType).getPropsForKey(key, ["id", "name", "customProperties"]); } /** @@ -280,23 +280,23 @@ function KeywordUtils(){ ]); break; case "SALESPROJECT.CYCLE.TYPE": - valueContainer = createKeywordEntriesContainer([ - createKeywordEntry("1", translate.text("Phase"), null, {keyword: "SALESPROJECT.PHASE"}) - ,createKeywordEntry("2", translate.text("State"), null, {keyword: "SALESPROJECT.STATE"}) + valueContainer = _createKeywordEntriesContainer([ + _createKeywordEntry("1", translate.text("Phase"), null, {keyword: "SALESPROJECT.PHASE"}) + ,_createKeywordEntry("2", translate.text("State"), null, {keyword: "SALESPROJECT.STATE"}) ]); break; case "SALESPROJECT.CLASS": - valueContainer = createKeywordEntriesContainer([ - createKeywordEntry("1", translate.text("Class A"), null, {keywords: ["CLASS.BRANCHE", "CLASS.BASED", "CLASS.USERS"]}) - ,createKeywordEntry("2", translate.text("Class B"), null, {keywords: ["CLASS.BUDGET", "CLASS.STANDARD", "CLASS.CUSTOMIZING"]}) - ,createKeywordEntry("3", translate.text("Class C"), null, {keywords: ["CLASS.POSITION", "CLASS.PROJSTART", "CLASS.CLOUD", "CLASSES.DEPARTMENT"]}) + valueContainer = _createKeywordEntriesContainer([ + _createKeywordEntry("1", translate.text("Class A"), null, {keywords: ["CLASS.BRANCHE", "CLASS.BASED", "CLASS.USERS"]}) + ,_createKeywordEntry("2", translate.text("Class B"), null, {keywords: ["CLASS.BUDGET", "CLASS.STANDARD", "CLASS.CUSTOMIZING"]}) + ,_createKeywordEntry("3", translate.text("Class C"), null, {keywords: ["CLASS.POSITION", "CLASS.PROJSTART", "CLASS.CLOUD", "CLASSES.DEPARTMENT"]}) ]); break; case "CLASS.BRANCHE": - valueContainer = createKeywordEntriesContainer([ - createKeywordEntry("1", translate.text("Branche 1"), null) - ,createKeywordEntry("2", translate.text("Branche 2"), null) - ,createKeywordEntry("3", translate.text("Branche 3"), null) + valueContainer = _createKeywordEntriesContainer([ + _createKeywordEntry("1", translate.text("Branche 1"), null) + ,_createKeywordEntry("2", translate.text("Branche 2"), null) + ,_createKeywordEntry("3", translate.text("Branche 3"), null) ]); break; case "OFFER.PROBABILITY": -- GitLab