From 77097a928ae981d14d5591baab8137dff1435b7c Mon Sep 17 00:00:00 2001 From: "p.neub" <p.neub@adito.de> Date: Thu, 8 Apr 2021 12:12:46 +0200 Subject: [PATCH] [Projekt: xRM-Sales][TicketNr.: 1078061][Fehlender Kontakt bei Angebotsanalage ] --- .../children/contactids_param/valueProcess.js | 19 ++++++-- .../entityfields/contact_id/stateProcess.js | 9 +--- .../entityfields/contact_id/valueProcess.js | 48 ++++++++++--------- 3 files changed, 42 insertions(+), 34 deletions(-) diff --git a/entity/Offer_entity/entityfields/anycontacts/children/contactids_param/valueProcess.js b/entity/Offer_entity/entityfields/anycontacts/children/contactids_param/valueProcess.js index 64ebdd402a0..b705ec11cfc 100644 --- a/entity/Offer_entity/entityfields/anycontacts/children/contactids_param/valueProcess.js +++ b/entity/Offer_entity/entityfields/anycontacts/children/contactids_param/valueProcess.js @@ -1,10 +1,21 @@ import("system.result"); import("system.vars"); +import("Sql_lib"); -var contactIds = ""; -if (vars.exists("$param.ContactIds_param") && vars.get("$param.ContactIds_param")) { +var contactIds = null; +if(vars.exists("$param.ContactIds_param") && vars.get("$param.ContactIds_param")) +{ contactIds = vars.get("$param.ContactIds_param"); } -if (contactIds) - result.string(contactIds); \ No newline at end of file +if(!contactIds && vars.get("$field.CONTACT_ORG_ID")) +{ + var sql = newSelect("CONTACTID").from("CONTACT") + .where("CONTACT.ORGANISATION_ID", vars.get("$field.CONTACT_ORG_ID")); + contactIds = JSON.stringify(sql.arrayColumn()); +} + +if(contactIds) +{ + result.string(contactIds); +} diff --git a/entity/Offer_entity/entityfields/contact_id/stateProcess.js b/entity/Offer_entity/entityfields/contact_id/stateProcess.js index 0dcccb84c77..e51ff93affb 100644 --- a/entity/Offer_entity/entityfields/contact_id/stateProcess.js +++ b/entity/Offer_entity/entityfields/contact_id/stateProcess.js @@ -3,11 +3,4 @@ import("system.result"); import("system.neon"); import("system.vars"); -if(vars.get("$sys.recordstate") == neon.OPERATINGSTATE_EDIT) -{ - result.string(neon.COMPONENTSTATE_READONLY); -} -else -{ - result.string(OfferUtils.isEditable(vars.get("$field.STATUS")) ? neon.COMPONENTSTATE_AUTO : neon.COMPONENTSTATE_DISABLED); -} +result.string(OfferUtils.isEditable(vars.get("$field.STATUS")) ? neon.COMPONENTSTATE_AUTO : neon.COMPONENTSTATE_DISABLED); diff --git a/entity/Offer_entity/entityfields/contact_id/valueProcess.js b/entity/Offer_entity/entityfields/contact_id/valueProcess.js index c50907d05b5..c0b04b66955 100644 --- a/entity/Offer_entity/entityfields/contact_id/valueProcess.js +++ b/entity/Offer_entity/entityfields/contact_id/valueProcess.js @@ -6,27 +6,31 @@ import("Sql_lib"); import("Context_lib"); if (vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW && vars.get("$this.value") == null) -var contactId = ""; -if ((!vars.exists("$param.ContactId_param") || !vars.get("$param.ContactId_param")) - && (vars.exists("$param.ObjectType_param") - && vars.get("$param.ObjectType_param") - && vars.exists("$param.ObjectRowId_param") - && vars.get("$param.ObjectRowId_param"))) { - contactId = ContextUtils.getContactId(vars.get("$param.ObjectType_param"), vars.get("$param.ObjectRowId_param")) -} else if (vars.exists("$param.ContactId_param") && vars.get("$param.ContactId_param")) { - contactId = vars.get("$param.ContactId_param"); -} - -if (contactId) -{ - var lang = newSelect("ISOLANGUAGE") - .from("CONTACT") - .where("CONTACT.CONTACTID", contactId) - .cell(); - - if(lang != "") - neon.setFieldValue("field.ISOLANGUAGE", lang); + var contactId = ""; + if ((!vars.exists("$param.ContactId_param") || !vars.get("$param.ContactId_param")) + && (vars.exists("$param.ObjectType_param") + && vars.get("$param.ObjectType_param") + && vars.exists("$param.ObjectRowId_param") + && vars.get("$param.ObjectRowId_param"))) + { + contactId = ContextUtils.getContactId(vars.get("$param.ObjectType_param"), vars.get("$param.ObjectRowId_param")); + } + else if (vars.exists("$param.ContactId_param") && vars.get("$param.ContactId_param")) + { + contactId = vars.get("$param.ContactId_param"); + } - result.string(contactId); -} \ No newline at end of file + if (contactId) + { + var lang = newSelect("ISOLANGUAGE") + .from("CONTACT") + .where("CONTACT.CONTACTID", contactId) + .cell(); + + if(lang != "") + neon.setFieldValue("field.ISOLANGUAGE", lang); + + result.string(contactId); + } +} -- GitLab