diff --git a/entity/DistrictContact_entity/DistrictContact_entity.aod b/entity/DistrictContact_entity/DistrictContact_entity.aod index 12fe5d39edc04596007be9aa4cfb4c264276dd0d..817d6c9f722094d2b929e66feb61c55f299d66c4 100644 --- a/entity/DistrictContact_entity/DistrictContact_entity.aod +++ b/entity/DistrictContact_entity/DistrictContact_entity.aod @@ -221,6 +221,7 @@ <dbRecordContainer> <name>db</name> <alias>Data_alias</alias> + <isPageable v="true" /> <isRequireContainerFiltering v="false" /> <hasDependentRecords v="true" /> <fromClauseProcess>%aditoprj%/entity/DistrictContact_entity/recordcontainers/db/fromClauseProcess.js</fromClauseProcess> diff --git a/entity/DistrictContact_entity/entityfields/keywordcontactstates/children/excludedkeyidssubquery_param/valueProcess.js b/entity/DistrictContact_entity/entityfields/keywordcontactstates/children/excludedkeyidssubquery_param/valueProcess.js index 15b73f9705dc456af35c5d5e144cf88c436a79eb..f1da1bf38607292fdc74ba2e1247fafa1a6f99c2 100644 --- a/entity/DistrictContact_entity/entityfields/keywordcontactstates/children/excludedkeyidssubquery_param/valueProcess.js +++ b/entity/DistrictContact_entity/entityfields/keywordcontactstates/children/excludedkeyidssubquery_param/valueProcess.js @@ -1,10 +1,14 @@ +import("system.vars"); import("system.result"); +import("system.neon"); import("KeywordRegistry_basic"); import("Sql_lib"); -var cond = newSelect("AB_KEYWORD_ENTRY.KEYID") -.from("AB_KEYWORD_ENTRY") -.where("AB_KEYWORD_ENTRY.CONTAINER", $KeywordRegistry.contactStatus()) -.and("AB_KEYWORD_ENTRY.KEYID", $KeywordRegistry.contactStatus$inReview(), SqlBuilder.LIKE()); +if(vars.get("$sys.presentationmode") != neon.CONTEXT_PRESENTATIONMODE_FILTER){ + var cond = newSelect("AB_KEYWORD_ENTRY.KEYID") + .from("AB_KEYWORD_ENTRY") + .where("AB_KEYWORD_ENTRY.CONTAINER", $KeywordRegistry.contactStatus()) + .and("AB_KEYWORD_ENTRY.KEYID", $KeywordRegistry.contactStatus$inReview(), SqlBuilder.LIKE()); -result.string(cond.toString()); \ No newline at end of file + result.string(cond.toString()); +} \ No newline at end of file diff --git a/entity/DistrictContact_entity/entityfields/setstatus/children/setactive/onActionProcess.js b/entity/DistrictContact_entity/entityfields/setstatus/children/setactive/onActionProcess.js index fe3a3b291449212b033f1e9676ad64f9977497e4..7672acc826e049b150a473086bdcf96c5737370d 100644 --- a/entity/DistrictContact_entity/entityfields/setstatus/children/setactive/onActionProcess.js +++ b/entity/DistrictContact_entity/entityfields/setstatus/children/setactive/onActionProcess.js @@ -1,8 +1,12 @@ +import("system.util"); import("KeywordRegistry_basic"); import("system.vars"); import("system.neon"); import("District_lib"); + var arrIds = vars.get("$sys.selection"); DistrictUtils.setDistrictContactStatus(arrIds, $KeywordRegistry.contactStatus$active()); -neon.openHome(); \ No newline at end of file +//refresh only if the function is called twice +neon.refreshAll(); +neon.refreshAll(); \ No newline at end of file diff --git a/entity/DistrictContact_entity/entityfields/setstatus/children/setinactive/onActionProcess.js b/entity/DistrictContact_entity/entityfields/setstatus/children/setinactive/onActionProcess.js index 6ea33256099f1ea89c827744bf95ad29ce5c650c..433ee2f6b56fafd345e7e6ea0e99445d41d7ee92 100644 --- a/entity/DistrictContact_entity/entityfields/setstatus/children/setinactive/onActionProcess.js +++ b/entity/DistrictContact_entity/entityfields/setstatus/children/setinactive/onActionProcess.js @@ -5,4 +5,6 @@ import("District_lib"); var arrIds = vars.get("$sys.selection"); DistrictUtils.setDistrictContactStatus(arrIds, $KeywordRegistry.contactStatus$inactive()); -neon.openHome(); +//refresh only if the function is called twice +neon.refreshAll(); +neon.refreshAll(); \ No newline at end of file diff --git a/entity/DistrictContact_entity/recordcontainers/db/conditionProcess.js b/entity/DistrictContact_entity/recordcontainers/db/conditionProcess.js index 6cb4972435d40a84e4567d31f46c37748a7405e3..b8195ebfa8f2f08258f2c8dc98449b6ec7cc292c 100644 --- a/entity/DistrictContact_entity/recordcontainers/db/conditionProcess.js +++ b/entity/DistrictContact_entity/recordcontainers/db/conditionProcess.js @@ -7,24 +7,26 @@ import("Sql_lib"); var isDashletView = vars.get("$param.isDashletView_param"); var organisationID = vars.get("$param.currentOrganisationId_param"); +var districtID = vars.get("$param.DistrictId_param"); var cond = newWhere(); if (vars.exists("$param.RowId_param") && vars.get("$param.RowId_param") && vars.exists("$param.ObjectId_param") && vars.get("$param.ObjectId_param")) { cond.and("DISTRICTCONTACT.ADVISER_CONTACT_ID", newSelect("DISTRICTRESPONSIBLE.EMPLOYEE_CONTACT_ID") - .from("DISTRICTRESPONSIBLE") - .where("DISTRICTRESPONSIBLE.DISTRICTRESPONSIBLEID", "$param.RowId_param") - , SqlBuilder.IN()); + .from("DISTRICTRESPONSIBLE") + .where("DISTRICTRESPONSIBLE.DISTRICTRESPONSIBLEID", "$param.RowId_param") + , SqlBuilder.IN()); } if (organisationID) { cond.and("DISTRICTCONTACT.CONTACT_ID", organisationID); } +var statusInReview = $KeywordRegistry.contactStatus$inReview(); +var districtOrigin = $KeywordRegistry.districtOrigin$auto(); + if(isDashletView) { - var statusInReview = $KeywordRegistry.contactStatus$inReview(); - var districtOrigin = $KeywordRegistry.districtOrigin$auto(); var currentContactId = EmployeeUtils.getCurrentContactId(); cond.and("DISTRICTCONTACT.STATUS", statusInReview); @@ -32,4 +34,8 @@ if(isDashletView) cond.and("DISTRICTCONTACT.ADVISER_CONTACT_ID", currentContactId); } +if(districtID){ + cond.and("DISTRICTCONTACT.DISTRICT_ID", districtID); +} + result.string(cond.toString()); \ No newline at end of file diff --git a/entity/District_entity/District_entity.aod b/entity/District_entity/District_entity.aod index c15588d76c0f7f0f5d1b05917ba42e7540a43a98..a1a87636487b90e137336f59ef630c1a8f709b53 100644 --- a/entity/District_entity/District_entity.aod +++ b/entity/District_entity/District_entity.aod @@ -298,6 +298,7 @@ </entityProvider> <entityConsumer> <name>DistrictContactUIDs</name> + <selectionMode>MULTI</selectionMode> <dependency> <name>dependency</name> <entityName>DistrictContact_entity</entityName> diff --git a/neonView/DistrictMain_view/DistrictMain_view.aod b/neonView/DistrictMain_view/DistrictMain_view.aod index 43da613e9cfb55bd09af2d7a0ea4df1b1c2561e3..a2b6f7454a3534e33909a73a1493dfe7d62dc048 100644 --- a/neonView/DistrictMain_view/DistrictMain_view.aod +++ b/neonView/DistrictMain_view/DistrictMain_view.aod @@ -19,6 +19,11 @@ <entityField>DistrictResponsibleUIDs</entityField> <view>DistrictResponsibleFilter_view</view> </neonViewReference> + <neonViewReference> + <name>056f1fea-5cd7-4156-a1ee-1dea0bbcef1e</name> + <entityField>DistrictContactUIDs</entityField> + <view>DistrictContactFilter_view</view> + </neonViewReference> <neonViewReference> <name>b409f300-c8b4-4052-9012-5e6b79c03a9c</name> <entityField>Organisations</entityField>