diff --git a/entity/Organisation_entity/recordcontainers/index/affectedConsumerIds.js b/entity/Organisation_entity/recordcontainers/index/affectedConsumerIds.js index 7919d22f394b5bc96cda226f0c2b309c9d4e8296..acbf20ae471e85d51289cc57ae745063d33664dc 100644 --- a/entity/Organisation_entity/recordcontainers/index/affectedConsumerIds.js +++ b/entity/Organisation_entity/recordcontainers/index/affectedConsumerIds.js @@ -1,60 +1,59 @@ -import("system.datetime"); -import("system.result"); -import("system.vars"); -import("system.entities"); -import("system.db"); -import("system.logging"); -import("system.util"); -import("Util_lib"); - -var res = []; - -var currId = null; -var alias = vars.get("$local.indexgroupAlias"); -if(vars.exists("$local.idvalue")) -{ - - currId = vars.get("$local.idvalue"); - - addAddressIds(res, currId); - addCommunicationIds(res, currId); - -} - -result.object(res); - -function addIds(pRes, pConsumerName, pIds) -{ - var elem = []; - elem[0]=pConsumerName; - - if(pIds == undefined || pIds == null || pIds.length <= 0) { - elem[1] = ""; - } - else { - elem[1] = StringUtils.concat(",", pIds); - } - - logging.log(elem); - pRes.push(elem); -} - -function addAddressIds(pRes, pCurrId) -{ - var sql, ids; - sql = "select ADDRESS.ADDRESSID from ADDRESS left join CONTACT on CONTACT.CONTACTID = ADDRESS.CONTACT_ID where CONTACT.ORGANISATION_ID = '" + pCurrId + "'"; - ids = db.array(db.COLUMN, sql, alias, 0 , 1 * datetime.ONE_MINUTE); - - logging.log("Addresses: " + ids); - addIds(pRes, "Addresses", ids); -} - -function addCommunicationIds(pRes, pCurrId) -{ - var sql, ids; - sql = "select COMMUNICATION.COMMUNICATIONID from COMMUNICATION left join CONTACT on CONTACT.CONTACTID = COMMUNICATION.CONTACT_ID where CONTACT.ORGANISATION_ID = '" + pCurrId + "'"; - ids = db.array(db.COLUMN, sql, alias, 0 , 1 * datetime.ONE_MINUTE); - - logging.log("Communications: " + ids); - addIds(pRes, "Communications", ids); -} +import("system.datetime"); +import("system.result"); +import("system.vars"); +import("system.entities"); +import("system.db"); +import("system.logging"); +import("system.util"); +import("Util_lib"); + +var res = []; + +var currId = null; +var alias = vars.get("$local.indexgroupAlias"); +if(vars.exists("$local.idvalue")) +{ + + currId = vars.get("$local.idvalue"); + + addAddressIds(res, currId); + addCommunicationIds(res, currId); + +} + +result.object(res); + +function addIds(pRes, pConsumerName, pIds) +{ + var elem = []; + elem[0]=pConsumerName; + + if(pIds == undefined || pIds == null || pIds.length <= 0) { + elem[1] = ""; + } + else { + elem[1] = StringUtils.concat(",", pIds); + } + + pRes.push(elem); +} + +function addAddressIds(pRes, pCurrId) +{ + var sql, ids; + sql = "select ADDRESS.ADDRESSID from ADDRESS left join CONTACT on CONTACT.CONTACTID = ADDRESS.CONTACT_ID where CONTACT.ORGANISATION_ID = '" + pCurrId + "'"; + ids = db.array(db.COLUMN, sql, alias, 0 , 1 * datetime.ONE_MINUTE); + + logging.log("Addresses: " + ids); + addIds(pRes, "Addresses", ids); +} + +function addCommunicationIds(pRes, pCurrId) +{ + var sql, ids; + sql = "select COMMUNICATION.COMMUNICATIONID from COMMUNICATION left join CONTACT on CONTACT.CONTACTID = COMMUNICATION.CONTACT_ID where CONTACT.ORGANISATION_ID = '" + pCurrId + "'"; + ids = db.array(db.COLUMN, sql, alias, 0 , 1 * datetime.ONE_MINUTE); + + logging.log("Communications: " + ids); + addIds(pRes, "Communications", ids); +} diff --git a/entity/Organisation_entity/recordcontainers/index/affectedIds.js b/entity/Organisation_entity/recordcontainers/index/affectedIds.js index a218f2371431421b67c3978abc8c3f31ae34602f..7d50c9deb4813ce649ff34eb5c38d65d0d996280 100644 --- a/entity/Organisation_entity/recordcontainers/index/affectedIds.js +++ b/entity/Organisation_entity/recordcontainers/index/affectedIds.js @@ -1,66 +1,42 @@ -import("system.db"); -import("system.result"); -import("system.vars"); -import("IndexSearch_lib"); -import("Sql_lib"); - -var infoContainer, onUpdFn, tableName, res; - -tableName = vars.get("$local.table"); -idValue = vars.get("$local.idvalue"); -infoContainer = IndexsearchUtils.createAffectedInfoContainer(idValue, null, vars.get("$local.action") - ,function (){return vars.get("$local.columns")} - ,function (){return vars.get("$local.oldvalues")} - ,function (){return vars.get("$local.values")}); - -switch (tableName) -{ - case "CONTACT": - res = [idValue]; - break; - case "ORGANISATION": - res = db.array(db.COLUMN, "select CONTACT.CONTACTID from CONTACT where CONTACT.PERSON_ID is null and CONTACT.ORGANISATION_ID = '" + idValue + "'"); - break; - case "ADDRESS": - res = IndexsearchUtils.getAffectedIdValues("CONTACT_ID", infoContainer, function (id){ - return db.array(db.COLUMN, ["select ADDRESS.CONTACT_ID from ADDRESS where ADDRESS.ADDRESSID = ?", [ - [id, SqlUtils.getSingleColumnType("ADDRESS", "ADDRESSID")] - ]]); - }); - break; - case "COMMUNICATION": - res = IndexsearchUtils.getAffectedIdValues("CONTACT_ID", infoContainer, function (id){ - return db.array(db.COLUMN, ["select COMMUNICATION.CONTACT_ID from COMMUNICATION where COMMUNICATIONID = ?", [ - [id, SqlUtils.getSingleColumnType("COMMUNICATION", "COMMUNICATIONID")] - ]]); - }); - break; -} - -switch (tableName) -{ - case "ORGANISATION": - res = [idValue]; - break; - case "CONTACT": - res = db.array(db.COLUMN, "select CONTACT.ORGANISATION_ID from CONTACT where CONTACT.PERSON_ID is null and CONTACT.CONTACTID = '" + idValue + "'"); - break; - case "ADDRESS": - res = IndexsearchUtils.getAffectedIdValues("CONTACT_ID", infoContainer, function (id){ - return db.array(db.COLUMN, ["select CONTACT.ORGANISATION_ID from ADDRESS left join CONTACT on CONTACT.CONTACTID = ADDRESS.CONTACT_ID where CONTACT.PERSON_ID is null and ADDRESS.ADDRESSID = ?", [ - [id, SqlUtils.getSingleColumnType("ADDRESS", "ADDRESSID")] - ]]); - }); - break; - case "COMMUNICATION": - res = IndexsearchUtils.getAffectedIdValues("CONTACT_ID", infoContainer, function (id){ - return db.array(db.COLUMN, ["select CONTACT.ORGANISATION_ID from COMMUNICATION left join CONTACT on CONTACT.CONTACTID = COMMUNICATION.CONTACT_ID where CONTACT.PERSON_ID is null and where COMMUNICATIONID = ?", [ - [id, SqlUtils.getSingleColumnType("COMMUNICATION", "COMMUNICATIONID")] - ]]); - }); - break; -} - -if (res) { - result.object(res); -} \ No newline at end of file +import("system.db"); +import("system.result"); +import("system.vars"); +import("IndexSearch_lib"); +import("Sql_lib"); + +var infoContainer, onUpdFn, tableName, res; + +tableName = vars.get("$local.table"); +idValue = vars.get("$local.idvalue"); +infoContainer = IndexsearchUtils.createAffectedInfoContainer(idValue, null, vars.get("$local.action") + ,function (){return vars.get("$local.columns")} + ,function (){return vars.get("$local.oldvalues")} + ,function (){return vars.get("$local.values")}); + +switch (tableName) +{ + case "ORGANISATION": + res = [idValue]; + break; + case "CONTACT": + res = db.array(db.COLUMN, "select CONTACT.ORGANISATION_ID from CONTACT where CONTACT.PERSON_ID is null and CONTACT.CONTACTID = '" + idValue + "'"); + break; + case "ADDRESS": + res = IndexsearchUtils.getAffectedIdValues("ORGANISATION_ID", infoContainer, function (id){ + return db.array(db.COLUMN, ["select CONTACT.ORGANISATION_ID from ADDRESS left join CONTACT on CONTACT.CONTACTID = ADDRESS.CONTACT_ID where CONTACT.PERSON_ID is null and ADDRESS.ADDRESSID = ?", [ + [id, SqlUtils.getSingleColumnType("ADDRESS", "ADDRESSID")] + ]]); + }); + break; + case "COMMUNICATION": + res = IndexsearchUtils.getAffectedIdValues("ORGANISATION_ID", infoContainer, function (id){ + return db.array(db.COLUMN, ["select CONTACT.ORGANISATION_ID from COMMUNICATION left join CONTACT on CONTACT.CONTACTID = COMMUNICATION.CONTACT_ID where CONTACT.PERSON_ID is null and where COMMUNICATIONID = ?", [ + [id, SqlUtils.getSingleColumnType("COMMUNICATION", "COMMUNICATIONID")] + ]]); + }); + break; +} + +if (res) { + result.object(res); +} diff --git a/entity/Organisation_entity/recordcontainers/index/query.js b/entity/Organisation_entity/recordcontainers/index/query.js index 6783a174f26e596a35e84aa57fc2b4501b2a499f..68a86d5b62dff07b04696c412c3d273ca412ec76 100644 --- a/entity/Organisation_entity/recordcontainers/index/query.js +++ b/entity/Organisation_entity/recordcontainers/index/query.js @@ -1,38 +1,38 @@ -import("system.translate"); -import("system.result"); -import("system.vars"); -import("system.calendars"); -import("system.db"); -import("Sql_lib"); -import("Communication_lib"); - -var sqlQuery, sqlHelper, queryCondition, affectedIds; -if (vars.exists("$local.idvalue")) { - affectedIds = vars.get("$local.idvalue"); - queryCondition = "where CONTACT.CONTACTID in ('" + affectedIds.map(function (v){return db.quote(v);}).join("', '") + "')"; - //TODO: refactor this for incremental indexer (injections?) -} -sqlHelper = new SqlMaskingUtils(); -sqlQuery = "select ORGANISATION.ORGANISATIONID as uid" - + ", " + sqlHelper.concat(["ORGANISATION.NAME", "'|'", "ORGANISATION.CUSTOMERCODE"]) - + " as title " - + ", " + sqlHelper.concat([ - sqlHelper.concat(["defaultAddress.ADDRESS", "defaultAddress.BUILDINGNO", "'-'" - ,"defaultAddress.COUNTRY", "defaultAddress.ZIP", "defaultAddress.CITY"]) - ,sqlHelper.concat(["'" + translate.text("Phone") + ":'", "(" + CommUtil.getStandardSubSqlPhone() + ")"]) - ,sqlHelper.concat(["'" + translate.text("Email") + ":'", "(" + CommUtil.getStandardSubSqlMail() + ")"]) - ], " | ") + " as description " - //additional indexed fields - + ", ORGANISATION.ORGANISATIONID" - + ", ORGANISATION.NAME" - + ", ORGANISATION.CUSTOMERCODE" - + ", CONTACT.CONTACTID" - + ", (" + CommUtil.getStandardSubSqlPhone() + ') as "STANDARD_PHONE_COMMUNICATION.value"' - + ", (" + CommUtil.getStandardSubSqlMail() + ') as "STANDARD_EMAIL_COMMUNICATION.value"' - + " from ORGANISATION " - + " join CONTACT on CONTACT.ORGANISATION_ID = ORGANISATION.ORGANISATIONID and CONTACT.PERSON_ID is null " - + " left join ADDRESS defaultAddress on defaultAddress.ADDRESSID = CONTACT.ADDRESS_ID " - + " left join COMMUNICATION on COMMUNICATION.CONTACT_ID = CONTACT.CONTACTID " - + (queryCondition || "") - + " order by CONTACT.CONTACTID "; -result.string(sqlQuery); \ No newline at end of file +import("system.translate"); +import("system.result"); +import("system.vars"); +import("system.calendars"); +import("system.db"); +import("Sql_lib"); +import("Communication_lib"); + +var sqlQuery, sqlHelper, queryCondition, affectedIds; +if (vars.exists("$local.idvalue")) { + affectedIds = vars.get("$local.idvalue"); + queryCondition = "where CONTACT.CONTACTID in ('" + affectedIds.map(function (v){return db.quote(v);}).join("', '") + "')"; + //TODO: refactor this for incremental indexer (injections?) +} +sqlHelper = new SqlMaskingUtils(); +sqlQuery = "select ORGANISATION.ORGANISATIONID as uid" + + ", " + sqlHelper.concat(["ORGANISATION.NAME", "'|'", "ORGANISATION.CUSTOMERCODE"]) + + " as title " + + ", " + sqlHelper.concat([ + sqlHelper.concat(["defaultAddress.ADDRESS", "defaultAddress.BUILDINGNO", "'-'" + ,"defaultAddress.COUNTRY", "defaultAddress.ZIP", "defaultAddress.CITY"]) + ,sqlHelper.concat(["'" + translate.text("Phone") + ":'", "(" + CommUtil.getStandardSubSqlPhone() + ")"]) + ,sqlHelper.concat(["'" + translate.text("Email") + ":'", "(" + CommUtil.getStandardSubSqlMail() + ")"]) + ], " | ") + " as description " + //additional indexed fields + + ", ORGANISATION.ORGANISATIONID" + + ", ORGANISATION.NAME" + + ", ORGANISATION.CUSTOMERCODE" + + ", CONTACT.CONTACTID" + + ", (" + CommUtil.getStandardSubSqlPhone() + ') as "STANDARD_PHONE_COMMUNICATION.value"' + + ", (" + CommUtil.getStandardSubSqlMail() + ') as "STANDARD_EMAIL_COMMUNICATION.value"' + + " from ORGANISATION " + + " join CONTACT on CONTACT.ORGANISATION_ID = ORGANISATION.ORGANISATIONID and CONTACT.PERSON_ID is null " + + " left join ADDRESS defaultAddress on defaultAddress.ADDRESSID = CONTACT.ADDRESS_ID " + + " left join COMMUNICATION on COMMUNICATION.CONTACT_ID = CONTACT.CONTACTID " + + (queryCondition || "") + + " order by CONTACT.CONTACTID "; +result.string(sqlQuery); diff --git a/entity/Person_entity/recordcontainers/index/affectedConsumerIds.js b/entity/Person_entity/recordcontainers/index/affectedConsumerIds.js index 0c9ac195cdd862ef4739db4c045114bcba2139b0..f74a0d5f51441dec98eb092553790d2c3009074d 100644 --- a/entity/Person_entity/recordcontainers/index/affectedConsumerIds.js +++ b/entity/Person_entity/recordcontainers/index/affectedConsumerIds.js @@ -1,70 +1,69 @@ -import("system.datetime"); -import("system.result"); -import("system.vars"); -import("system.entities"); -import("system.db"); -import("system.logging"); -import("system.util"); -import("Util_lib"); - -var res = []; - -var currId = null; -var alias = vars.get("$local.indexgroupAlias"); -if(vars.exists("$local.idvalue")) -{ - - currId = vars.get("$local.idvalue"); - - addPersAddressIds(res, currId); - addOrgAddressIds(res, currId); - addCommunicationIds(res, currId); - -} - -result.object(res); - -function addIds(pRes, pConsumerName, pIds) -{ - var elem = []; - elem[0]=pConsumerName; - - if(pIds == undefined || pIds == null || pIds.length <= 0) { - elem[1] = ""; - } - else { - elem[1] = StringUtils.concat(",", pIds); - } - - logging.log(elem); - pRes.push(elem); -} - -function addPersAddressIds(pRes, pCurrId) -{ - var sql, ids; - sql = "select ADDRESS.ADDRESSID from ADDRESS left join CONTACT on CONTACT.CONTACTID = ADDRESS.CONTACT_ID where CONTACT.PERSON_ID = '" + pCurrId + "'"; - ids = db.array(db.COLUMN, sql, alias, 0 , 1 * datetime.ONE_MINUTE); - addIds(pRes, "PersAddresses", ids); -} - -function addOrgAddressIds(pRes, pCurrId) -{ - var sql, ids; - sql = "select CONTACT.ADDRESS_ID from ORGANISATION " - + "join CONTACT on CONTACT.ORGANISATION_ID = ORGANISATION.ORGANISATIONID and CONTACT.PERSON_ID is null " - + "where ORGANISATION.ORGANISATIONID = ( " - + "select c.ORGANISATION_ID FROM CONTACT as c where c.PERSON_ID = '" + pCurrId - + "')"; - - ids = db.array(db.COLUMN, sql, alias, 0 , 1 * datetime.ONE_MINUTE); - addIds(pRes, "OrgAddresses", ids); -} - -function addCommunicationIds(pRes, pCurrId) -{ - var sql, ids; - sql = "select COMMUNICATION.COMMUNICATIONID from COMMUNICATION left join CONTACT on CONTACT.CONTACTID = COMMUNICATION.CONTACT_ID where CONTACT.PERSON_ID = '" + pCurrId + "'"; - ids = db.array(db.COLUMN, sql, alias, 0 , 1 * datetime.ONE_MINUTE); - addIds(pRes, "Communications", ids); -} +import("system.datetime"); +import("system.result"); +import("system.vars"); +import("system.entities"); +import("system.db"); +import("system.logging"); +import("system.util"); +import("Util_lib"); + +var res = []; + +var currId = null; +var alias = vars.get("$local.indexgroupAlias"); +if(vars.exists("$local.idvalue")) +{ + + currId = vars.get("$local.idvalue"); + + addPersAddressIds(res, currId); + addOrgAddressIds(res, currId); + addCommunicationIds(res, currId); + +} + +result.object(res); + +function addIds(pRes, pConsumerName, pIds) +{ + var elem = []; + elem[0]=pConsumerName; + + if(pIds == undefined || pIds == null || pIds.length <= 0) { + elem[1] = ""; + } + else { + elem[1] = StringUtils.concat(",", pIds); + } + + pRes.push(elem); +} + +function addPersAddressIds(pRes, pCurrId) +{ + var sql, ids; + sql = "select ADDRESS.ADDRESSID from ADDRESS left join CONTACT on CONTACT.CONTACTID = ADDRESS.CONTACT_ID where CONTACT.PERSON_ID = '" + pCurrId + "'"; + ids = db.array(db.COLUMN, sql, alias, 0 , 1 * datetime.ONE_MINUTE); + addIds(pRes, "PersAddresses", ids); +} + +function addOrgAddressIds(pRes, pCurrId) +{ + var sql, ids; + sql = "select CONTACT.ADDRESS_ID from ORGANISATION " + + "join CONTACT on CONTACT.ORGANISATION_ID = ORGANISATION.ORGANISATIONID and CONTACT.PERSON_ID is null " + + "where ORGANISATION.ORGANISATIONID = ( " + + "select c.ORGANISATION_ID FROM CONTACT as c where c.PERSON_ID = '" + pCurrId + + "')"; + + ids = db.array(db.COLUMN, sql, alias, 0 , 1 * datetime.ONE_MINUTE); + addIds(pRes, "OrgAddresses", ids); +} + +function addCommunicationIds(pRes, pCurrId) +{ + var sql, ids; + sql = "select COMMUNICATION.COMMUNICATIONID from COMMUNICATION left join CONTACT on CONTACT.CONTACTID = COMMUNICATION.CONTACT_ID where CONTACT.PERSON_ID = '" + pCurrId + "'"; + ids = db.array(db.COLUMN, sql, alias, 0 , 1 * datetime.ONE_MINUTE); + addIds(pRes, "Communications", ids); +} diff --git a/entity/Person_entity/recordcontainers/index/affectedIds.js b/entity/Person_entity/recordcontainers/index/affectedIds.js index e1040dbf0112d86358cb87e1a3ab7b40f8ec60f3..b4b39cb6399d759ad6576b68cc46e8fffdb78835 100644 --- a/entity/Person_entity/recordcontainers/index/affectedIds.js +++ b/entity/Person_entity/recordcontainers/index/affectedIds.js @@ -1,73 +1,46 @@ -import("system.db"); -import("system.result"); -import("system.vars"); -import("IndexSearch_lib"); -import("Sql_lib"); - -var infoContainer, onUpdFn, tableName, res; - -tableName = vars.get("$local.table"); -idValue = vars.get("$local.idvalue"); -infoContainer = IndexsearchUtils.createAffectedInfoContainer(idValue, null, vars.get("$local.action") - ,function (){return vars.get("$local.columns")} - ,function (){return vars.get("$local.oldvalues")} - ,function (){return vars.get("$local.values")}); - -//switch (tableName) -//{ -// case "CONTACT": -// res = [idValue]; -// break; -// case "PERSON": -// res = db.array(db.COLUMN, "select CONTACT.CONTACTID from CONTACT where CONTACT.PERSON_ID = '" + idValue + "'"); -// break; -// case "ORGANISATION": -// res = db.array(db.COLUMN, "select CONTACT.CONTACTID from CONTACT where CONTACT.PERSON_ID is not null and CONTACT.ORGANISATION_ID = '" + idValue + "'"); -// break; -// case "ADDRESS": -// res = IndexsearchUtils.getAffectedIdValues("CONTACT_ID", infoContainer, function (id){ -// return db.array(db.COLUMN, ["select ADDRESS.CONTACT_ID from ADDRESS where ADDRESS.ADDRESSID = ?", [ -// [id, SqlUtils.getSingleColumnType("ADDRESS", "ADDRESSID")] -// ]]); -// }); -// break; -// case "COMMUNICATION": -// res = IndexsearchUtils.getAffectedIdValues("CONTACT_ID", infoContainer, function (id){ -// return db.array(db.COLUMN, ["select COMMUNICATION.CONTACT_ID from COMMUNICATION where COMMUNICATIONID = ?", [ -// [id, SqlUtils.getSingleColumnType("COMMUNICATION", "COMMUNICATIONID")] -// ]]); -// }); -// break; -//} - -switch (tableName) -{ - case "PERSON": - res = [idValue]; - break; - case "CONTACT": - res = db.array(db.COLUMN, "select CONTACT.PERSON_ID from CONTACT where CONTACT.CONTACTID = '" + idValue + "'"); - break; - case "ORGANISATION": - res = db.array(db.COLUMN, "select CONTACT.PERSON_ID from CONTACT where CONTACT.PERSON_ID is not null and CONTACT.ORGANISATION_ID = '" + idValue + "'"); - break; - case "ADDRESS": - res = IndexsearchUtils.getAffectedIdValues("PERSON_ID", infoContainer, function (id){ - return db.array(db.COLUMN, ["select CONTACT.PERSON_ID from ADDRESS left join CONTACT on CONTACT.CONTACTID = ADDRESS.CONTACT_ID where CONTACT.PERSON_ID is not null and ADDRESS.ADDRESSID = ?", [ - [id, SqlUtils.getSingleColumnType("ADDRESS", "ADDRESSID")] - ]]); - }); - break; - case "COMMUNICATION": - res = IndexsearchUtils.getAffectedIdValues("PERSON_ID", infoContainer, function (id){ - return db.array(db.COLUMN, ["select CONTACT.PERSON_ID from COMMUNICATION left join CONTACT on CONTACT.CONTACTID = COMMUNICATION.CONTACT_ID where CONTACT.PERSON_ID is not null and where COMMUNICATIONID = ?", [ - [id, SqlUtils.getSingleColumnType("COMMUNICATION", "COMMUNICATIONID")] - ]]); - }); - break; -} - -if (res) { - result.object(res); -} +import("system.db"); +import("system.result"); +import("system.vars"); +import("IndexSearch_lib"); +import("Sql_lib"); + +var infoContainer, onUpdFn, tableName, res; + +tableName = vars.get("$local.table"); +idValue = vars.get("$local.idvalue"); +infoContainer = IndexsearchUtils.createAffectedInfoContainer(idValue, null, vars.get("$local.action") + ,function (){return vars.get("$local.columns")} + ,function (){return vars.get("$local.oldvalues")} + ,function (){return vars.get("$local.values")}); + +switch (tableName) +{ + case "PERSON": + res = [idValue]; + break; + case "CONTACT": + res = db.array(db.COLUMN, "select CONTACT.PERSON_ID from CONTACT where CONTACT.CONTACTID = '" + idValue + "'"); + break; + case "ORGANISATION": + res = db.array(db.COLUMN, "select CONTACT.PERSON_ID from CONTACT where CONTACT.PERSON_ID is not null and CONTACT.ORGANISATION_ID = '" + idValue + "'"); + break; + case "ADDRESS": + res = IndexsearchUtils.getAffectedIdValues("PERSON_ID", infoContainer, function (id){ + return db.array(db.COLUMN, ["select CONTACT.PERSON_ID from ADDRESS left join CONTACT on CONTACT.CONTACTID = ADDRESS.CONTACT_ID where CONTACT.PERSON_ID is not null and ADDRESS.ADDRESSID = ?", [ + [id, SqlUtils.getSingleColumnType("ADDRESS", "ADDRESSID")] + ]]); + }); + break; + case "COMMUNICATION": + res = IndexsearchUtils.getAffectedIdValues("PERSON_ID", infoContainer, function (id){ + return db.array(db.COLUMN, ["select CONTACT.PERSON_ID from COMMUNICATION left join CONTACT on CONTACT.CONTACTID = COMMUNICATION.CONTACT_ID where CONTACT.PERSON_ID is not null and where COMMUNICATIONID = ?", [ + [id, SqlUtils.getSingleColumnType("COMMUNICATION", "COMMUNICATIONID")] + ]]); + }); + break; +} + +if (res) { + result.object(res); +} \ No newline at end of file