diff --git a/entity/Campaign_entity/recordcontainers/db/conditionProcess.js b/entity/Campaign_entity/recordcontainers/db/conditionProcess.js index b56a17e4e112b773aa2b1f6f5339c986b5d205bf..ea77837ea6f8defb3e4e66200740f5b8614adae5 100644 --- a/entity/Campaign_entity/recordcontainers/db/conditionProcess.js +++ b/entity/Campaign_entity/recordcontainers/db/conditionProcess.js @@ -7,19 +7,11 @@ import("Sql_lib"); var recordState = vars.get("$sys.recordstate"); +var condition = newWhere(); if(vars.get("$param.ShowOnlyCurrentUsersCampaigns_param") == 'true') { - //TODO: use a preparedCondition (.build instead of .translate) when available #1030812 #1034026 - result.string(newWhere("CAMPAIGN.EMPLOYEE_CONTACT_ID", EmployeeUtils.getCurrentContactId()).toString()); -} else if (recordState != neon.OPERATINGSTATE_NEW && recordState != neon.OPERATINGSTATE_EDIT) { - var condition = new SqlBuilder() - .whereIfSet("STEPDATESTART_TABLEALIAS.CAMPAIGN_ID = CAMPAIGN.CAMPAIGNID") - .andIfSet("STEPDATEEND_TABLEALIAS.CAMPAIGN_ID = CAMPAIGN.CAMPAIGNID") - ; + condition.and("CAMPAIGN.EMPLOYEE_CONTACT_ID", EmployeeUtils.getCurrentContactId()); +} - result.string(condition.toString()); -} else { - - result.string(newWhere().toString()); -} \ No newline at end of file +result.string(condition.toString()); \ No newline at end of file diff --git a/entity/Campaign_entity/recordcontainers/db/fromClauseProcess.js b/entity/Campaign_entity/recordcontainers/db/fromClauseProcess.js index 5eec4c678e0303f56f160d22534f7c2fbe2bd302..a24f9dfb3c061c98740aa21511a92ad321c81e7e 100644 --- a/entity/Campaign_entity/recordcontainers/db/fromClauseProcess.js +++ b/entity/Campaign_entity/recordcontainers/db/fromClauseProcess.js @@ -7,10 +7,11 @@ var recordState = vars.get("$sys.recordstate"); var res = "CAMPAIGN"; if (recordState != neon.OPERATINGSTATE_NEW && recordState != neon.OPERATINGSTATE_EDIT) { - var subSelectDateStart = "(select min(DATE_START) as STEPDATESTART_ALIAS, CAMPAIGN_ID from CAMPAIGNSTEP group by CAMPAIGN_ID) as STEPDATESTART_TABLEALIAS"; - var subSelectDateEnd = "(select max(DATE_END) as STEPDATEEND_ALIAS, CAMPAIGN_ID from CAMPAIGNSTEP group by CAMPAIGN_ID) as STEPDATEEND_TABLEALIAS"; - - res += ", " + subSelectDateStart + ", " + subSelectDateEnd; + res += " join (select min(DATE_START) as STEPDATESTART_ALIAS, CAMPAIGN_ID from CAMPAIGNSTEP group by CAMPAIGN_ID) as STEPDATESTART_TABLEALIAS" + + " on STEPDATESTART_TABLEALIAS.CAMPAIGN_ID = CAMPAIGN.CAMPAIGNID " + + " join (select max(DATE_END) as STEPDATEEND_ALIAS, CAMPAIGN_ID from CAMPAIGNSTEP group by CAMPAIGN_ID) as STEPDATEEND_TABLEALIAS" + + " on STEPDATEEND_TABLEALIAS.CAMPAIGN_ID = CAMPAIGN.CAMPAIGNID "; + } result.string(res);