From aeab974be1ce0904719c0db1418bec664b15394e Mon Sep 17 00:00:00 2001
From: "b.ulrich" <b.ulrich@adito.de>
Date: Fri, 3 Jul 2020 08:37:16 +0200
Subject: [PATCH] [Projekt: Entwicklung - Neon][TicketNr.:
 1059952][db.getColumnTypes im xRM nicht mehr verwenden]

---
 .../Activity_entity/recordcontainers/db/onDBInsert.js  |  3 +--
 .../entityfields/load_data/onActionProcess.js          |  6 ++----
 entity/Prod2prod_entity/onInsert.js                    |  4 +---
 .../recordcontainers/dummyjdito/onUpdate.js            |  3 +--
 .../children/newappointment/onActionProcess.js         | 10 +++-------
 .../recordcontainers/jdito/onInsert.js                 |  9 ++-------
 .../recordcontainers/jdito/onUpdate.js                 |  4 +---
 .../recordcontainers/jdito/onInsert.js                 |  4 +---
 process/ActivityTask_lib/process.js                    |  5 ++---
 process/Attribute_lib/process.js                       |  3 +--
 process/Communication_lib/process.js                   |  5 ++---
 process/EwsClient_lib/process.js                       |  6 ++----
 .../documentation.adoc                                 |  3 +--
 process/Leadimport_lib/process.js                      |  3 +--
 process/OfferOrder_lib/process.js                      |  6 ++----
 process/StandardObject_lib/process.js                  |  4 ++--
 16 files changed, 25 insertions(+), 53 deletions(-)

diff --git a/entity/Activity_entity/recordcontainers/db/onDBInsert.js b/entity/Activity_entity/recordcontainers/db/onDBInsert.js
index ce851e0d448..c50343f5ee1 100644
--- a/entity/Activity_entity/recordcontainers/db/onDBInsert.js
+++ b/entity/Activity_entity/recordcontainers/db/onDBInsert.js
@@ -28,9 +28,8 @@ if(vars.exists("$param.VisitPlanEntryId_param") && vars.get("$param.VisitPlanEnt
 {    
     var values = [$KeywordRegistry.visitPlanEntryStatus$Visitreportcreated()];
     var columns = ["STATUS"];
-    var columnTypes = db.getColumnTypes("VISITPLANENTRY", columns, db.getCurrentAlias());
     var update = newWhere("VISITPLANENTRY.VISITPLANENTRYID", vars.get("$param.VisitPlanEntryId_param"))
-                            .updateData(true, "VISITPLANENTRY", columns, columnTypes, values);
+                            .updateData(true, "VISITPLANENTRY", columns, null, values);
 }
 
 if (vars.exists("$param.InsertLinks_param") && vars.get("$param.InsertLinks_param"))
diff --git a/entity/Leadimport_entity/entityfields/load_data/onActionProcess.js b/entity/Leadimport_entity/entityfields/load_data/onActionProcess.js
index b5d208a6e86..578e9f6edf7 100644
--- a/entity/Leadimport_entity/entityfields/load_data/onActionProcess.js
+++ b/entity/Leadimport_entity/entityfields/load_data/onActionProcess.js
@@ -34,7 +34,6 @@ if (binMetadatas.length > 0)
 
     var insertTable = "LEADTEMP";
     var insertCols = LeadImportUtils.leadTempColumns();
-    var insertTypes = db.getColumnTypes(insertTable, insertCols);
     var insertVals = [];
 
     var toInsert = [];
@@ -53,7 +52,7 @@ if (binMetadatas.length > 0)
         }
 
         insertVals.push(importDate, util.getNewUUID(), importName, i.toString(), assignmentRowId);//push other necessary data for the insert
-        toInsert.push([insertTable, insertCols, insertTypes, insertVals]);
+        toInsert.push([insertTable, insertCols, null, insertVals]);
     }
 
     db.inserts(toInsert); 
@@ -62,9 +61,8 @@ if (binMetadatas.length > 0)
 
     var updTable = "LEADIMPORT";
     var updCols = ["STATUS"];
-    var updTypes = db.getColumnTypes(updTable, updCols);
 
