diff --git a/entity/SalesprojectClassificationEntry_entity/SalesprojectClassificationEntry_entity.aod b/entity/SalesprojectClassificationEntry_entity/SalesprojectClassificationEntry_entity.aod index b13c1a7873ee945b2e82452319ec1e2d9daa1b60..85700a96a02f686ea202b62ee0296096199c0256 100644 --- a/entity/SalesprojectClassificationEntry_entity/SalesprojectClassificationEntry_entity.aod +++ b/entity/SalesprojectClassificationEntry_entity/SalesprojectClassificationEntry_entity.aod @@ -11,6 +11,7 @@ <element>TYPE</element> <element>NAME</element> <element>VALUE</element> + <element>POINTS</element> </fields> <contentProcess>%aditoprj%/entity/SalesprojectClassificationEntry_entity/contentProcess.js</contentProcess> <onUpdate>%aditoprj%/entity/SalesprojectClassificationEntry_entity/onUpdate.js</onUpdate> @@ -66,5 +67,10 @@ <fieldName>TYPE</fieldName> <state>INVISIBLE</state> </entityField> + <entityField> + <name>POINTS</name> + <fieldName>POINTS</fieldName> + <contentType>NUMBER</contentType> + </entityField> </entityFields> </entity> diff --git a/entity/SalesprojectClassificationEntry_entity/contentProcess.js b/entity/SalesprojectClassificationEntry_entity/contentProcess.js index c66d2c551d7442f910b0e520dfe5127a72a01eaa..f6522f780e89253fc134123233f7eff8a203c215 100644 --- a/entity/SalesprojectClassificationEntry_entity/contentProcess.js +++ b/entity/SalesprojectClassificationEntry_entity/contentProcess.js @@ -1,11 +1,11 @@ import("system.result"); -import("system.vars"); +import("system.util"); import("system.db"); +import("system.vars"); import("Keyword_lib"); import("Sql_lib"); - -var allOldTypesCondition, allOldTypes, classificationsCondition, classifications, classId, salesprojectId, entryKeywords; +var allOldTypesCondition, allOldTypes, classificationsCondition, classifications, classId, salesprojectId, entryKeywords, points; classifications = []; @@ -15,7 +15,7 @@ if (vars.exists("$param.ClassId_param") && vars.exists("$param.SalesprojectId_pa if (classId && salesprojectId) { - + // keywords which are part of the loaded class [[keyname, visibleName]] entryKeywords = KeywordUtils.get("SALESPROJECT.CLASS", classId)[2].keywords; if (entryKeywords && classId && salesprojectId) { @@ -25,18 +25,25 @@ if (vars.exists("$param.ClassId_param") && vars.exists("$param.SalesprojectId_pa if (allOldTypes.length > 0) { // TODO maybe ask user????!!!!! - db.deleteData("SALESPROJECT_CLASSIFICATION", allOldTypesCondition.build("1 = 0")) + db.deleteData("SALESPROJECT_CLASSIFICATION", allOldTypesCondition.build("1 = 0")); } // load classifications for the class classificationsCondition = _getClassificationCondition(true); classifications = db.table(classificationsCondition.buildSelect("select SALESPROJECT_CLASSIFICATIONID, TYPE, VALUE from SALESPROJECT_CLASSIFICATION", "1 = 0")); - logging.log(entryKeywords.toSource()) classifications = entryKeywords.map(function(entryKeyword) { + // return saved value for (i = 0; i < classifications.length; i++) { if (classifications[i][1] == entryKeyword[0]) { - return [classifications[i][0], entryKeyword[0], entryKeyword[1], classifications[i][2]] + // get points + if (classifications[i][2]) { + points = KeywordUtils.get(entryKeyword[0], classifications[i][2])[2].points; + } else { + points = 0; + } + + return [classifications[i][0], entryKeyword[0], entryKeyword[1], classifications[i][2], points] } } @@ -46,11 +53,10 @@ if (vars.exists("$param.ClassId_param") && vars.exists("$param.SalesprojectId_pa salesprojectId, classId, entryKeyword[0], - "1", + "", vars.get("$sys.user"), vars.get("$sys.date") ]; - db.insertData( "SALESPROJECT_CLASSIFICATION", [ @@ -65,19 +71,12 @@ if (vars.exists("$param.ClassId_param") && vars.exists("$param.SalesprojectId_pa null, values ); - - return [values[0], values[3], values[3] , values[4]] - }); -/* - classifications = classifications.map(function(entry) { - let entryKeyword = KeywordUtils.get(entry[1], entry[2]); - return [entry[0], entry[1], entryKeyword[1] , entry[2]] + + return [values[0], values[3], values[3] , values[4], 0] }); -*/ } } } -logging.log(classifications.toSource()) result.object(classifications); /** diff --git a/entity/SalesprojectClassificationEntry_entity/entityfields/value/possibleItemsProcess.js b/entity/SalesprojectClassificationEntry_entity/entityfields/value/possibleItemsProcess.js index 3ac051217610743a25e09ef1e23c3ad2c5d71c90..9ea69e17d2d1150bfa5913991a7cd1999e87fc60 100644 --- a/entity/SalesprojectClassificationEntry_entity/entityfields/value/possibleItemsProcess.js +++ b/entity/SalesprojectClassificationEntry_entity/entityfields/value/possibleItemsProcess.js @@ -3,7 +3,6 @@ import("system.logging"); import("system.vars"); import("Keyword_lib"); -logging.log(vars.get("$field.TYPE")) var type = vars.get("$field.TYPE"); if (type) { result.object(KeywordUtils.getStandardArray(type)); diff --git a/entity/SalesprojectClassification_entity/SalesprojectClassification_entity.aod b/entity/SalesprojectClassification_entity/SalesprojectClassification_entity.aod index b501f4cebb8a7aea19b91f73eaf340cdb1064a2c..8d2348e789663414c1579f806b105d5c313e0b7c 100644 --- a/entity/SalesprojectClassification_entity/SalesprojectClassification_entity.aod +++ b/entity/SalesprojectClassification_entity/SalesprojectClassification_entity.aod @@ -64,5 +64,9 @@ <mandatory v="true" /> <description>PARAMETER</description> </entityParameter> + <entityField> + <name>POINTS</name> + <valueProcess>%aditoprj%/entity/SalesprojectClassification_entity/entityfields/points/valueProcess.js</valueProcess> + </entityField> </entityFields> </entity> diff --git a/entity/SalesprojectClassification_entity/entityfields/points/valueProcess.js b/entity/SalesprojectClassification_entity/entityfields/points/valueProcess.js new file mode 100644 index 0000000000000000000000000000000000000000..5b74382810fde5dda8a728acd2e9c6ce0b1709bf --- /dev/null +++ b/entity/SalesprojectClassification_entity/entityfields/points/valueProcess.js @@ -0,0 +1,4 @@ +import("system.result"); + +// TODO: load from Entry. Currently this is not possible. +result.object(50); // return dummy value \ No newline at end of file diff --git a/neonView/SalesprojectClassificationEntryPreview_view/SalesprojectClassificationEntryPreview_view.aod b/neonView/SalesprojectClassificationEntryPreview_view/SalesprojectClassificationEntryPreview_view.aod index 5504cee35e6c55d284f23f8dece7ca250ded50f2..2d293cdc5810403e1a6b3044908d7f542a2726d2 100644 --- a/neonView/SalesprojectClassificationEntryPreview_view/SalesprojectClassificationEntryPreview_view.aod +++ b/neonView/SalesprojectClassificationEntryPreview_view/SalesprojectClassificationEntryPreview_view.aod @@ -25,6 +25,10 @@ <name>b862235e-6595-4ae0-8bd0-5f942d975c67</name> <entityField>VALUE</entityField> </neonTableColumn> + <neonTableColumn> + <name>ff2b615b-5c98-4a21-bb71-34027711d5e7</name> + <entityField>POINTS</entityField> + </neonTableColumn> </columns> </titledListViewTemplate> </children> diff --git a/neonView/SalesprojectClassificationFilter_view/SalesprojectClassificationFilter_view.aod b/neonView/SalesprojectClassificationFilter_view/SalesprojectClassificationFilter_view.aod index f9058b83be1e1a65488e63410dd1db6b39a5aa68..bc1db2c1a0da373424655f0851f8a48e4de880c2 100644 --- a/neonView/SalesprojectClassificationFilter_view/SalesprojectClassificationFilter_view.aod +++ b/neonView/SalesprojectClassificationFilter_view/SalesprojectClassificationFilter_view.aod @@ -12,14 +12,14 @@ <name>SalesprojectClassificationData_template</name> <entityField>#ENTITY</entityField> <columns> - <neonTableColumn> - <name>112f460a-759b-4127-a184-b580af6681d3</name> - <entityField>UID</entityField> - </neonTableColumn> <neonTableColumn> <name>4139f5bd-0273-4b43-99a7-9122f0322170</name> <entityField>CLASSNAME</entityField> </neonTableColumn> + <neonTableColumn> + <name>9d31832d-86e4-49a8-99a5-2129cd6a1994</name> + <entityField>POINTS</entityField> + </neonTableColumn> </columns> </tableViewTemplate> </children> diff --git a/neonView/SalesprojectClassificationPreview_view/SalesprojectClassificationPreview_view.aod b/neonView/SalesprojectClassificationPreview_view/SalesprojectClassificationPreview_view.aod index 558507fb7b982ae25d0ca068cc5fd38ced3b0e27..a0b82cdb0ce203c0e65ab4a5fef48b80bdae4bf0 100644 --- a/neonView/SalesprojectClassificationPreview_view/SalesprojectClassificationPreview_view.aod +++ b/neonView/SalesprojectClassificationPreview_view/SalesprojectClassificationPreview_view.aod @@ -17,12 +17,8 @@ <entityField>CLASSNAME</entityField> </entityFieldLink> <entityFieldLink> - <name>48312725-e22d-4c13-ab92-7be9f7d477e7</name> - <entityField>UID</entityField> - </entityFieldLink> - <entityFieldLink> - <name>5f9a5d73-67e1-4dcd-b31d-70fe908fb74d</name> - <entityField>SalesprojectId_param</entityField> + <name>c3621e4e-53b0-4932-b943-e1c07fe16a24</name> + <entityField>POINTS</entityField> </entityFieldLink> </fields> </genericViewTemplate> diff --git a/process/Keyword_lib/process.js b/process/Keyword_lib/process.js index 9015c8fc8e1b588c3da29b436022e10c5514a46f..4cba59b2d431a6f497a1f29c64c3de72d11b422f 100644 --- a/process/Keyword_lib/process.js +++ b/process/Keyword_lib/process.js @@ -325,36 +325,36 @@ function KeywordUtils(){ break; case "CLASS.BRANCHE": valueContainer = _createKeywordEntriesContainer([ - _createKeywordEntry("1", translate.text("Branche 1"), null, {value: 50}) - ,_createKeywordEntry("2", translate.text("Branche 2"), null, {value: 16.6}) - ,_createKeywordEntry("3", translate.text("Branche 3"), null, {value: 50}) + _createKeywordEntry("1", translate.text("Branche 1"), null, {points: 50}) + ,_createKeywordEntry("2", translate.text("Branche 2"), null, {points: 16.6}) + ,_createKeywordEntry("3", translate.text("Branche 3"), null, {points: 50}) ]); break; case "CLASS.BASED": valueContainer = _createKeywordEntriesContainer([ - _createKeywordEntry("1", translate.text("Germany"), null, {value: 20}) - ,_createKeywordEntry("2", translate.text("Austria"), null, {value: 7.5}) - ,_createKeywordEntry("3", translate.text("Other"), null, {value: 0}) + _createKeywordEntry("1", translate.text("Germany"), null, {points: 20}) + ,_createKeywordEntry("2", translate.text("Austria"), null, {points: 7.5}) + ,_createKeywordEntry("3", translate.text("Other"), null, {points: 0}) ]); break; case "CLASS.BUDGET": valueContainer = _createKeywordEntriesContainer([ - _createKeywordEntry("1", translate.text("from") + "350T€", null, {value: 50}) - ,_createKeywordEntry("2", "200" + translate.text("to") + "349T€", null, {value: 30}) - ,_createKeywordEntry("2", "0" + translate.text("to") + "3199T€", null, {value: 0}) + _createKeywordEntry("1", translate.text("from") + "350T€", null, {points: 50}) + ,_createKeywordEntry("2", "200" + translate.text("to") + "349T€", null, {points: 30}) + ,_createKeywordEntry("3", "0" + translate.text("to") + "3199T€", null, {points: 0}) ]); break; case "CLASS.STANDARD": valueContainer = _createKeywordEntriesContainer([ - _createKeywordEntry("1", translate.text("Individual"), null, {value: 25}) - ,_createKeywordEntry("2", translate.text("Standard"), null, {value: 12.5}) + _createKeywordEntry("1", translate.text("Individual"), null, {points: 25}) + ,_createKeywordEntry("2", translate.text("Standard"), null, {points: 12.5}) ]); break; case "CLASS.PROJSTART": valueContainer = _createKeywordEntriesContainer([ - _createKeywordEntry("1", translate.text("in 6 Months"), null, {value: 30}) - ,_createKeywordEntry("2", translate.text("in 12 Months"), null, {value: 20}) - ,_createKeywordEntry("3", translate.text("no Project planned"), null, {value: 0}) + _createKeywordEntry("1", translate.text("in 6 Months"), null, {points: 30}) + ,_createKeywordEntry("2", translate.text("in 12 Months"), null, {points: 20}) + ,_createKeywordEntry("3", translate.text("no Project planned"), null, {points: 0}) ]); break; case "OFFER.PROBABILITY":