From 1f3e7df56d2298b10cc61e6e4037d2f3dd92a94c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Maximilian=20Schr=C3=B6ger?= <m.schroeger@adito.de> Date: Wed, 21 Nov 2018 13:19:11 +0100 Subject: [PATCH] Validation OFFERNUMBER/PROJECTNUMBER --- .../entityfields/offercode/onValidation.js | 5 +++-- entity/Salesproject_entity/Salesproject_entity.aod | 7 +++++-- .../entityfields/projectcode/onValidation.js | 5 +++-- .../entityfields/projectcode/onValueChange.js | 10 ---------- process/OfferOrder_lib/process.js | 2 +- 5 files changed, 12 insertions(+), 17 deletions(-) diff --git a/entity/Offer_entity/entityfields/offercode/onValidation.js b/entity/Offer_entity/entityfields/offercode/onValidation.js index bd2b194002..8880dadb94 100644 --- a/entity/Offer_entity/entityfields/offercode/onValidation.js +++ b/entity/Offer_entity/entityfields/offercode/onValidation.js @@ -6,7 +6,8 @@ import("Util_lib"); var OfferUtils = new OfferUtils(); -if( !OfferUtils.validateOfferNumber(ProcessHandlingUtil.getOnValidationValue(vars.get("$field.OFFERCODE"))) ) +if( vars.get("$sys.operatingstate") == neon.OPERATINGSTATE_NEW + && !OfferUtils.validateOfferNumber(ProcessHandlingUtil.getOnValidationValue(vars.get("$field.OFFERCODE"))) ) { - result.string(OfferUtils.getOfferNumberValidationFailString()); + vars.set( "$field.PROJECTCODE", SalesprojectUtils.getNextOfferNumber().toString() ); } \ No newline at end of file diff --git a/entity/Salesproject_entity/Salesproject_entity.aod b/entity/Salesproject_entity/Salesproject_entity.aod index f81960ed2b..ff6b7122fd 100644 --- a/entity/Salesproject_entity/Salesproject_entity.aod +++ b/entity/Salesproject_entity/Salesproject_entity.aod @@ -3,10 +3,13 @@ <name>Salesproject_entity</name> <title>Salesproject</title> <majorModelMode>DISTRIBUTED</majorModelMode> - <alias>Data_alias</alias> <recordContainerType>DB</recordContainerType> <caption>Salesproject</caption> + <onValidation>%aditoprj%/entity/Salesproject_entity/onValidation.js</onValidation> + <afterOperatingState>%aditoprj%/entity/Salesproject_entity/afterOperatingState.js</afterOperatingState> <iconId>VAADIN:FILTER</iconId> + <alias>Data_alias</alias> + <onDBInsert>%aditoprj%/entity/Salesproject_entity/onDBInsert.js</onDBInsert> <entityFields> <entityIncomingField> <name>#INCOMING</name> @@ -65,7 +68,7 @@ <tableName>SALESPROJECT</tableName> <columnName>PROJECTCODE</columnName> <caption>Project number</caption> - <state>READONLY</state> + <state>AUTO</state> <valueProcess>%aditoprj%/entity/Salesproject_entity/entityfields/projectcode/valueProcess.js</valueProcess> <onValidation>%aditoprj%/entity/Salesproject_entity/entityfields/projectcode/onValidation.js</onValidation> <onValueChange>%aditoprj%/entity/Salesproject_entity/entityfields/projectcode/onValueChange.js</onValueChange> diff --git a/entity/Salesproject_entity/entityfields/projectcode/onValidation.js b/entity/Salesproject_entity/entityfields/projectcode/onValidation.js index 1df10f8951..b880f9dc7f 100644 --- a/entity/Salesproject_entity/entityfields/projectcode/onValidation.js +++ b/entity/Salesproject_entity/entityfields/projectcode/onValidation.js @@ -6,7 +6,8 @@ import("Util_lib"); var SalesprojectUtils = new SalesprojectUtils(); -if( !SalesprojectUtils.validateProjectNumber(ProcessHandlingUtil.getOnValidationValue(vars.get("$field.PROJECTCODE"))) ) +if( vars.get("$sys.operatingstate") == neon.OPERATINGSTATE_NEW + && !SalesprojectUtils.validateProjectNumber(ProcessHandlingUtil.getOnValidationValue(vars.get("$field.PROJECTCODE"))) ) { - result.string(SalesprojectUtils.getProjectNumberValidationFailString()); + vars.set( "$field.PROJECTCODE", SalesprojectUtils.getNextProjectNumber().toString() ); } \ No newline at end of file diff --git a/entity/Salesproject_entity/entityfields/projectcode/onValueChange.js b/entity/Salesproject_entity/entityfields/projectcode/onValueChange.js index 289a0b56e8..e69de29bb2 100644 --- a/entity/Salesproject_entity/entityfields/projectcode/onValueChange.js +++ b/entity/Salesproject_entity/entityfields/projectcode/onValueChange.js @@ -1,10 +0,0 @@ -import("system.vars"); -import("system.result"); -import("Salesproject_lib"); -import("Util_lib"); - -var SalesprojectUtils = new SalesprojectUtils(); -if( !SalesprojectUtils.validateProjectNumber(ProcessHandlingUtil.getOnValidationValue(vars.get("$field.PROJECTCODE"))) ) -{ - vars.set("$field.PROJECTCODE", SalesprojectUtils.getNextProjectNumber()); -} diff --git a/process/OfferOrder_lib/process.js b/process/OfferOrder_lib/process.js index 67d8e8a9df..0bae4843e3 100644 --- a/process/OfferOrder_lib/process.js +++ b/process/OfferOrder_lib/process.js @@ -73,7 +73,7 @@ function OfferUtils() /**OfferItemUtils * * Instance class that provides methods for dealing with offer / order items. - * Inherits method from abstract class ItemUtils. + * Inherits methods from abstract class ItemUtils. * For documentation, see class ItemUtils. * ******************************************************************************/ -- GitLab