From 67a9e034ea677a13b998e3095789a4d53cc69c3a Mon Sep 17 00:00:00 2001
From: Johannes Hoermann <j.hoermann@adito.de>
Date: Tue, 4 Dec 2018 15:07:53 +0100
Subject: [PATCH] fix salesproject

---
 .../entityfields/offercode/valueProcess.js             |  2 +-
 entity/Salesproject_entity/Salesproject_entity.aod     |  3 ++-
 .../entityfields/projectcode/documentation.adoc        |  5 +++++
 .../entityfields/projectcode/valueProcess.js           |  2 +-
 process/OfferOrder_lib/process.js                      |  2 +-
 process/Salesproject_lib/process.js                    | 10 ++++------
 6 files changed, 14 insertions(+), 10 deletions(-)
 create mode 100644 entity/Salesproject_entity/entityfields/projectcode/documentation.adoc

diff --git a/entity/Offer_entity/entityfields/offercode/valueProcess.js b/entity/Offer_entity/entityfields/offercode/valueProcess.js
index 8b0c49adb8..b18f10d63f 100644
--- a/entity/Offer_entity/entityfields/offercode/valueProcess.js
+++ b/entity/Offer_entity/entityfields/offercode/valueProcess.js
@@ -5,5 +5,5 @@ import("OfferOrder_lib");
 
 if(vars.get("$sys.operatingstate") == neon.OPERATINGSTATE_NEW)
 {    
-    result.string( OfferUtils.getNextOfferNumber() );
+    result.string(OfferUtils.getNextOfferNumber());
 }
\ No newline at end of file
diff --git a/entity/Salesproject_entity/Salesproject_entity.aod b/entity/Salesproject_entity/Salesproject_entity.aod
index d2444f0d5e..714ffefe2d 100644
--- a/entity/Salesproject_entity/Salesproject_entity.aod
+++ b/entity/Salesproject_entity/Salesproject_entity.aod
@@ -74,10 +74,11 @@
     </entityField>
     <entityField>
       <name>PROJECTCODE</name>
+      <documentation>%aditoprj%/entity/Salesproject_entity/entityfields/projectcode/documentation.adoc</documentation>
       <title>Project number</title>
       <tableName>SALESPROJECT</tableName>
       <columnName>PROJECTCODE</columnName>
-      <state>AUTO</state>
+      <state>READONLY</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/documentation.adoc b/entity/Salesproject_entity/entityfields/projectcode/documentation.adoc
new file mode 100644
index 0000000000..cec9521fc5
--- /dev/null
+++ b/entity/Salesproject_entity/entityfields/projectcode/documentation.adoc
@@ -0,0 +1,5 @@
+= PROJECTCODE
+:hardbreaks:
+
+Unique identification number of the offer.
+It's automatically generated from the starting number _1000_.
\ No newline at end of file
diff --git a/entity/Salesproject_entity/entityfields/projectcode/valueProcess.js b/entity/Salesproject_entity/entityfields/projectcode/valueProcess.js
index 140b1f23cd..f1b5e3b17e 100644
--- a/entity/Salesproject_entity/entityfields/projectcode/valueProcess.js
+++ b/entity/Salesproject_entity/entityfields/projectcode/valueProcess.js
@@ -5,5 +5,5 @@ import("Salesproject_lib");
 
 if(vars.get("$sys.operatingstate") == neon.OPERATINGSTATE_NEW)
 {    
-    result.string( Salesproject.getNextProjectNumber() );
+    result.string(Salesproject.getNextProjectNumber());
 }
\ No newline at end of file
diff --git a/process/OfferOrder_lib/process.js b/process/OfferOrder_lib/process.js
index 2e2e5b4a3c..42d6f9e059 100644
--- a/process/OfferOrder_lib/process.js
+++ b/process/OfferOrder_lib/process.js
@@ -37,7 +37,7 @@ OfferUtils.getNextOfferVersionNumber = function(offerCode) {
  * 
  * @param {String} offerNumber offer number to check
  * 
- * @return {boolean} passed number is valid
+ * @return {Boolean} passed number is valid
  */
 OfferUtils.validateOfferNumber = function(offerNumber) {
     return NumberSequencingUtils.validateUniqueNumber(offerNumber, "OFFERCODE", "OFFER");
diff --git a/process/Salesproject_lib/process.js b/process/Salesproject_lib/process.js
index f709dec67e..a7a26eb60f 100644
--- a/process/Salesproject_lib/process.js
+++ b/process/Salesproject_lib/process.js
@@ -20,8 +20,7 @@ function Salesproject() {}
  * @result {String} next valid project number
  */
 Salesproject.getNextProjectNumber = function() {
-    var JdUtils = new JDitoUtils();
-    return JdUtils.getNextUniqueNumber("PROJECTCODE", "SALESPROJECT");
+    return NumberSequencingUtils.getNextUniqueNumber("PROJECTCODE", "SALESPROJECT");
 }
 
 /**
@@ -32,8 +31,7 @@ Salesproject.getNextProjectNumber = function() {
  * @result {Boolean} passed number is valid
  */
 Salesproject.validateProjectNumber = function(projectNumber) {
-    var JdUtils = new JDitoUtils();
-    return JdUtils.validateUniqueNumber(projectNumber, "PROJECTCODE", "SALESPROJECT");
+    return NumberSequencingUtils.validateUniqueNumber(projectNumber, "PROJECTCODE", "SALESPROJECT");
 }
 
 /**
@@ -53,12 +51,12 @@ Salesproject.insertMilestone = function(salesprojectId, type, value, notifyForec
             ["SALESPROJECT_CYCLEID", "SALESPROJECT_ID", "TYPE", "VALUE", "DATE_START", "USER_NEW", "DATE_NEW"],
             null,
             [util.getNewUUID(), salesprojectId, type, value, vars.get("$sys.date"), vars.get("$sys.user"), vars.get("$sys.date")]);
+            
         if (notifyForecast) {
             this.notifyToUpdateForecast()
         }
         return true;
     }
-
     return false;
 }
 
@@ -66,6 +64,6 @@ Salesproject.insertMilestone = function(salesprojectId, type, value, notifyForec
  * Notify the user to update the forecast
  */
 Salesproject.notifyToUpdateForecast = function() {
-    // Todo logging.show durch sinnvolle Meldung ersetzen oder ähnlich...
+    // TODO: logging.show durch sinnvolle Meldung ersetzen oder ähnlich...
     logging.show(translate.text("Please update the forecast."));
 }
\ No newline at end of file
-- 
GitLab