-    db.updateData(updTable, updCols, updTypes, [$KeywordRegistry.importStatus$loaded()], newWhere([updTable, "LEADIMPORTID"], assignmentRowId).build());
+    db.updateData(updTable, updCols, null, [$KeywordRegistry.importStatus$loaded()], newWhere([updTable, "LEADIMPORTID"], assignmentRowId).build());
 
     neon.refreshAll();
 
diff --git a/entity/Prod2prod_entity/onInsert.js b/entity/Prod2prod_entity/onInsert.js
index af42dcad8f1..d11203f6249 100644
--- a/entity/Prod2prod_entity/onInsert.js
+++ b/entity/Prod2prod_entity/onInsert.js
@@ -16,6 +16,4 @@ var vals = [ vars.get("$field.UID")
            , vars.get("$field.OPTIONAL")
            , vars.get("$field.TAKEPRICE") ];
 
-var colTypes = db.getColumnTypes("PROD2PROD", cols);
-
-db.insertData("PROD2PROD", cols, colTypes, vals);
\ No newline at end of file
+db.insertData("PROD2PROD", cols, null, vals);
\ No newline at end of file
diff --git a/entity/UnlinkedMailMappingWrapper_entity/recordcontainers/dummyjdito/onUpdate.js b/entity/UnlinkedMailMappingWrapper_entity/recordcontainers/dummyjdito/onUpdate.js
index f6cc9442f35..1910f493948 100644
--- a/entity/UnlinkedMailMappingWrapper_entity/recordcontainers/dummyjdito/onUpdate.js
+++ b/entity/UnlinkedMailMappingWrapper_entity/recordcontainers/dummyjdito/onUpdate.js
@@ -16,7 +16,6 @@ var changedRows = vars.get("$field.UnlinkedMailMappingLinks.insertedRows");
 
 var communicationsToInsert = [];
 var communicationCols = ["COMMUNICATIONID", "ADDR", "CONTACT_ID", "ISSTANDARD", "MEDIUM_ID", "USER_NEW", "DATE_NEW"];
-var communicationTypes = db.getColumnTypes("COMMUNICATION", communicationCols);
 
 if (changedRows.length > 0)
 {
@@ -51,7 +50,7 @@ if (changedRows.length > 0)
         {
             var standardFlag = contactRows[i]["STANDARD_EMAIL_COMMUNICATION"] ? "0" : "1";//when no standard mail exists already: set it
             var vals = [util.getNewUUID(), emailAddrToAdd, contactId, standardFlag, $KeywordRegistry.communicationMedium$mail(), vars.get("$sys.user"), datetime.date()];
-            communicationsToInsert.push(["COMMUNICATION", communicationCols, communicationTypes, vals]);
+            communicationsToInsert.push(["COMMUNICATION", communicationCols, null, vals]);
             //TODO: insert the COMM via a entities.***-method when available
         }
     }
diff --git a/entity/VisitPlanEntry_entity/entityfields/entityactiongroup/children/newappointment/onActionProcess.js b/entity/VisitPlanEntry_entity/entityfields/entityactiongroup/children/newappointment/onActionProcess.js
index e9a7e5846d2..eaa79fcc353 100644
--- a/entity/VisitPlanEntry_entity/entityfields/entityactiongroup/children/newappointment/onActionProcess.js
+++ b/entity/VisitPlanEntry_entity/entityfields/entityactiongroup/children/newappointment/onActionProcess.js
@@ -28,7 +28,6 @@ var mailAffectedUser = [];
 var uidAppointment;
 var values;
 var columns;
-var columnTypes;
 var update;
 var i;
 
@@ -99,27 +98,24 @@ columns = ["AB_APPOINTMENTLINK_ID",
             "APPOINTMENT_ID",
             "OBJECT_TYPE",
             "OBJECT_ROWID"]
-            
-columnTypes = db.getColumnTypes("AB_APPOINTMENTLINK", columns, db.getCurrentAlias());
     
 values = [util.getNewUUID(),
           uidAppointment[0],
           "Organisation",
           organisation_id]
-insert = db.insertData("AB_APPOINTMENTLINK", columns, columnTypes, values)
+insert = db.insertData("AB_APPOINTMENTLINK", columns, null, values)
     
 values = [util.getNewUUID(),
           uidAppointment[0],
           "Person",
           contact_id]
