From ddf7cdc037c9a311405e6999ba908d71b9596dad Mon Sep 17 00:00:00 2001 From: "p.neub" <p.neub@adito.de> Date: Wed, 17 Nov 2021 14:30:09 +0100 Subject: [PATCH] =?UTF-8?q?[Projekt:=20xRM-Sales][TicketNr.:=202001680][Ch?= =?UTF-8?q?ecklistentryvalues=20werden=20beim=20L=C3=B6schen=20von=20Sales?= =?UTF-8?q?projects=20nicht=20ber=C3=BCcksichtigt]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../recordcontainers/db/onDBDelete.js | 54 ++++++++----------- 1 file changed, 22 insertions(+), 32 deletions(-) diff --git a/entity/Salesproject_entity/recordcontainers/db/onDBDelete.js b/entity/Salesproject_entity/recordcontainers/db/onDBDelete.js index 169c88c898..885fb8ab82 100644 --- a/entity/Salesproject_entity/recordcontainers/db/onDBDelete.js +++ b/entity/Salesproject_entity/recordcontainers/db/onDBDelete.js @@ -9,45 +9,35 @@ var currentId = vars.getString("$field.SALESPROJECTID"); if (currentId) { - var toDelete = [ - "SALESPROJECT_MILESTONE", - "SALESPROJECT_TOUCHPOINT", - "CLASSIFICATIONSTORAGE" + var directRefTables = [ + "SALESPROJECT_MILESTONE", + "SALESPROJECT_TOUCHPOINT" + ]; + var objectTypeRefTables = [ + "CLASSIFICATION", + "CLASSIFICATIONSTORAGE", + "COMPETITION", + "OBJECTMEMBER", + "FORECAST", + "CHECKLISTENTRYVALUE" ]; - toDelete = toDelete.map(function(pTable) + var deleteStatements = []; + directRefTables.forEach(function(pTable) { - var cond; - if(pTable != "CLASSIFICATIONSTORAGE") - cond = newWhere(pTable + ".SALESPROJECT_ID", currentId) - else - cond = newWhere(pTable + ".OBJECT_ROWID", currentId) - - return [pTable, cond.build()]; + var cond = newWhere(pTable + ".SALESPROJECT_ID", currentId); + deleteStatements.push([pTable, cond.build()]); }); - - - - var modulesToDelete = [ - "CLASSIFICATION", - "COMPETITION", - "OBJECTMEMBER", - "FORECAST" - ]; - - toDelete = toDelete.concat(modulesToDelete.map(function(pTableComp) + objectTypeRefTables.forEach(function(pTable) { - var cond = newWhere(pTableComp + ".OBJECT_TYPE", ContextUtils.getCurrentContextId()) - .and(pTableComp + ".OBJECT_ROWID", currentId) - - return [pTableComp, cond.build()]; - })); - - - db.deletes(toDelete); + var cond = newWhere(pTable + ".OBJECT_TYPE", ContextUtils.getCurrentContextId()) + .and(pTable + ".OBJECT_ROWID", currentId) + deleteStatements.push([pTable, cond.build()]); + }); + db.deletes(deleteStatements); } new AttributeRelationQuery(currentId, null, ContextUtils.getCurrentContextId()) .deleteAllAttributes(); -WorkflowSignalSender.deleted(); \ No newline at end of file +WorkflowSignalSender.deleted(); -- GitLab