From df898d6ffcb4aeecf9e65136b09af11aba9d08ac Mon Sep 17 00:00:00 2001 From: "d.buechler" <d.buechler@adito.de> Date: Tue, 30 Apr 2019 08:48:18 +0200 Subject: [PATCH] Fixed bug where campaign lookup was readonly when adding participant via person preview The current step gets pre filled if a participant is added on campaignstep level --- .../CampaignParticipant_entity.aod | 1 - .../entityfields/campaign_id/stateProcess.js | 3 +-- .../entityfields/campaign_id/valueProcess.js | 5 +++++ .../entityfields/campaignstep_id/displayValueProcess.js | 6 +++--- .../entityfields/campaignstep_id/onValueChange.js | 3 --- entity/Campaign_entity/recordcontainers/db/onDBDelete.js | 2 +- 6 files changed, 10 insertions(+), 10 deletions(-) delete mode 100644 entity/CampaignParticipant_entity/entityfields/campaignstep_id/onValueChange.js diff --git a/entity/CampaignParticipant_entity/CampaignParticipant_entity.aod b/entity/CampaignParticipant_entity/CampaignParticipant_entity.aod index 6615e8ac0e..d5f23cd0e3 100644 --- a/entity/CampaignParticipant_entity/CampaignParticipant_entity.aod +++ b/entity/CampaignParticipant_entity/CampaignParticipant_entity.aod @@ -83,7 +83,6 @@ <mandatory v="true" /> <state>EDITABLE</state> <displayValueProcess>%aditoprj%/entity/CampaignParticipant_entity/entityfields/campaignstep_id/displayValueProcess.js</displayValueProcess> - <onValueChange>%aditoprj%/entity/CampaignParticipant_entity/entityfields/campaignstep_id/onValueChange.js</onValueChange> <onValueChangeTypes> <element>MASK</element> <element>PROCESS</element> diff --git a/entity/CampaignParticipant_entity/entityfields/campaign_id/stateProcess.js b/entity/CampaignParticipant_entity/entityfields/campaign_id/stateProcess.js index 08bb8ede9a..b9a78038b4 100644 --- a/entity/CampaignParticipant_entity/entityfields/campaign_id/stateProcess.js +++ b/entity/CampaignParticipant_entity/entityfields/campaign_id/stateProcess.js @@ -1,9 +1,8 @@ import("system.neon"); import("system.result"); import("system.vars"); -import("system.logging"); -if(vars.exists("$param.CampaignId_param") && vars.get("$param.CampaignId_param") != "") +if(vars.exists("$param.CampaignId_param") && vars.get("$param.CampaignId_param") != null) result.string(neon.COMPONENTSTATE_READONLY); else result.string(neon.COMPONENTSTATE_EDITABLE); \ No newline at end of file diff --git a/entity/CampaignParticipant_entity/entityfields/campaign_id/valueProcess.js b/entity/CampaignParticipant_entity/entityfields/campaign_id/valueProcess.js index 619a4eb387..786b8bb1a5 100644 --- a/entity/CampaignParticipant_entity/entityfields/campaign_id/valueProcess.js +++ b/entity/CampaignParticipant_entity/entityfields/campaign_id/valueProcess.js @@ -5,5 +5,10 @@ import("system.vars"); if(vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW && vars.exists("$param.CampaignId_param") && vars.get("$param.CampaignId_param")) { + //todo + //Has to be set here because of a bug which prevents loading of the param in the value process + if(vars.exists("$param.CampaignStepId_param") && vars.get("$param.CampaignStepId_param")) + neon.setFieldValue("$field.CAMPAIGNSTEP_ID", vars.get("$param.CampaignStepId_param")); + result.string(vars.get("$param.CampaignId_param")); } \ No newline at end of file diff --git a/entity/CampaignParticipant_entity/entityfields/campaignstep_id/displayValueProcess.js b/entity/CampaignParticipant_entity/entityfields/campaignstep_id/displayValueProcess.js index e99107695e..6a379f5fd6 100644 --- a/entity/CampaignParticipant_entity/entityfields/campaignstep_id/displayValueProcess.js +++ b/entity/CampaignParticipant_entity/entityfields/campaignstep_id/displayValueProcess.js @@ -1,7 +1,7 @@ -import("system.logging"); +import("Campaign_lib"); import("system.vars"); import("system.db"); import("system.result"); -logging.log("campaignstep_idim displayvalue -> " + vars.get("$field.CAMPAIGNSTEP_ID")); -result.string(db.cell("select NAME from CAMPAIGNSTEP where CAMPAIGNSTEPID = '" + vars.get("$field.CAMPAIGNSTEP_ID") + "'")); \ No newline at end of file + +result.string(CampaignUtils.getCampaignStepNameById(vars.get("$field.CAMPAIGNSTEP_ID"))); \ No newline at end of file diff --git a/entity/CampaignParticipant_entity/entityfields/campaignstep_id/onValueChange.js b/entity/CampaignParticipant_entity/entityfields/campaignstep_id/onValueChange.js deleted file mode 100644 index 786b3ee87f..0000000000 --- a/entity/CampaignParticipant_entity/entityfields/campaignstep_id/onValueChange.js +++ /dev/null @@ -1,3 +0,0 @@ -import("system.vars"); -import("system.logging"); -logging.log("campaignstep_id im onValueChange -> " + vars.get("$field.CAMPAIGNSTEP_ID")); \ No newline at end of file diff --git a/entity/Campaign_entity/recordcontainers/db/onDBDelete.js b/entity/Campaign_entity/recordcontainers/db/onDBDelete.js index fe6d290a0d..af050049af 100644 --- a/entity/Campaign_entity/recordcontainers/db/onDBDelete.js +++ b/entity/Campaign_entity/recordcontainers/db/onDBDelete.js @@ -2,7 +2,7 @@ import("system.db"); import("system.vars"); import("Sql_lib"); -var currentId = vars.getString("$field.SALESPROJECTID"); +var currentId = vars.getString("$field.CAMPAIGNID"); if (currentId) { -- GitLab