-insert = db.insertData("AB_APPOINTMENTLINK", columns, columnTypes, values)
+insert = db.insertData("AB_APPOINTMENTLINK", columns, null, values)
     
 values = [$KeywordRegistry.visitPlanEntryStatus$Appointmentarranged(), uidAppointment[0]];
 columns = ["STATUS", "APPOINTMENT_ID"];
-columnTypes = db.getColumnTypes("VISITPLANENTRY", columns, db.getCurrentAlias());
     
 update = newWhere("VISITPLANENTRY.VISITPLANENTRYID", uid)
-                        .updateData(true, "VISITPLANENTRY", columns, columnTypes, values);
+                        .updateData(true, "VISITPLANENTRY", columns, null, values);
 
 neon.setFieldValue("$field.STATUS", $KeywordRegistry.visitPlanEntryStatus$Appointmentarranged());
 neon.refreshAll();
\ No newline at end of file
diff --git a/entity/VisitPlanEntry_entity/recordcontainers/jdito/onInsert.js b/entity/VisitPlanEntry_entity/recordcontainers/jdito/onInsert.js
index c0f1048f292..7e0fd095e4f 100644
--- a/entity/VisitPlanEntry_entity/recordcontainers/jdito/onInsert.js
+++ b/entity/VisitPlanEntry_entity/recordcontainers/jdito/onInsert.js
@@ -42,10 +42,8 @@ else
             "VISITPLAN_YEAR",
             "CONTACT_ID",
         ];
-
-        var columnTypesWeek = db.getColumnTypes("VISITPLANEMPLOYEEWEEK", columnsWeek, db.getCurrentAlias());
         
-        insertData.push(["VISITPLANEMPLOYEEWEEK", columnsWeek, columnTypesWeek, valuesWeek]);
+        insertData.push(["VISITPLANEMPLOYEEWEEK", columnsWeek, null, valuesWeek]);
 
         visitPlanEmployeeWeekID = newWeekId;
     }    
@@ -75,9 +73,6 @@ var columnsEntry = [
     "STATUS"
 ];
 
-
-var columnTypesEntry = db.getColumnTypes("VISITPLANENTRY", columnsEntry, db.getCurrentAlias());
-
-insertData.push(["VISITPLANENTRY", columnsEntry, columnTypesEntry, valuesEntry])
+insertData.push(["VISITPLANENTRY", columnsEntry, null, valuesEntry])
 
 db.inserts(insertData);
diff --git a/entity/VisitPlanEntry_entity/recordcontainers/jdito/onUpdate.js b/entity/VisitPlanEntry_entity/recordcontainers/jdito/onUpdate.js
index 412b3644103..527e279547e 100644
--- a/entity/VisitPlanEntry_entity/recordcontainers/jdito/onUpdate.js
+++ b/entity/VisitPlanEntry_entity/recordcontainers/jdito/onUpdate.js
@@ -22,8 +22,6 @@ var columns = [
     "STATUS"
 ];
 
-var columnTypes = db.getColumnTypes("VISITPLANENTRY", columns, db.getCurrentAlias());
-
 var cond = newWhere("VISITPLANENTRY.VISITPLANENTRYID", vars.get("$field.UID")).toString();
 
-db.updateData("VISITPLANENTRY", columns, columnTypes, values, cond);
+db.updateData("VISITPLANENTRY", columns, null, values, cond);
diff --git a/entity/VisitRecommendation_entity/recordcontainers/jdito/onInsert.js b/entity/VisitRecommendation_entity/recordcontainers/jdito/onInsert.js
index f362c1d033e..1da186c5ef6 100644
--- a/entity/VisitRecommendation_entity/recordcontainers/jdito/onInsert.js
+++ b/entity/VisitRecommendation_entity/recordcontainers/jdito/onInsert.js
@@ -24,6 +24,4 @@ var columns = [
     "INFO"
 ];
 
