From 9f918f5b1ff0f9f514270d93d45bd1fab4c52f20 Mon Sep 17 00:00:00 2001 From: Rajandeep Date: Thu, 9 Apr 2026 09:38:54 -0700 Subject: [PATCH 1/2] 32886 - SAF - add ability to filter businesses based on director mailing address attributes --- .../colin_corps_extract_postgres_views_ddl | 32 +++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/data-tool/scripts/colin_corps_extract_postgres_views_ddl b/data-tool/scripts/colin_corps_extract_postgres_views_ddl index be2c009ab8..97e08527a4 100644 --- a/data-tool/scripts/colin_corps_extract_postgres_views_ddl +++ b/data-tool/scripts/colin_corps_extract_postgres_views_ddl @@ -842,6 +842,8 @@ SELECT COALESCE(edg.group_name, NULL) AS group_name, CAST(recognition_dts as date) as recognition_dts, CAST(last_ar_filed_dt as date) as last_ar_filed_dt, CAST(director_count as integer) as director_count, + CAST(directors_within_bc as boolean) as directors_within_bc, + CAST(directors_within_ca as boolean) as directors_within_ca, CAST(filing_cnt as integer) as filing_cnt, CAST(months_since_last_ar_filing as integer) as months_since_last_ar_filing, CAST(ar_unfiled_over_1yr as boolean) as ar_unfiled_over_1yr, @@ -920,6 +922,18 @@ FROM ( ev.event_file_types, ev.failed_events, COALESCE(cprt_dir.director_count, 0) AS director_count, + CASE + WHEN COALESCE(dir_mail_loc.dir_cnt, 0) > 0 + AND COALESCE(dir_mail_loc.dir_bc_mailing_cnt, 0) = dir_mail_loc.dir_cnt + THEN 'Y' + ELSE 'N' + END AS directors_within_bc, + CASE + WHEN COALESCE(dir_mail_loc.dir_cnt, 0) > 0 + AND COALESCE(dir_mail_loc.dir_ca_mailing_cnt, 0) = dir_mail_loc.dir_cnt + THEN 'Y' + ELSE 'N' + END AS directors_within_ca, CASE WHEN cow.corp_num IS NOT NULL THEN 'Y' ELSE 'N' END AS has_officers, CASE WHEN cowtp.corp_num IS NOT NULL THEN 'Y' ELSE 'N' END AS has_3rd_party, CASE WHEN cowtp.corp_num IS NOT NULL THEN cowtp.vendor ELSE '' END AS vendor, @@ -974,6 +988,24 @@ FROM ( WHERE party_typ_cd = 'DIR' GROUP BY corp_num ) cprt_dir ON cprt_dir.corp_num = c.corp_num + LEFT OUTER JOIN ( + SELECT + cp.corp_num, + COUNT(*) AS dir_cnt, + COUNT(*) Filter ( + WHERE cp.mailing_addr_id IS NOT NULL + AND UPPER(TRIM(ma.province)) = 'BC' + ) AS dir_bc_mailing_cnt, + COUNT(*) Filter ( + WHERE cp.mailing_addr_id IS NOT NULL + AND UPPER(TRIM(ma.country_typ_cd)) = 'CA' + ) AS dir_ca_mailing_cnt + FROM corp_party cp + LEFT JOIN address ma ON ma.addr_id = cp.mailing_addr_id + WHERE cp.end_event_id is NULL + AND cp.party_typ_cd = 'DIR' + GROUP BY cp.corp_num + ) dir_mail_loc ON dir_mail_loc.corp_num = c.corp_num LEFT OUTER JOIN mv_admin_email_count aec ON c.admin_email = aec.admin_email LEFT OUTER JOIN mv_addr_quality_screening_by_corp mvaqs ON c.corp_num = mvaqs.corp_num LEFT OUTER JOIN bar_corps bc ON c.corp_num = bc.identifier From ec26ae473f9085ffe6834084f5f6d6a1a3973548 Mon Sep 17 00:00:00 2001 From: Rajandeep Date: Tue, 14 Apr 2026 09:57:20 -0700 Subject: [PATCH 2/2] updated --- data-tool/scripts/colin_corps_extract_postgres_views_ddl | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/data-tool/scripts/colin_corps_extract_postgres_views_ddl b/data-tool/scripts/colin_corps_extract_postgres_views_ddl index 97e08527a4..27942837c9 100644 --- a/data-tool/scripts/colin_corps_extract_postgres_views_ddl +++ b/data-tool/scripts/colin_corps_extract_postgres_views_ddl @@ -994,10 +994,12 @@ FROM ( COUNT(*) AS dir_cnt, COUNT(*) Filter ( WHERE cp.mailing_addr_id IS NOT NULL + AND cp.mailing_addr_id <> 1 AND UPPER(TRIM(ma.province)) = 'BC' ) AS dir_bc_mailing_cnt, COUNT(*) Filter ( - WHERE cp.mailing_addr_id IS NOT NULL + WHERE cp.mailing_addr_id IS NOT NULL + AND cp.mailing_addr_id <> 1 AND UPPER(TRIM(ma.country_typ_cd)) = 'CA' ) AS dir_ca_mailing_cnt FROM corp_party cp