diff --git a/entity/CampaignStep_entity/entityfields/date_end/onValidation.js b/entity/CampaignStep_entity/entityfields/date_end/onValidation.js index 746e1031c03918a3d99596bfcc05227fddca074e..64e94f87c19545092b85dd400847f342bf7aac70 100644 --- a/entity/CampaignStep_entity/entityfields/date_end/onValidation.js +++ b/entity/CampaignStep_entity/entityfields/date_end/onValidation.js @@ -1,21 +1,14 @@ -import("system.logging"); +import("system.neon"); import("system.result"); +import("system.vars"); import("Date_lib"); import("Entity_lib"); -import("system.vars"); -import("system.neon"); -var dateStart = vars.get("$field.DATE_START"); -var dateEnd = ProcessHandlingUtils.getOnValidationValue(vars.get("$field.DATE_END")); +var cEnd = ProcessHandlingUtils.getOnValidationValue(vars.get("$field.DATE_END")); -logging.log("DATE_END onValidation -> dateStart: " + dateStart); -logging.log("DATE_END onValidation -> dateEnd:" + dateEnd); -logging.log("is dateStart > dateEnd? -> " + (dateStart > dateEnd)); -if (dateStart > dateEnd) +if (DateUtils.validateBeginnBeforeEnd(vars.get("$field.DATE_START"), cEnd) === false) result.string(DateUtils.getValidationFailString()); else { - logging.log("jetzt wird date_start refresht -> "); neon.refresh(["$field.DATE_START"]); - } \ No newline at end of file diff --git a/entity/CampaignStep_entity/entityfields/date_end/valueProcess.js b/entity/CampaignStep_entity/entityfields/date_end/valueProcess.js index 575359740ee89ca6d4d8a8d1a17cbb2b450a3294..bf2e43999c9b27b5744089cb8d88ec10e1c5feed 100644 --- a/entity/CampaignStep_entity/entityfields/date_end/valueProcess.js +++ b/entity/CampaignStep_entity/entityfields/date_end/valueProcess.js @@ -6,5 +6,5 @@ import("system.datetime"); var threeWeeks = datetime.ONE_WEEK * 3; var inThreeWeeks = datetime.date() + threeWeeks; -if(vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW) +if(vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW && !vars.get("$this.value")) result.string(inThreeWeeks); \ No newline at end of file diff --git a/entity/CampaignStep_entity/entityfields/date_start/onValidation.js b/entity/CampaignStep_entity/entityfields/date_start/onValidation.js index 7c937ac09f52cb28fff5ba2384a79bd6ef7f3aac..83a6fd0a8f608b725d4f9118179bf7e5c571635a 100644 --- a/entity/CampaignStep_entity/entityfields/date_start/onValidation.js +++ b/entity/CampaignStep_entity/entityfields/date_start/onValidation.js @@ -1,14 +1,14 @@ -import("system.logging"); +import("system.neon"); import("system.result"); +import("system.vars"); import("Date_lib"); import("Entity_lib"); -import("system.vars"); -var dateStart = ProcessHandlingUtils.getOnValidationValue(vars.get("$field.DATE_START")); -var dateEnd = vars.get("$field.DATE_END"); +var cStart = ProcessHandlingUtils.getOnValidationValue(vars.get("$field.DATE_START")); -logging.log("DATE_START onValidation -> dateStart: " + dateStart); -logging.log("DATE_START onValidation -> dateEnd:" + dateEnd); -logging.log("is dateStart > dateEnd? -> " + (dateStart > dateEnd)); -if (dateStart > dateEnd) - result.string(DateUtils.getValidationFailString()); \ No newline at end of file +if (DateUtils.validateBeginnBeforeEnd(cStart, vars.get("$field.DATE_END")) === false) + result.string(DateUtils.getValidationFailString()); +else + { + neon.refresh(["$field.DATE_END"]); + } \ No newline at end of file diff --git a/entity/CampaignStep_entity/entityfields/date_start/valueProcess.js b/entity/CampaignStep_entity/entityfields/date_start/valueProcess.js index ddb9ac943c20abaad01aefa4f01676f92e7aa312..4c1e2142a292fa2ef6fa38dbe2e458d9628af21f 100644 --- a/entity/CampaignStep_entity/entityfields/date_start/valueProcess.js +++ b/entity/CampaignStep_entity/entityfields/date_start/valueProcess.js @@ -1,10 +1,11 @@ -import("system.logging"); +import("Date_lib"); import("system.neon"); import("system.vars"); import("system.result"); -if(vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW && vars.get("$field.DATE_START") == "") - { - logging.log("DATE_START valueProcess -> neues Datum wird gesetzt"); - result.string(vars.get("$sys.date")); - } \ No newline at end of file +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/Contract_entity/Contract_entity.aod b/entity/Contract_entity/Contract_entity.aod index 5d170ecd647436e671773ec53533b4155c18ccca..fcac2f5cbf4f5775864bc6845a0244bee4d86ea1 100644 --- a/entity/Contract_entity/Contract_entity.aod +++ b/entity/Contract_entity/Contract_entity.aod @@ -49,6 +49,7 @@ <contentType>DATE</contentType> <resolution>DAY</resolution> <outputFormat>dd.MM.yyyy</outputFormat> + <valueProcess>%aditoprj%/entity/Contract_entity/entityfields/contractstart/valueProcess.js</valueProcess> <onValidation>%aditoprj%/entity/Contract_entity/entityfields/contractstart/onValidation.js</onValidation> <onValueChange>%aditoprj%/entity/Contract_entity/entityfields/contractstart/onValueChange.js</onValueChange> </entityField> diff --git a/entity/Contract_entity/entityfields/contractend/onValidation.js b/entity/Contract_entity/entityfields/contractend/onValidation.js index c2b570b75775ae1f669ba1a8e7ad9b716e17f2eb..9cfd6fc2f89a9472d2f9822573964a58640e6966 100644 --- a/entity/Contract_entity/entityfields/contractend/onValidation.js +++ b/entity/Contract_entity/entityfields/contractend/onValidation.js @@ -1,7 +1,6 @@ import("system.result"); import("system.vars"); import("Date_lib"); -import("Util_lib"); import("Entity_lib"); var cEnd = ProcessHandlingUtils.getOnValidationValue(vars.get("$field.CONTRACTEND")); diff --git a/entity/Contract_entity/entityfields/contractstart/onValidation.js b/entity/Contract_entity/entityfields/contractstart/onValidation.js index f7e82b3fd8a66a24591a7fb75a849799a3755ad4..81cb960ca17d5f47cafe286002b0e4c4b381aba7 100644 --- a/entity/Contract_entity/entityfields/contractstart/onValidation.js +++ b/entity/Contract_entity/entityfields/contractstart/onValidation.js @@ -1,8 +1,6 @@ -import("system.neon"); import("system.result"); import("system.vars"); import("Date_lib"); -import("Util_lib"); import("Entity_lib"); var cStart = ProcessHandlingUtils.getOnValidationValue(vars.get("$field.CONTRACTSTART")); diff --git a/entity/Contract_entity/entityfields/contractstart/valueProcess.js b/entity/Contract_entity/entityfields/contractstart/valueProcess.js new file mode 100644 index 0000000000000000000000000000000000000000..7f859f943373ed46e60a1e4786e51216a6a00126 --- /dev/null +++ b/entity/Contract_entity/entityfields/contractstart/valueProcess.js @@ -0,0 +1,11 @@ +import("system.result"); +import("system.vars"); +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/Offer_entity/entityfields/offerdate/valueProcess.js b/entity/Offer_entity/entityfields/offerdate/valueProcess.js index 09c66d00cc0e8b740a0b3c68c2b7d16947027795..6b67243627ceda867da63df21c0600d67442cbbf 100644 --- a/entity/Offer_entity/entityfields/offerdate/valueProcess.js +++ b/entity/Offer_entity/entityfields/offerdate/valueProcess.js @@ -3,7 +3,7 @@ import("system.result"); import("system.neon"); import("Date_lib"); -if(vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW && vars.get("$this.value") == "") +if(vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW && !vars.get("$this.value")) { result.string(DateUtils.getTodayUTC()); } diff --git a/entity/Order_entity/entityfields/salesorderdate/valueProcess.js b/entity/Order_entity/entityfields/salesorderdate/valueProcess.js index 09c66d00cc0e8b740a0b3c68c2b7d16947027795..6b67243627ceda867da63df21c0600d67442cbbf 100644 --- a/entity/Order_entity/entityfields/salesorderdate/valueProcess.js +++ b/entity/Order_entity/entityfields/salesorderdate/valueProcess.js @@ -3,7 +3,7 @@ import("system.result"); import("system.neon"); import("Date_lib"); -if(vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW && vars.get("$this.value") == "") +if(vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW && !vars.get("$this.value")) { result.string(DateUtils.getTodayUTC()); } diff --git a/entity/Orderitem_entity/entityfields/quantity/valueProcess.js b/entity/Orderitem_entity/entityfields/quantity/valueProcess.js index f6173830c1313bf8a59babc8c9f76ba54df6069a..51d655d5bff03c5552b7f5aabbb9b271a1db5e03 100644 --- a/entity/Orderitem_entity/entityfields/quantity/valueProcess.js +++ b/entity/Orderitem_entity/entityfields/quantity/valueProcess.js @@ -2,7 +2,7 @@ import("system.vars"); import("system.result"); import("system.neon"); -if(vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW && vars.get("$this.value") == "") +if(vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW && !vars.get("$this.value")) { result.string("1"); } diff --git a/entity/Organisation_entity/entityfields/status/valueProcess.js b/entity/Organisation_entity/entityfields/status/valueProcess.js index 13218c16514d81765c7e5dfd47c099996adfe063..ab590b059440372f55b8c6d73d0c47eae06ca396 100644 --- a/entity/Organisation_entity/entityfields/status/valueProcess.js +++ b/entity/Organisation_entity/entityfields/status/valueProcess.js @@ -3,5 +3,5 @@ import("system.result"); import("system.neon"); import("KeywordRegistry_basic"); -if(vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW && vars.get("$this.value") == null) +if(vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW && !vars.get("$this.value")) result.string($KeywordRegistry.contactStatus$active()); \ No newline at end of file diff --git a/entity/Productprice_entity/entityfields/buysell/valueProcess.js b/entity/Productprice_entity/entityfields/buysell/valueProcess.js index 33aba856e9b608b1f09c8c04181e1082b0229a95..f8481bc40d44f280c10a48148b53c71f1b5d0247 100644 --- a/entity/Productprice_entity/entityfields/buysell/valueProcess.js +++ b/entity/Productprice_entity/entityfields/buysell/valueProcess.js @@ -2,5 +2,5 @@ import("system.vars"); import("system.result"); import("system.neon"); -if(vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW && vars.get("$this.value") == "") +if(vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW && !vars.get("$this.value")) result.string("SP"); \ No newline at end of file diff --git a/entity/Productprice_entity/entityfields/fromquantity/valueProcess.js b/entity/Productprice_entity/entityfields/fromquantity/valueProcess.js index b2204ba4adb39c57f8f5dd011cf2560d92034c07..b659c0bc4d1a64ec7a7e22a2132763523003f5e9 100644 --- a/entity/Productprice_entity/entityfields/fromquantity/valueProcess.js +++ b/entity/Productprice_entity/entityfields/fromquantity/valueProcess.js @@ -2,7 +2,7 @@ import("system.vars"); import("system.result"); import("system.neon"); -if(vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW && vars.get("$this.value") == "") +if(vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW && !vars.get("$this.value")) result.string("1"); else result.string(vars.get("$this.value")); \ No newline at end of file diff --git a/entity/Productprice_entity/entityfields/price/valueProcess.js b/entity/Productprice_entity/entityfields/price/valueProcess.js index 723d0252aa9b87eb839318b7e5e63d7d7dfc567f..79b1b6752e24ab20067845ce191ee075eab584f2 100644 --- a/entity/Productprice_entity/entityfields/price/valueProcess.js +++ b/entity/Productprice_entity/entityfields/price/valueProcess.js @@ -1,6 +1,6 @@ -import("system.vars"); -import("system.result"); -import("system.neon"); - -if(vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW && vars.get("$this.value") == "") +import("system.vars"); +import("system.result"); +import("system.neon"); + +if(vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW && !vars.get("$this.value")) result.string("0"); \ No newline at end of file diff --git a/entity/Productprice_entity/entityfields/valid_from/onValidation.js b/entity/Productprice_entity/entityfields/valid_from/onValidation.js index 5ebbf1a7dccee4b0a58c46b478596bf326697184..6d142999dafedcbed0a2eeca9725a0d82f3ba72f 100644 --- a/entity/Productprice_entity/entityfields/valid_from/onValidation.js +++ b/entity/Productprice_entity/entityfields/valid_from/onValidation.js @@ -1,7 +1,6 @@ import("system.result"); import("system.vars"); import("Date_lib"); -import("Util_lib"); import("Entity_lib"); var cStart = ProcessHandlingUtils.getOnValidationValue(vars.get("$field.VALID_FROM")); diff --git a/entity/Productprice_entity/entityfields/valid_from/valueProcess.js b/entity/Productprice_entity/entityfields/valid_from/valueProcess.js index 4a5ac41f637617745a3985ec17bd66594133db52..7f859f943373ed46e60a1e4786e51216a6a00126 100644 --- a/entity/Productprice_entity/entityfields/valid_from/valueProcess.js +++ b/entity/Productprice_entity/entityfields/valid_from/valueProcess.js @@ -3,7 +3,7 @@ import("system.vars"); import("system.neon"); import("Date_lib"); -if(vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW && vars.get("$this.value") == "") +if(vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW && !vars.get("$this.value")) { result.string(DateUtils.getTodayUTC()); } diff --git a/entity/Productprice_entity/entityfields/valid_to/onValidation.js b/entity/Productprice_entity/entityfields/valid_to/onValidation.js index 3ada2dd1e76e6dceb2b4c1dbf169bf91e0125579..28693efe69f97ec8a33fddd928127117866f264a 100644 --- a/entity/Productprice_entity/entityfields/valid_to/onValidation.js +++ b/entity/Productprice_entity/entityfields/valid_to/onValidation.js @@ -1,7 +1,6 @@ import("system.result"); import("system.vars"); import("Date_lib"); -import("Util_lib"); import("Entity_lib"); var cEnd = ProcessHandlingUtils.getOnValidationValue(vars.get("$field.VALID_TO")); diff --git a/entity/Productprice_entity/entityfields/vat/valueProcess.js b/entity/Productprice_entity/entityfields/vat/valueProcess.js index 723d0252aa9b87eb839318b7e5e63d7d7dfc567f..79b1b6752e24ab20067845ce191ee075eab584f2 100644 --- a/entity/Productprice_entity/entityfields/vat/valueProcess.js +++ b/entity/Productprice_entity/entityfields/vat/valueProcess.js @@ -1,6 +1,6 @@ -import("system.vars"); -import("system.result"); -import("system.neon"); - -if(vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW && vars.get("$this.value") == "") +import("system.vars"); +import("system.result"); +import("system.neon"); + +if(vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW && !vars.get("$this.value")) result.string("0"); \ No newline at end of file diff --git a/entity/SalesprojectForecast_entity/SalesprojectForecast_entity.aod b/entity/SalesprojectForecast_entity/SalesprojectForecast_entity.aod index bb39731c041d0e54d2244e0b183af5da512ca5cb..d9be296864922536d3a0d0bd8bab65084c0dde05 100644 --- a/entity/SalesprojectForecast_entity/SalesprojectForecast_entity.aod +++ b/entity/SalesprojectForecast_entity/SalesprojectForecast_entity.aod @@ -14,6 +14,7 @@ <contentType>DATE</contentType> <resolution>DAY</resolution> <outputFormat>dd.MM.yyyy</outputFormat> + <valueProcess>%aditoprj%/entity/SalesprojectForecast_entity/entityfields/date_start/valueProcess.js</valueProcess> </entityField> <entityField> <name>GROUPCODE</name> diff --git a/entity/SalesprojectForecast_entity/entityfields/date_start/valueProcess.js b/entity/SalesprojectForecast_entity/entityfields/date_start/valueProcess.js new file mode 100644 index 0000000000000000000000000000000000000000..7f859f943373ed46e60a1e4786e51216a6a00126 --- /dev/null +++ b/entity/SalesprojectForecast_entity/entityfields/date_start/valueProcess.js @@ -0,0 +1,11 @@ +import("system.result"); +import("system.vars"); +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/Salesproject_entity/Salesproject_entity.aod b/entity/Salesproject_entity/Salesproject_entity.aod index 5a37d4e83b69ebb6159529f5788e08c630a62878..cf5b6fcfaf15f937f6732b64d3ae57535c33a3d6 100644 --- a/entity/Salesproject_entity/Salesproject_entity.aod +++ b/entity/Salesproject_entity/Salesproject_entity.aod @@ -33,6 +33,7 @@ <resolution>DAY</resolution> <outputFormat>dd.MM.yyyy</outputFormat> <valueProcess>%aditoprj%/entity/Salesproject_entity/entityfields/enddate/valueProcess.js</valueProcess> + <onValidation>%aditoprj%/entity/Salesproject_entity/entityfields/enddate/onValidation.js</onValidation> </entityField> <entityField> <name>INFO</name> @@ -82,6 +83,7 @@ <outputFormat>dd.MM.yyyy</outputFormat> <mandatory v="true" /> <valueProcess>%aditoprj%/entity/Salesproject_entity/entityfields/startdate/valueProcess.js</valueProcess> + <onValidation>%aditoprj%/entity/Salesproject_entity/entityfields/startdate/onValidation.js</onValidation> </entityField> <entityField> <name>STATE</name> diff --git a/entity/Salesproject_entity/entityfields/enddate/onValidation.js b/entity/Salesproject_entity/entityfields/enddate/onValidation.js new file mode 100644 index 0000000000000000000000000000000000000000..11c71f9e9c1f0bc9a2890ce460aafc7d5529a473 --- /dev/null +++ b/entity/Salesproject_entity/entityfields/enddate/onValidation.js @@ -0,0 +1,10 @@ +import("system.result"); +import("system.vars"); +import("Date_lib"); +import("Util_lib"); +import("Entity_lib"); + +var cEnd = ProcessHandlingUtils.getOnValidationValue(vars.get("$field.ENDDATE")); + +if (DateUtils.validateBeginnBeforeEnd(vars.get("$field.STARTDATE"), cEnd) === false) + result.string(DateUtils.getValidationFailString()); \ No newline at end of file diff --git a/entity/Salesproject_entity/entityfields/enddate/valueProcess.js b/entity/Salesproject_entity/entityfields/enddate/valueProcess.js index f6ff85ba891e77ab3a5435a936d573a67defce9a..9cd6d6bfeb34744525ad8934e0fb07ab27a742ec 100644 --- a/entity/Salesproject_entity/entityfields/enddate/valueProcess.js +++ b/entity/Salesproject_entity/entityfields/enddate/valueProcess.js @@ -3,7 +3,7 @@ import("system.result"); import("system.neon"); import("Date_lib"); -if(vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW && vars.get("$this.value") == "") +if(vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW && !vars.get("$this.value")) { result.string(DateUtils.getDateIncrementedByYears(DateUtils.getTodayUTC(), 1)); } diff --git a/entity/Salesproject_entity/entityfields/startdate/onValidation.js b/entity/Salesproject_entity/entityfields/startdate/onValidation.js new file mode 100644 index 0000000000000000000000000000000000000000..4e0411453d761b4184537f5ee680cc214e5a74d6 --- /dev/null +++ b/entity/Salesproject_entity/entityfields/startdate/onValidation.js @@ -0,0 +1,11 @@ +import("system.neon"); +import("system.result"); +import("system.vars"); +import("Date_lib"); +import("Util_lib"); +import("Entity_lib"); + +var cStart = ProcessHandlingUtils.getOnValidationValue(vars.get("$field.STARTDATE")); + +if (DateUtils.validateBeginnBeforeEnd(cStart, vars.get("$field.ENDDATE")) === false) + result.string(DateUtils.getValidationFailString()); \ No newline at end of file diff --git a/entity/Salesproject_entity/entityfields/startdate/valueProcess.js b/entity/Salesproject_entity/entityfields/startdate/valueProcess.js index 09c66d00cc0e8b740a0b3c68c2b7d16947027795..6b67243627ceda867da63df21c0600d67442cbbf 100644 --- a/entity/Salesproject_entity/entityfields/startdate/valueProcess.js +++ b/entity/Salesproject_entity/entityfields/startdate/valueProcess.js @@ -3,7 +3,7 @@ import("system.result"); import("system.neon"); import("Date_lib"); -if(vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW && vars.get("$this.value") == "") +if(vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW && !vars.get("$this.value")) { result.string(DateUtils.getTodayUTC()); } diff --git a/entity/Task_entity/entityfields/maturity_date/onValidation.js b/entity/Task_entity/entityfields/maturity_date/onValidation.js index bb062404491c5fdbd934a7e23caf370b5c250d6e..c9150833ab7afe40eb4f700569d03ad1e0ba8706 100644 --- a/entity/Task_entity/entityfields/maturity_date/onValidation.js +++ b/entity/Task_entity/entityfields/maturity_date/onValidation.js @@ -1 +1,9 @@ -//TODO: add validation for start-date and maturity-date \ No newline at end of file +import("system.result"); +import("system.vars"); +import("Date_lib"); +import("Entity_lib"); + +var cEnd = ProcessHandlingUtils.getOnValidationValue(vars.get("$field.MATURITY_DATE")); + +if (DateUtils.validateBeginnBeforeEnd(vars.get("$field.START_DATE"), cEnd) === false) + result.string(DateUtils.getValidationFailString()); \ No newline at end of file diff --git a/entity/Task_entity/entityfields/maturity_date/valueProcess.js b/entity/Task_entity/entityfields/maturity_date/valueProcess.js index 033144177b08bda5223b19f104b5fdbebf1a7569..080e7e81c25ffad28875eee2a0525bfc2a7f768d 100644 --- a/entity/Task_entity/entityfields/maturity_date/valueProcess.js +++ b/entity/Task_entity/entityfields/maturity_date/valueProcess.js @@ -1,11 +1,10 @@ import("system.eMath"); import("system.datetime"); -import("system.util"); import("system.result"); import("system.neon"); import("system.vars"); -if(vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW) +if(vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW && !vars.get("$this.value")) { var startDate = vars.get("$field.START_DATE"); var presetVal = eMath.addInt(startDate, datetime.ONE_WEEK); diff --git a/entity/Task_entity/entityfields/start_date/onValidation.js b/entity/Task_entity/entityfields/start_date/onValidation.js index bb062404491c5fdbd934a7e23caf370b5c250d6e..4bad868ca52710b422022dd4583f0afde7b000bc 100644 --- a/entity/Task_entity/entityfields/start_date/onValidation.js +++ b/entity/Task_entity/entityfields/start_date/onValidation.js @@ -1 +1,11 @@ -//TODO: add validation for start-date and maturity-date \ No newline at end of file +import("system.neon"); +import("system.result"); +import("system.vars"); +import("Date_lib"); +import("Util_lib"); +import("Entity_lib"); + +var cStart = ProcessHandlingUtils.getOnValidationValue(vars.get("$field.START_DATE")); + +if (DateUtils.validateBeginnBeforeEnd(cStart, vars.get("$field.MATURITY_DATE")) === false) + result.string(DateUtils.getValidationFailString()); \ No newline at end of file diff --git a/entity/Task_entity/entityfields/start_date/valueProcess.js b/entity/Task_entity/entityfields/start_date/valueProcess.js index 0b43b2859aece42dabb0f256e8058c6e811677a4..5b098ba003d06ee9125c54f3f53559b2155ea8e3 100644 --- a/entity/Task_entity/entityfields/start_date/valueProcess.js +++ b/entity/Task_entity/entityfields/start_date/valueProcess.js @@ -1,10 +1,9 @@ import("system.datetime"); -import("system.util"); import("system.result"); import("system.neon"); import("system.vars"); -if(vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW) +if(vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW && !vars.get("$this.value")) { var presetVal = datetime.date(); //TODO: depending on what happens in #1032274 we need to manually set the resolution to MINUTES or not (which means we've to set everything smaller than MINUTES (Seconds, etc.) to zero)