-var columnTypes = db.getColumnTypes("VISITRECOMMENDATION", columns, db.getCurrentAlias());
-
-db.insertData("VISITRECOMMENDATION", columns, columnTypes, values);
\ No newline at end of file
+db.insertData("VISITRECOMMENDATION", columns, null, values);
\ No newline at end of file
diff --git a/process/ActivityTask_lib/process.js b/process/ActivityTask_lib/process.js
index 0e23cd7b6c2..b3b2b927cbb 100644
--- a/process/ActivityTask_lib/process.js
+++ b/process/ActivityTask_lib/process.js
@@ -89,17 +89,16 @@ ActivityUtils.insertNewActivity = function(pDataPreset, pActivityLinks, pDocumen
     _addActivityCol("RESPONSIBLE", dataPreset.responsibleContactId);
     _addActivityCol("SUBJECT", dataPreset.subject);
     
-    insertStatements.push(["ACTIVITY", activityColumns, db.getColumnTypes("ACTIVITY", activityColumns, dbAlias), activityValues]);
+    insertStatements.push(["ACTIVITY", activityColumns, null, activityValues]);
 
     if (pActivityLinks)
     {
         var activityLinkColumns = ["ACTIVITYLINKID", "ACTIVITY_ID", "DATE_NEW", "USER_NEW", "OBJECT_TYPE", "OBJECT_ROWID"];
-        var activityLinkColumnTypes = db.getColumnTypes("ACTIVITYLINK", activityLinkColumns, dbAlias);
         var activityLinkValues;
         for (var i = 0, l = pActivityLinks.length; i < l; i++)
         {
             activityLinkValues = [util.getNewUUID(), activityId, creationDate, creationUser, pActivityLinks[i][0], pActivityLinks[i][1]];
-            insertStatements.push(["ACTIVITYLINK", activityLinkColumns, activityLinkColumnTypes, activityLinkValues]);
+            insertStatements.push(["ACTIVITYLINK", activityLinkColumns, null, activityLinkValues]);
         }
     }
     
diff --git a/process/Attribute_lib/process.js b/process/Attribute_lib/process.js
index 40eed67b874..a2f20954647 100644
--- a/process/Attribute_lib/process.js
+++ b/process/Attribute_lib/process.js
@@ -1224,7 +1224,6 @@ AttributeUsageUtil.insertChildrenUsages = function (pAttributeId, pObjectType)
         return;
     var table = "AB_ATTRIBUTEUSAGE";
     var columns = ["AB_ATTRIBUTEUSAGEID", "AB_ATTRIBUTE_ID", "OBJECT_TYPE", "MAX_COUNT"];
-    var types = db.getColumnTypes(table, columns);
     
     var inserts = [];
     _addInserts(pAttributeId, pObjectType);
@@ -1250,7 +1249,7 @@ AttributeUsageUtil.insertChildrenUsages = function (pAttributeId, pObjectType)
                     ? "1"
                     : "";
                 let values = [util.getNewUUID(), row[0], pObjectType, maxCount];
-                inserts.push([table, columns, types, values]);
+                inserts.push([table, columns, null, values]);
             }
             _addInserts(row[0], pObjectType);
         });
diff --git a/process/Communication_lib/process.js b/process/Communication_lib/process.js
index c9f14225793..055813cf362 100644
--- a/process/Communication_lib/process.js
+++ b/process/Communication_lib/process.js
@@ -70,14 +70,13 @@ CommUtil.setStandardForCategory = function(pAffectedRowId, pNewStandardCommId, p
     
     var statements = [];
     var cols = ["ISSTANDARD"];
-    var types = db.getColumnTypes("COMMUNICATION", cols);
     
     //set current standard comm-record as non-standard
     var cond = newWhere("ISSTANDARD = 1")
                 .and("COMMUNICATION.CONTACT_ID", pAffectedRowId)
                 .and("COMMUNICATION.MEDIUM_ID", mediumIds, SqlBuilder.IN());
     
-     statements.push(["COMMUNICATION", cols, types, ["0"], cond.build()]);
+     statements.push(["COMMUNICATION", cols, null, ["0"], cond.build()]);
 
     //pNewStandardCommId can be an empty string if the standard has to only be removed
     if (pNewStandardCommId != "")
@@ -88,7 +87,7 @@ CommUtil.setStandardForCategory = function(pAffectedRowId, pNewStandardCommId, p
             .and("COMMUNICATION.CONTACT_ID", pAffectedRowId)
             .and("COMMUNICATION.MEDIUM_ID", mediumIds, SqlBuilder.IN());
             
-        statements.push(["COMMUNICATION", cols, types, ["1"], cond.build()]);
+        statements.push(["COMMUNICATION", cols, null, ["1"], cond.build()]);
     }
     
     count = db.updates(statements);
diff --git a/process/EwsClient_lib/process.js b/process/EwsClient_lib/process.js
index 41e53a9c9a5..2de3addde44 100644
--- a/process/EwsClient_lib/process.js
+++ b/process/EwsClient_lib/process.js
@@ -290,10 +290,8 @@ EwsClientCalendarPermissionUtils.writePermissions = function(pExchangeAliasName)
     
     var dbChangeUser = "server";//vars.get("$sys.user") does not work on the serverside (executing from the manager) //todo: check if this is a bug
     var updateCalCols = new Array("USER_EDIT", "DATE_EDIT", "PERMISSION");
-    var updateCalTypes = db.getColumnTypes("AB_PERMISSIONCALENDAR", updateCalCols);
     var insertCalCols = new Array("AB_PERMISSIONCALENDARID", "DATE_NEW","USER_NEW",
         "PERMISSIONPROCURER_ROWID", "PERMISSIONPROCURER_TYPE", "PERMISSIONDEALER_ROWID", "PERMISSIONDEALER_TYPE", "PERMISSION");
-    var insertCalTypes = db.getColumnTypes("AB_PERMISSIONCALENDAR", insertCalCols);
     var vals;
     var right;
     
@@ -332,14 +330,14 @@ EwsClientCalendarPermissionUtils.writePermissions = function(pExchangeAliasName)
                 {
                     vals = [dbChangeUser, datetime.date(), right];
                     newWhere("AB_PERMISSIONCALENDAR.AB_PERMISSIONCALENDARID", existingPermission[0])
-                        .updateData(true, "AB_PERMISSIONCALENDAR", updateCalCols, updateCalTypes, vals);
+                        .updateData(true, "AB_PERMISSIONCALENDAR", updateCalCols, null, vals);
                 }
             }
             else
             {
                 vals = [util.getNewUUID(), datetime.date(), dbChangeUser, exchangeUserMap[qualified], $KeywordRegistry.permissionCalendarType$user(), 
                     exchangeUserMap[owner], $KeywordRegistry.permissionCalendarType$user(), right];
-                db.insertData("AB_PERMISSIONCALENDAR", insertCalCols, insertCalTypes, vals);
+                db.insertData("AB_PERMISSIONCALENDAR", insertCalCols, null, vals);
             }
         }
     }
diff --git a/process/ImporterCustomMappingFunctions_lib/documentation.adoc b/process/ImporterCustomMappingFunctions_lib/documentation.adoc
index d7b37a3ee86..79b5fa0c4b9 100644
--- a/process/ImporterCustomMappingFunctions_lib/documentation.adoc
+++ b/process/ImporterCustomMappingFunctions_lib/documentation.adoc
@@ -94,11 +94,10 @@ function iUpdateContact(pObject)
     { 
         var alias = this.Config.AliasTo; //this gets the selected alias
         var columns = ["STATUS"];
-        var types = db.getColumnTypes("CONTACT", columns, alias); 
         var values = ["CONTACTSTATREVIEW                 "]; 
         var condition = "CONTACTID = '" + pObject.contactID + "'";
         
-        this.updateData("CONTACT", columns, types, values, condition, alias);
+        this.updateData("CONTACT", columns, null, values, condition, alias);
     } 
     catch(ex) //If it fails it will not update but continue the rest
     { 
diff --git a/process/Leadimport_lib/process.js b/process/Leadimport_lib/process.js
index bfc4a50283b..9e8c67db437 100644
--- a/process/Leadimport_lib/process.js
+++ b/process/Leadimport_lib/process.js
@@ -92,7 +92,6 @@ LeadImportUtils.loadImportFile = function(pBinId, pFieldSep, pFieldLimit, pRecor
     var toInsert = [];
     var insertTable = "IMPORTFIELD";
     var insertCols = ["IMPORTFIELDID", "FIELDNAME", "LEADIMPORT_ID", "DATE_NEW", "USER_NEW", "FIELDNUMBER"];
-    var insertTypes = db.getColumnTypes(insertTable, insertCols);
     var insertVals = [];
     var sentenceSeparator = ExportTemplateUtils.getSentenceSeparator(pRecordSep);
     var fieldSeparator = ExportTemplateUtils.getFieldSeparator(pFieldSep);
@@ -117,7 +116,7 @@ LeadImportUtils.loadImportFile = function(pBinId, pFieldSep, pFieldLimit, pRecor
                 for (i = 0; i < table[0].length; i++)
                 {
                     insertVals =  [util.getNewUUID(), table[0][i], pLeadImportId, vars.getString("$sys.date"), vars.getString("$sys.user"), i.toString()];
-                    toInsert.push([insertTable, insertCols, insertTypes, insertVals]);
+                    toInsert.push([insertTable, insertCols, null, insertVals]);
                 }
                 db.inserts(toInsert);
             }
diff --git a/process/OfferOrder_lib/process.js b/process/OfferOrder_lib/process.js
index fe3e80e78fe..f33eba68fa1 100644
--- a/process/OfferOrder_lib/process.js
+++ b/process/OfferOrder_lib/process.js
@@ -75,7 +75,6 @@ function ItemUtils(pOfferOrderId, pTableName) {
     this._updateReOrgItemChangesInDB = function(compTree) {
         var statements = [];
         var cols = ["ITEMSORT", "ITEMPOSITION"];
-        var colTypes = db.getColumnTypes(this.tableName + "ITEM", cols);
 
         var oiTree = this.ItemTree;
         for (var oiid in compTree) {
@@ -83,7 +82,7 @@ function ItemUtils(pOfferOrderId, pTableName) {
                 //check if itemsort/pos has been changed
                 if (oiTree[oiid].itemsort != compTree[oiid].itemsort || oiTree[oiid].pos != compTree[oiid].pos) {
                     var vals = [compTree[oiid].itemsort, compTree[oiid].pos];
-                    statements.push([this.tableName + "ITEM", cols, colTypes, vals, newWhere([this.tableName + "ITEM", this.tableName + "ITEMID"], oiid).build()]);
+                    statements.push([this.tableName + "ITEM", cols, null, vals, newWhere([this.tableName + "ITEM", this.tableName + "ITEMID"], oiid).build()]);
                 }
             }
         }
@@ -221,7 +220,6 @@ ItemUtils.prototype.insertPartsList = function(columns, productId, assignedTo, c
 
         columns = columns.concat(additionalProductInfo.map(function(item) {return item[0][1]}));
 
-        var colTypes = db.getColumnTypes(table, columns);
         
         if (partsList.root != undefined) // if product has a parts list
         {
@@ -273,7 +271,7 @@ ItemUtils.prototype.insertPartsList = function(columns, productId, assignedTo, c
                     // add aditional details
                     .concat(additionalProductInfo.map(function(item) {return ProductDetails[item[1][0]]}));
             
-            statements.push([table, columns, colTypes, vals]);
+            statements.push([table, columns, null, vals]);
             insertedItemIds.push(newid);
             
             __itemInsertStatement(partsList[p2pid], newid);
diff --git a/process/StandardObject_lib/process.js b/process/StandardObject_lib/process.js
index 6eaf4aa07bd..59729e43a41 100644
--- a/process/StandardObject_lib/process.js
+++ b/process/StandardObject_lib/process.js
@@ -219,7 +219,7 @@ StandardObject.prototype._setContactStandardAddress = function (pAddressID, pCon
     db.updateData(
         "CONTACT", 
         ["ADDRESS_ID"], 
-        db.getColumnTypes("CONTACT", ["ADDRESS_ID"]), 
+        null, 
         [pAddressID], 
         newWhere("CONTACT.CONTACTID", pContactID).build());
 }
@@ -288,7 +288,7 @@ StandardObject.prototype._setStandardCommunication = function (pCommunicationID,
     db.updateData(
         "COMMUNICATION", 
         ["ISSTANDARD"], 
-        db.getColumnTypes("COMMUNICATION", ["ISSTANDARD"]), 
+        null, 
         [pValue], 
         newWhere("COMMUNICATION.COMMUNICATIONID", pCommunicationID).build());
 }
-- 
GitLab