From 5b9ffe70b15401035a9e00802fee1bf9668237b9 Mon Sep 17 00:00:00 2001 From: Patrick Little <31454591+PatLittle@users.noreply.github.com> Date: Wed, 3 Nov 2021 16:47:49 -0400 Subject: [PATCH 01/23] Create suppliervax.yaml --- ckanext/canada/tables/suppliervax.yaml | 463 +++++++++++++++++++++++++ 1 file changed, 463 insertions(+) create mode 100644 ckanext/canada/tables/suppliervax.yaml diff --git a/ckanext/canada/tables/suppliervax.yaml b/ckanext/canada/tables/suppliervax.yaml new file mode 100644 index 000000000..751ce64de --- /dev/null +++ b/ckanext/canada/tables/suppliervax.yaml @@ -0,0 +1,463 @@ +dataset_type: suppliervax +target_dataset: suppliervax + +title: Reporting on COVID-19 Vaccination Requirement for Supplier Personnel +notes: Access, upload and modify the COVID-19 Vaccination Requirement for Supplier Personnel reporting for your organization + + +upload_warn: + en: "placeholder if required" + fr: "placeholder if required" + + + +template_version: 3 + +portal_type: info +collection: pd + +resources: +- title: Contract Data - Reporting on COVID-19 Vaccination Requirement for Supplier Personnel + resource_name: contract_data + create_form: true + edit_form: true + fields: + + # 3.1 + - datastore_id: c_report_date + label: + en: Report Date + fr: Numéro de suivi + description: + en: This is the date of the report. + fr: text + obligation: Mandatory + excel_required: true + form_required: true + format_type: Date (Please format the data as YYYY-MM-DD) + validation: This field must not be empty + visible_to_public: Yes + occurrence: Single + datastore_type: date + excel_column_width: 28 + form_snippet: scheming/form_snippets/date.html + + # 3.2 + - datastore_id: c_active + label: + en: Total number of active contracts within scope of Policy where certifcation occurs after contract award + fr: text + description: + en: | + Total number of active contracts within scope of Policy where certifcation occurs after contract award. + Contract Data: + a. An initial report to be submitted by November 26, 2021 on information collected as of November 15, 2021. + b. An updated report to be submitted by January 14, 2022 with updated information as of December 15, 2021. + c. If the previous report includes one or more contracts where the supplier certification status is pending, a monthly update is required until all active contracts subject to the Policy as of November 15, 2021 are accounted for. + fr: text + obligation: Mandatory + excel_required: true + form_required: true + format_type: Numeric only + validation: This field must not be empty + visible_to_public: Yes + occurrence: Single + datastore_type: int + excel_column_width: 28 + form_attrs: + size: 60 + + + # 3.3 + - datastore_id: c_refuse + label: + en: Total number of active contracts where certification occurs after contract award and supplier was unable/refuse to certify + fr: text + description: + en: Total number of active contracts where certification occurs after contract award and supplier was unable/refuse to certify + fr: text + obligation: Mandatory + excel_required: true + form_required: true + format_type: Numeric only + validation: This field must not be empty + visible_to_public: Yes + occurrence: Single + datastore_type: int + excel_column_width: 28 + form_attrs: + size: 60 + + # 3.4 + - datastore_id: c_accommodations + label: + en: Total number of active contracts where accomodations were made per Policy + fr: text + description: + en: Total number of active contracts where accomodations were made per Policy + fr: text + obligation: Mandatory + excel_required: true + form_required: true + format_type: Numeric only + validation: This field must not be empty + visible_to_public: Yes + occurrence: Single + datastore_type: int + excel_column_width: 28 + form_attrs: + size: 60 + + # 3.5 + - datastore_id: c_pending + label: + en: Total number of active contracts where accomodations were made per Policy + fr: text + description: + en: Total number of active contracts where accomodations were made per Policy + fr: text + obligation: Mandatory + excel_required: true + form_required: true + format_type: Numeric only + validation: This field must not be empty + visible_to_public: Yes + occurrence: Single + datastore_type: int + excel_column_width: 28 + form_attrs: + size: 60 + + # 3.6 + - datastore_id: additional_information_en + label: + en: Additional Information (English) + fr: Renseignements supplémentaires (en anglais) + description: + en: This field will display any additional information/comments for the Briefing Note, in English. + fr: Ce champ affichera de plus amples renseignements/commentaires concernant la note de breffage, en anglais. + obligation: Optional + excel_required: false + format_type: Free text + validation: None + visible_to_public: Yes + occurrence: Single + datastore_type: text + excel_column_width: 35 + form_snippet: scheming/form_snippets/textarea.html + form_attrs: + style: "width: 100%; display: block" + + # 3.2 + - datastore_id: additional_information_fr + label: + en: Additional Information (French) + fr: Renseignements supplémentaires (en français) + description: + en: This field will display any additional information/comments for the Briefing Note, in French. + fr: Ce champ affichera de plus amples renseignements/commentaires concernant la note de breffage, en français. + obligation: Optional + excel_required: false + format_type: Free text + validation: None + visible_to_public: Yes + occurrence: Single + datastore_type: text + excel_column_width: 35 + form_snippet: scheming/form_snippets/textarea.html + form_attrs: + style: "width: 100%; display: block" + + + + - datastore_id: record_created + label: Record Creation Time + import_template_include: false + visible_to_public: false + datastore_type: timestamp + preview_class: bg-info + + - datastore_id: record_modified + label: Last Record Modification Time + import_template_include: false + visible_to_public: false + datastore_type: timestamp + preview_class: bg-info + + - datastore_id: user_modified + label: User Last Modified Record + import_template_include: false + visible_to_public: false + datastore_type: text + preview_class: bg-info + + datastore_primary_key: c_report_date + datastore_indexes: "" + + default_preview_sort: c_report_date + + excel_example_height: 32 + excel_data_height: 32 + excel_data_num_rows: 500 + + triggers: + - briefingt_trigger: | + DECLARE + errors text[][] := '{{}}'; + crval RECORD; + BEGIN + errors := errors || required_error(NEW.c_report_date, 'c_report_date'); + errors := errors || required_error(NEW.c_active, 'c_active'); + errors := errors || required_error(NEW.c_refuse, 'c_refuse'); + errors := errors || required_error(NEW.c_accommodations, 'c_accommodations'); + errors := errors || required_error(NEW.c_pending, 'c_pending'); + IF errors = '{{}}' THEN + RETURN NEW; + END IF; + RAISE EXCEPTION E'TAB-DELIMITED\t%', array_to_string(errors, E'\t'); + END; + - update_record_modified_created_trigger + + examples: + record: + c_report_date: 2021-11-26 + c_active: 19 + c_refuse: 2 + c_accommodations: 1 + c_pending: 3 + additional_information_en: optional additional information goes here + additional_information_fr: text + filters: + c_report_date: 2021-11-26 + filter_one: + c_report_date: 2021-11-26 + sort: c_report_date desc + +- title: Verification Data - Reporting on COVID-19 Vaccination Requirement for Supplier Personnel + resource_name: verification_data + create_form: true + edit_form: true + fields: + + # 3.1 + - datastore_id: v_report_date + label: + en: Report Date + fr: Numéro de suivi + description: + en: This is the date of the report + fr: text + obligation: Mandatory + excel_required: true + form_required: true + format_type: Date (Please format the data as YYYY-MM-DD) + validation: This field must not be empty + visible_to_public: Yes + occurrence: Single + datastore_type: date + excel_column_width: 28 + form_snippet: scheming/form_snippets/date.html + + # 3.2 + - datastore_id: v_total + label: + en: Total number of verifications of certifications undertaken + fr: text + description: + en: | + Total number of verifications of certifications undertaken. + Verification Data: + a. An initial report to be submitted by February 14, 2022 with information as of January 31, 2022. + b. A monthly update of the report is to be provided within 14 calendar days after the end of the month. + c. A close-out report with an updated total is required within 30 calendar days after the policy is rescinded. + fr: text + obligation: Mandatory + excel_required: true + form_required: true + format_type: Numeric only + validation: This field must not be empty + visible_to_public: Yes + occurrence: Single + datastore_type: int + excel_column_width: 28 + form_attrs: + size: 60 + + + # 3.3 + - datastore_id: v_actions + label: + en: Total number of verifications of certifications that resulted in action against a supplier + fr: text + description: + en: Total number of verifications of certifications that resulted in action against a supplier + fr: text + obligation: Mandatory + excel_required: true + form_required: true + format_type: Numeric only + validation: This field must not be empty + visible_to_public: Yes + occurrence: Single + datastore_type: int + excel_column_width: 28 + form_attrs: + size: 60 + + # 3.4 + - datastore_id: v_new_contracts + label: + en: Total number of verifications of new solicitations issued and contracts awarded after November 15, 2021 + fr: text + description: + en: Total number of verifications of new solicitations issued and contracts awarded after November 15, 2021 + fr: text + obligation: Mandatory + excel_required: true + form_required: true + format_type: Numeric only + validation: This field must not be empty + visible_to_public: Yes + occurrence: Single + datastore_type: int + excel_column_width: 28 + form_attrs: + size: 60 + + # 3.5 + - datastore_id: v_site_inspections + label: + en: Total number of site inspections to verify vaccination status of supplier personnel + fr: text + description: + en: Total number of site inspections to verify vaccination status of supplier personnel + fr: text + obligation: Mandatory + excel_required: true + form_required: true + format_type: Numeric only + validation: This field must not be empty + visible_to_public: Yes + occurrence: Single + datastore_type: int + excel_column_width: 28 + form_attrs: + size: 60 + + # 3.6 + - datastore_id: additional_information_en + label: + en: Additional Information (English) + fr: Renseignements supplémentaires (en anglais) + description: + en: This field will display any additional information/comments for the Briefing Note, in English. + fr: Ce champ affichera de plus amples renseignements/commentaires concernant la note de breffage, en anglais. + obligation: Optional + excel_required: false + format_type: Free text + validation: None + visible_to_public: Yes + occurrence: Single + datastore_type: text + excel_column_width: 35 + form_snippet: scheming/form_snippets/textarea.html + form_attrs: + style: "width: 100%; display: block" + + # 3.2 + - datastore_id: additional_information_fr + label: + en: Additional Information (French) + fr: Renseignements supplémentaires (en français) + description: + en: This field will display any additional information/comments for the Briefing Note, in French. + fr: Ce champ affichera de plus amples renseignements/commentaires concernant la note de breffage, en français. + obligation: Optional + excel_required: false + format_type: Free text + validation: None + visible_to_public: Yes + occurrence: Single + datastore_type: text + excel_column_width: 35 + form_snippet: scheming/form_snippets/textarea.html + form_attrs: + style: "width: 100%; display: block" + + + + - datastore_id: record_created + label: Record Creation Time + import_template_include: false + visible_to_public: false + datastore_type: timestamp + preview_class: bg-info + + - datastore_id: record_modified + label: Last Record Modification Time + import_template_include: false + visible_to_public: false + datastore_type: timestamp + preview_class: bg-info + + - datastore_id: user_modified + label: User Last Modified Record + import_template_include: false + visible_to_public: false + datastore_type: text + preview_class: bg-info + + datastore_primary_key: v_report_date + datastore_indexes: "" + + default_preview_sort: v_report_date + + excel_example_height: 32 + excel_data_height: 32 + excel_data_num_rows: 500 + + triggers: + - briefingt_trigger: | + DECLARE + errors text[][] := '{{}}'; + crval RECORD; + BEGIN + errors := errors || required_error(NEW.v_report_date, 'v_report_date'); + errors := errors || required_error(NEW.v_total, 'v_total'); + errors := errors || required_error(NEW.v_actions, 'v_actions'); + errors := errors || required_error(NEW.v_new_contracts, 'v_new_contracts'); + errors := errors || required_error(NEW.v_site_inspections, 'v_site_inspections'); + IF errors = '{{}}' THEN + RETURN NEW; + END IF; + RAISE EXCEPTION E'TAB-DELIMITED\t%', array_to_string(errors, E'\t'); + END; + - update_record_modified_created_trigger + + examples: + record: + v_report_date: 2022-02-14 + v_total: 19 + v_actions: 2 + v_new_contracts: 6 + V_site_inspections: 3 + additional_information_en: optional additional information goes here + additional_information_fr: text + filters: + c_report_date: 2022-02-14 + filter_one: + c_report_date: 2022-02-14 + sort: v_report_date desc + +excel_edge_style: + PatternFill: + fgColor: FF3d4647 + patternType: solid +excel_header_style: + PatternFill: + patternType: solid + fgColor: FF84acb6 +excel_column_heading_style: + PatternFill: + patternType: solid + fgColor: FF84acb6 From 7ac27b6a9d7eac20acc4908c6cbf312bc4e2b17d Mon Sep 17 00:00:00 2001 From: Patrick Little <31454591+PatLittle@users.noreply.github.com> Date: Wed, 3 Nov 2021 23:38:56 -0400 Subject: [PATCH 02/23] working --- ckanext/canada/plugins.py | 6 ++++++ ckanext/canada/tables/suppliervax.yaml | 4 ++-- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/ckanext/canada/plugins.py b/ckanext/canada/plugins.py index 721d8829b..3be0218ef 100755 --- a/ckanext/canada/plugins.py +++ b/ckanext/canada/plugins.py @@ -309,6 +309,7 @@ def update_config(self, config): ckanext.canada:tables/dac.yaml ckanext.canada:tables/nap.yaml ckanext.canada:tables/experiment.yaml +ckanext.canada:tables/suppliervax.yaml """ config['ckan.search.show_all_types'] = True config['search.facets.limit'] = 200 # because org list @@ -322,6 +323,7 @@ def update_config(self, config): ckanext.canada:schemas/info.yaml ckanext.canada:schemas/prop.yaml """ + config['scheming.organization_schemas'] = 'ckanext.canada:schemas/organization.yaml' # Enable our custom DCAT profile. config['ckanext.dcat.rdf.profile'] = 'canada_dcat' @@ -531,6 +533,10 @@ def get_validators(self): validators.user_read_only, 'user_read_only_json': validators.user_read_only_json, + 'no_future_date': + validators.no_future_date, + 'canada_sort_prop_status': + validators.canada_sort_prop_status, 'canada_sort_prop_status': validators.canada_sort_prop_status, 'no_future_date': diff --git a/ckanext/canada/tables/suppliervax.yaml b/ckanext/canada/tables/suppliervax.yaml index 751ce64de..fffc9d159 100644 --- a/ckanext/canada/tables/suppliervax.yaml +++ b/ckanext/canada/tables/suppliervax.yaml @@ -18,7 +18,7 @@ collection: pd resources: - title: Contract Data - Reporting on COVID-19 Vaccination Requirement for Supplier Personnel - resource_name: contract_data + resource_name: contract-data create_form: true edit_form: true fields: @@ -234,7 +234,7 @@ resources: sort: c_report_date desc - title: Verification Data - Reporting on COVID-19 Vaccination Requirement for Supplier Personnel - resource_name: verification_data + resource_name: verification-data create_form: true edit_form: true fields: From c0db32630de33647fc79305f953a7dc005367673 Mon Sep 17 00:00:00 2001 From: Patrick Little <31454591+PatLittle@users.noreply.github.com> Date: Thu, 4 Nov 2021 01:20:03 -0400 Subject: [PATCH 03/23] Update suppliervax.yaml --- ckanext/canada/tables/suppliervax.yaml | 104 ++++++++++--------------- 1 file changed, 40 insertions(+), 64 deletions(-) diff --git a/ckanext/canada/tables/suppliervax.yaml b/ckanext/canada/tables/suppliervax.yaml index fffc9d159..402fc1930 100644 --- a/ckanext/canada/tables/suppliervax.yaml +++ b/ckanext/canada/tables/suppliervax.yaml @@ -29,7 +29,12 @@ resources: en: Report Date fr: Numéro de suivi description: - en: This is the date of the report. + en: | + This is the date of the report + + a. An initial report to be submitted by November 26, 2021 on information collected as of November 15, 2021. + b. An updated report to be submitted by January 14, 2022 with updated information as of December 15, 2021. + c. If the previous report includes one or more contracts where the supplier certification status is pending, a monthly update is required until all active contracts subject to the Policy as of November 15, 2021 are accounted for. fr: text obligation: Mandatory excel_required: true @@ -39,7 +44,7 @@ resources: visible_to_public: Yes occurrence: Single datastore_type: date - excel_column_width: 28 + excel_column_width: 15 form_snippet: scheming/form_snippets/date.html # 3.2 @@ -50,10 +55,6 @@ resources: description: en: | Total number of active contracts within scope of Policy where certifcation occurs after contract award. - Contract Data: - a. An initial report to be submitted by November 26, 2021 on information collected as of November 15, 2021. - b. An updated report to be submitted by January 14, 2022 with updated information as of December 15, 2021. - c. If the previous report includes one or more contracts where the supplier certification status is pending, a monthly update is required until all active contracts subject to the Policy as of November 15, 2021 are accounted for. fr: text obligation: Mandatory excel_required: true @@ -63,7 +64,7 @@ resources: visible_to_public: Yes occurrence: Single datastore_type: int - excel_column_width: 28 + excel_column_width: 35 form_attrs: size: 60 @@ -134,8 +135,8 @@ resources: en: Additional Information (English) fr: Renseignements supplémentaires (en anglais) description: - en: This field will display any additional information/comments for the Briefing Note, in English. - fr: Ce champ affichera de plus amples renseignements/commentaires concernant la note de breffage, en anglais. + en: This field will display any additional information/comments, in English. + fr: Ce champ affichera de plus amples renseignements/commentaires, en anglais. obligation: Optional excel_required: false format_type: Free text @@ -154,8 +155,8 @@ resources: en: Additional Information (French) fr: Renseignements supplémentaires (en français) description: - en: This field will display any additional information/comments for the Briefing Note, in French. - fr: Ce champ affichera de plus amples renseignements/commentaires concernant la note de breffage, en français. + en: This field will display any additional information/comments, in French. + fr: Ce champ affichera de plus amples renseignements/commentaires, en français. obligation: Optional excel_required: false format_type: Free text @@ -233,6 +234,19 @@ resources: c_report_date: 2021-11-26 sort: c_report_date desc +excel_edge_style: + PatternFill: + fgColor: FF3d4647 + patternType: solid +excel_header_style: + PatternFill: + patternType: solid + fgColor: FF1cff6b +excel_column_heading_style: + PatternFill: + patternType: solid + fgColor: FF1cff6b + - title: Verification Data - Reporting on COVID-19 Vaccination Requirement for Supplier Personnel resource_name: verification-data create_form: true @@ -245,7 +259,12 @@ resources: en: Report Date fr: Numéro de suivi description: - en: This is the date of the report + en: | + This is the date of the report + + a. An initial report to be submitted by February 14, 2022 with information as of January 31, 2022. + b. A monthly update of the report is to be provided within 14 calendar days after the end of the month. + c. A close-out report with an updated total is required within 30 calendar days after the policy is rescinded. fr: text obligation: Mandatory excel_required: true @@ -261,15 +280,12 @@ resources: # 3.2 - datastore_id: v_total label: - en: Total number of verifications of certifications undertaken + en: Total number of contracts with verifications undertaken fr: text description: en: | - Total number of verifications of certifications undertaken. - Verification Data: - a. An initial report to be submitted by February 14, 2022 with information as of January 31, 2022. - b. A monthly update of the report is to be provided within 14 calendar days after the end of the month. - c. A close-out report with an updated total is required within 30 calendar days after the policy is rescinded. + Total number of contracts with verifications undertaken + fr: text obligation: Mandatory excel_required: true @@ -285,12 +301,12 @@ resources: # 3.3 - - datastore_id: v_actions + - datastore_id: v_terminations label: - en: Total number of verifications of certifications that resulted in action against a supplier + en: Total number of contracts terminated due to non-compliance with Policy following verification fr: text description: - en: Total number of verifications of certifications that resulted in action against a supplier + en: Total number of contracts terminated due to non-compliance with Policy following verification fr: text obligation: Mandatory excel_required: true @@ -305,46 +321,6 @@ resources: size: 60 # 3.4 - - datastore_id: v_new_contracts - label: - en: Total number of verifications of new solicitations issued and contracts awarded after November 15, 2021 - fr: text - description: - en: Total number of verifications of new solicitations issued and contracts awarded after November 15, 2021 - fr: text - obligation: Mandatory - excel_required: true - form_required: true - format_type: Numeric only - validation: This field must not be empty - visible_to_public: Yes - occurrence: Single - datastore_type: int - excel_column_width: 28 - form_attrs: - size: 60 - - # 3.5 - - datastore_id: v_site_inspections - label: - en: Total number of site inspections to verify vaccination status of supplier personnel - fr: text - description: - en: Total number of site inspections to verify vaccination status of supplier personnel - fr: text - obligation: Mandatory - excel_required: true - form_required: true - format_type: Numeric only - validation: This field must not be empty - visible_to_public: Yes - occurrence: Single - datastore_type: int - excel_column_width: 28 - form_attrs: - size: 60 - - # 3.6 - datastore_id: additional_information_en label: en: Additional Information (English) @@ -364,7 +340,7 @@ resources: form_attrs: style: "width: 100%; display: block" - # 3.2 + # 3.5 - datastore_id: additional_information_fr label: en: Additional Information (French) @@ -456,8 +432,8 @@ excel_edge_style: excel_header_style: PatternFill: patternType: solid - fgColor: FF84acb6 + fgColor: FF4ad7f0 excel_column_heading_style: PatternFill: patternType: solid - fgColor: FF84acb6 + fgColor: FF4ad7f0 From 2f5396c86e6c4ebd224ad44c62b6d2118321cc58 Mon Sep 17 00:00:00 2001 From: Patrick Little <31454591+PatLittle@users.noreply.github.com> Date: Thu, 4 Nov 2021 01:31:03 -0400 Subject: [PATCH 04/23] Update suppliervax.yaml --- ckanext/canada/tables/suppliervax.yaml | 13 ------------- 1 file changed, 13 deletions(-) diff --git a/ckanext/canada/tables/suppliervax.yaml b/ckanext/canada/tables/suppliervax.yaml index 402fc1930..20ee1b7a7 100644 --- a/ckanext/canada/tables/suppliervax.yaml +++ b/ckanext/canada/tables/suppliervax.yaml @@ -234,19 +234,6 @@ resources: c_report_date: 2021-11-26 sort: c_report_date desc -excel_edge_style: - PatternFill: - fgColor: FF3d4647 - patternType: solid -excel_header_style: - PatternFill: - patternType: solid - fgColor: FF1cff6b -excel_column_heading_style: - PatternFill: - patternType: solid - fgColor: FF1cff6b - - title: Verification Data - Reporting on COVID-19 Vaccination Requirement for Supplier Personnel resource_name: verification-data create_form: true From d3602121f59a2b759ddff6fe642cffe6edff9e46 Mon Sep 17 00:00:00 2001 From: Patrick Little <31454591+PatLittle@users.noreply.github.com> Date: Thu, 4 Nov 2021 09:52:17 -0400 Subject: [PATCH 05/23] Update suppliervax.yaml --- ckanext/canada/tables/suppliervax.yaml | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/ckanext/canada/tables/suppliervax.yaml b/ckanext/canada/tables/suppliervax.yaml index 20ee1b7a7..17742a105 100644 --- a/ckanext/canada/tables/suppliervax.yaml +++ b/ckanext/canada/tables/suppliervax.yaml @@ -261,7 +261,7 @@ resources: visible_to_public: Yes occurrence: Single datastore_type: date - excel_column_width: 28 + excel_column_width: 15 form_snippet: scheming/form_snippets/date.html # 3.2 @@ -401,9 +401,7 @@ resources: record: v_report_date: 2022-02-14 v_total: 19 - v_actions: 2 - v_new_contracts: 6 - V_site_inspections: 3 + v_terminations: 3 additional_information_en: optional additional information goes here additional_information_fr: text filters: From d8f07a4ce1ba99a0f89f22b4684878e94da481cd Mon Sep 17 00:00:00 2001 From: Patrick Little <31454591+PatLittle@users.noreply.github.com> Date: Thu, 4 Nov 2021 12:15:45 -0400 Subject: [PATCH 06/23] Update plugins.py --- ckanext/canada/plugins.py | 4 ---- 1 file changed, 4 deletions(-) diff --git a/ckanext/canada/plugins.py b/ckanext/canada/plugins.py index 3be0218ef..65c01e2c6 100755 --- a/ckanext/canada/plugins.py +++ b/ckanext/canada/plugins.py @@ -533,10 +533,6 @@ def get_validators(self): validators.user_read_only, 'user_read_only_json': validators.user_read_only_json, - 'no_future_date': - validators.no_future_date, - 'canada_sort_prop_status': - validators.canada_sort_prop_status, 'canada_sort_prop_status': validators.canada_sort_prop_status, 'no_future_date': From a241b0452f398fd41a154c97b091286b6d9987aa Mon Sep 17 00:00:00 2001 From: Patrick Little <31454591+PatLittle@users.noreply.github.com> Date: Thu, 4 Nov 2021 13:30:59 -0400 Subject: [PATCH 07/23] Update suppliervax.yaml --- ckanext/canada/tables/suppliervax.yaml | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/ckanext/canada/tables/suppliervax.yaml b/ckanext/canada/tables/suppliervax.yaml index 17742a105..9f7335653 100644 --- a/ckanext/canada/tables/suppliervax.yaml +++ b/ckanext/canada/tables/suppliervax.yaml @@ -387,9 +387,7 @@ resources: BEGIN errors := errors || required_error(NEW.v_report_date, 'v_report_date'); errors := errors || required_error(NEW.v_total, 'v_total'); - errors := errors || required_error(NEW.v_actions, 'v_actions'); - errors := errors || required_error(NEW.v_new_contracts, 'v_new_contracts'); - errors := errors || required_error(NEW.v_site_inspections, 'v_site_inspections'); + errors := errors || required_error(NEW.v_terminations, 'v_terminations'); IF errors = '{{}}' THEN RETURN NEW; END IF; @@ -405,9 +403,9 @@ resources: additional_information_en: optional additional information goes here additional_information_fr: text filters: - c_report_date: 2022-02-14 + v_report_date: 2022-02-14 filter_one: - c_report_date: 2022-02-14 + v_report_date: 2022-02-14 sort: v_report_date desc excel_edge_style: From 823e25140fe5576cacf9e96bb194634f9c277596 Mon Sep 17 00:00:00 2001 From: Patrick Little <31454591+PatLittle@users.noreply.github.com> Date: Thu, 4 Nov 2021 14:31:51 -0400 Subject: [PATCH 08/23] Update suppliervax.yaml --- ckanext/canada/tables/suppliervax.yaml | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/ckanext/canada/tables/suppliervax.yaml b/ckanext/canada/tables/suppliervax.yaml index 9f7335653..d0605d93c 100644 --- a/ckanext/canada/tables/suppliervax.yaml +++ b/ckanext/canada/tables/suppliervax.yaml @@ -221,7 +221,7 @@ resources: examples: record: - c_report_date: 2021-11-26 + c_report_date: "2021-11-26" c_active: 19 c_refuse: 2 c_accommodations: 1 @@ -229,9 +229,9 @@ resources: additional_information_en: optional additional information goes here additional_information_fr: text filters: - c_report_date: 2021-11-26 + c_report_date: "2021-11-26" filter_one: - c_report_date: 2021-11-26 + c_report_date: "2021-11-26" sort: c_report_date desc - title: Verification Data - Reporting on COVID-19 Vaccination Requirement for Supplier Personnel @@ -397,15 +397,15 @@ resources: examples: record: - v_report_date: 2022-02-14 + v_report_date: "2022-02-14" v_total: 19 v_terminations: 3 additional_information_en: optional additional information goes here additional_information_fr: text filters: - v_report_date: 2022-02-14 + v_report_date: "2022-02-14" filter_one: - v_report_date: 2022-02-14 + v_report_date: "2022-02-14" sort: v_report_date desc excel_edge_style: From 7cbc97cb4c023c7fa09b5fd5ee45554c2beef85b Mon Sep 17 00:00:00 2001 From: Patrick Little <31454591+PatLittle@users.noreply.github.com> Date: Thu, 4 Nov 2021 15:34:48 -0400 Subject: [PATCH 09/23] Update suppliervax.yaml --- ckanext/canada/tables/suppliervax.yaml | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/ckanext/canada/tables/suppliervax.yaml b/ckanext/canada/tables/suppliervax.yaml index d0605d93c..9df708a90 100644 --- a/ckanext/canada/tables/suppliervax.yaml +++ b/ckanext/canada/tables/suppliervax.yaml @@ -202,7 +202,7 @@ resources: excel_data_num_rows: 500 triggers: - - briefingt_trigger: | + - contract-data_trigger: | DECLARE errors text[][] := '{{}}'; crval RECORD; @@ -313,8 +313,8 @@ resources: en: Additional Information (English) fr: Renseignements supplémentaires (en anglais) description: - en: This field will display any additional information/comments for the Briefing Note, in English. - fr: Ce champ affichera de plus amples renseignements/commentaires concernant la note de breffage, en anglais. + en: This field will display any additional information/comments, in English. + fr: Ce champ affichera de plus amples renseignements/commentaires, en anglais. obligation: Optional excel_required: false format_type: Free text @@ -333,8 +333,8 @@ resources: en: Additional Information (French) fr: Renseignements supplémentaires (en français) description: - en: This field will display any additional information/comments for the Briefing Note, in French. - fr: Ce champ affichera de plus amples renseignements/commentaires concernant la note de breffage, en français. + en: This field will display any additional information/comments, in French. + fr: Ce champ affichera de plus amples renseignements/commentaires, en français. obligation: Optional excel_required: false format_type: Free text @@ -380,7 +380,7 @@ resources: excel_data_num_rows: 500 triggers: - - briefingt_trigger: | + - verification-data_trigger: | DECLARE errors text[][] := '{{}}'; crval RECORD; From bd5cd214d75b0f661e70ece634951dc42e9952f8 Mon Sep 17 00:00:00 2001 From: Patrick Little <31454591+PatLittle@users.noreply.github.com> Date: Fri, 5 Nov 2021 00:33:09 -0400 Subject: [PATCH 10/23] update homepage --- ckanext/canada/internal/static/internal.css | 4 ++++ ckanext/canada/tables/suppliervax.yaml | 2 +- ckanext/canada/templates/internal/home/quick_links.html | 6 ++++++ 3 files changed, 11 insertions(+), 1 deletion(-) diff --git a/ckanext/canada/internal/static/internal.css b/ckanext/canada/internal/static/internal.css index 1803c5591..1a83c0962 100644 --- a/ckanext/canada/internal/static/internal.css +++ b/ckanext/canada/internal/static/internal.css @@ -551,6 +551,10 @@ ul#brf-pkg { padding-left: 0; } #mn-pd { border-left: solid 6px #44a; } #pd i { color: #44a; } +#ql-suppliervax { border-left: solid 3px #7e0c33; border-top: solid 1px #ddd; } +#ql-suppliervax i { color: #7e0c33; margin-right: 10px; } +#mn-suppliervax { border-left: solid 6px #7e0c33; } + .label.dataset-private { display: none; } #quick-links .fa-question-circle-o { diff --git a/ckanext/canada/tables/suppliervax.yaml b/ckanext/canada/tables/suppliervax.yaml index 9df708a90..8e15b0c23 100644 --- a/ckanext/canada/tables/suppliervax.yaml +++ b/ckanext/canada/tables/suppliervax.yaml @@ -200,7 +200,7 @@ resources: excel_example_height: 32 excel_data_height: 32 excel_data_num_rows: 500 - + triggers: - contract-data_trigger: | DECLARE diff --git a/ckanext/canada/templates/internal/home/quick_links.html b/ckanext/canada/templates/internal/home/quick_links.html index afbe5f3f5..1d8e77643 100644 --- a/ckanext/canada/templates/internal/home/quick_links.html +++ b/ckanext/canada/templates/internal/home/quick_links.html @@ -206,6 +206,12 @@

{{ _('Proactive Disclosure') }}

  • +
    +

    {{ _('Supplier COVID-19 Vaccination') }}

    + +
    {% endif %} From f4f23b6bf23dc567d8f2c0a99253cb669f254d23 Mon Sep 17 00:00:00 2001 From: Patrick Little <31454591+PatLittle@users.noreply.github.com> Date: Fri, 5 Nov 2021 00:36:59 -0400 Subject: [PATCH 11/23] Update suppliervax.yaml --- ckanext/canada/tables/suppliervax.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ckanext/canada/tables/suppliervax.yaml b/ckanext/canada/tables/suppliervax.yaml index 8e15b0c23..9df708a90 100644 --- a/ckanext/canada/tables/suppliervax.yaml +++ b/ckanext/canada/tables/suppliervax.yaml @@ -200,7 +200,7 @@ resources: excel_example_height: 32 excel_data_height: 32 excel_data_num_rows: 500 - + triggers: - contract-data_trigger: | DECLARE From 4c00d081f74336caaa754f08d1caeb0a7e3058e5 Mon Sep 17 00:00:00 2001 From: Patrick Little <31454591+PatLittle@users.noreply.github.com> Date: Fri, 5 Nov 2021 00:53:07 -0400 Subject: [PATCH 12/23] Update quick_links.html --- ckanext/canada/templates/internal/home/quick_links.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ckanext/canada/templates/internal/home/quick_links.html b/ckanext/canada/templates/internal/home/quick_links.html index 1d8e77643..3f1122ebf 100644 --- a/ckanext/canada/templates/internal/home/quick_links.html +++ b/ckanext/canada/templates/internal/home/quick_links.html @@ -209,7 +209,7 @@

    {{ _('Proactive Disclosure') }}

    {{ _('Supplier COVID-19 Vaccination') }}

    From 875e4bf632e181bbc9e047bdd4c5696e1880d6d0 Mon Sep 17 00:00:00 2001 From: Patrick Little <31454591+PatLittle@users.noreply.github.com> Date: Fri, 5 Nov 2021 00:59:03 -0400 Subject: [PATCH 13/23] Update quick_links.html --- ckanext/canada/templates/internal/home/quick_links.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ckanext/canada/templates/internal/home/quick_links.html b/ckanext/canada/templates/internal/home/quick_links.html index 3f1122ebf..ded11e9c2 100644 --- a/ckanext/canada/templates/internal/home/quick_links.html +++ b/ckanext/canada/templates/internal/home/quick_links.html @@ -209,7 +209,7 @@

    {{ _('Proactive Disclosure') }}

    {{ _('Supplier COVID-19 Vaccination') }}

    From 6b9a1e942c80b7daa02dd53f46dd9d08140016d1 Mon Sep 17 00:00:00 2001 From: Patrick Little <31454591+PatLittle@users.noreply.github.com> Date: Fri, 5 Nov 2021 01:18:03 -0400 Subject: [PATCH 14/23] Update quick_links.html --- ckanext/canada/templates/internal/home/quick_links.html | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/ckanext/canada/templates/internal/home/quick_links.html b/ckanext/canada/templates/internal/home/quick_links.html index ded11e9c2..62327a012 100644 --- a/ckanext/canada/templates/internal/home/quick_links.html +++ b/ckanext/canada/templates/internal/home/quick_links.html @@ -209,7 +209,13 @@

    {{ _('Proactive Disclosure') }}

    {{ _('Supplier COVID-19 Vaccination') }}

    From 3c1fd9c995b3b90ca62ec813f4ffca89e169cf35 Mon Sep 17 00:00:00 2001 From: Patrick Little <31454591+PatLittle@users.noreply.github.com> Date: Fri, 5 Nov 2021 01:22:14 -0400 Subject: [PATCH 15/23] Update quick_links.html --- ckanext/canada/templates/internal/home/quick_links.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ckanext/canada/templates/internal/home/quick_links.html b/ckanext/canada/templates/internal/home/quick_links.html index 62327a012..f4374b237 100644 --- a/ckanext/canada/templates/internal/home/quick_links.html +++ b/ckanext/canada/templates/internal/home/quick_links.html @@ -213,7 +213,7 @@

    {{ _('Supplier COVID-19 Vaccination') }}

    'suppliervax', '/recombinant/contract-data/', 'fa fa-upload', - 'Reporting on COVID-19 Vaccination Requirement for Supplier Personnel', + 'COVID-19 Vaccination for Supplier Personnel', 'Access, upload and modify the COVID-19 Vaccination Requirement for Supplier Personnel reporting for your organization.' )}} From fd26c16245b719ae9089c9f605cab7f13abf4fb9 Mon Sep 17 00:00:00 2001 From: Patrick Little <31454591+PatLittle@users.noreply.github.com> Date: Fri, 5 Nov 2021 16:29:50 -0400 Subject: [PATCH 16/23] setup filters and makefile --- bin/filter/filter_suppliervax.py | 26 ++++++++++++++++++++++++ bin/pd/Makefile | 35 ++++++++++++++++++++++++++++++-- 2 files changed, 59 insertions(+), 2 deletions(-) create mode 100644 bin/filter/filter_suppliervax.py diff --git a/bin/filter/filter_suppliervax.py b/bin/filter/filter_suppliervax.py new file mode 100644 index 000000000..89e6835cb --- /dev/null +++ b/bin/filter/filter_suppliervax.py @@ -0,0 +1,26 @@ +#!/usr/bin/env python +"filter for contract-data.csv and verification-data.csv" + +import csv +import sys + +REMOVE_COLUMNS = [ + 'record_created', + 'record_modified', + 'user_modified', +] + +def main(): + reader = csv.DictReader(sys.stdin) + outnames = [f for f in reader.fieldnames if f not in REMOVE_COLUMNS] + writer = csv.DictWriter(sys.stdout, outnames) + writer.writeheader() + for row in reader: + try: + for rem in REMOVE_COLUMNS: + del row[rem] + writer.writerow(row) + except ValueError: + pass + +main() diff --git a/bin/pd/Makefile b/bin/pd/Makefile index 57990556a..8feb199c2 100644 --- a/bin/pd/Makefile +++ b/bin/pd/Makefile @@ -1,5 +1,5 @@ targets := ati briefingt qpnotes contracts contractsa dac experiment grants hospitalityq inventory \ - nap reclassification service travela travelq wrongdoing + nap reclassification service travela travelq wrongdoing suppliervax csv_files := \ ati.csv ati-nil.csv \ briefingt.csv \ @@ -17,7 +17,8 @@ csv_files := \ service.csv service-std.csv \ travela.csv \ travelq.csv travelq-nil.csv \ - wrongdoing.csv + wrongdoing.csv \ + contract-data.csv verification-data.csv fdir := $(PD_FILTER_SCRIPT_DIRECTORY) paster := $(REGISTRY_PASTER_COMMAND) registry_python := $(REGISTRY_PYTHON_COMMAND) @@ -636,5 +637,35 @@ $(workdir)/wrongdoing.csv: $(workdir)/filtered/wrongdoing.csv: $(workdir)/wrongdoing.csv $(fdir)/filter_wrongdoing.py < $< > $@ +### +### Supplier Vaccination +### +.PHONY: suppliervax +contracts: upload-suppliervax rebuild-suppliervax + +.PHONY: upload-suppliervax +upload-contracts: $(workdir)/filtered/contract-data.csv $(workdir)/filtered/verification-data.csv + @echo Uploading Supplier Vaccination... + @$(ckanapi) action resource_patch -c $(registry_ini) \ + id=5334e05b-5c48-4cba-b5e3-cf755ef43dd3 upload@"$(workdir)/filtered/contract-data.csv" \ + > /dev/null + @$(ckanapi) action resource_patch -c $(registry_ini) \ + id=0d10f492-fcc3-467e-bd22-98492226569e upload@"$(workdir)/filtered/verification-data.csv" \ + > /dev/null + +.PHONY: rebuild-suppliervax +rebuild-contracts: $(workdir)/filtered/contracts.csv $(workdir)/filtered/contracts-nil.csv + # no search for suppliervax + +$(workdir)/contract-data.csv: + $(paster) $(combine) contract-data -d $(workdir) -c $(registry_ini) + +$(workdir)/verification-data.csv: + $(paster) $(combine) verification-data -d $(workdir) -c $(registry_ini) + +$(workdir)/filtered/contract-data.csv: $(workdir)/contract-data.csv + $(fdir)/filter_suppliervax.py < $< > $@ +$(workdir)/filtered/verification-data.csv: $(workdir)/verification-data.csv + $(fdir)/filter_suppliervax.py < $< > $@ endif From 39a71a79eef05a6f1c5caa7d680466e80f73fb84 Mon Sep 17 00:00:00 2001 From: Patrick Little <31454591+PatLittle@users.noreply.github.com> Date: Fri, 5 Nov 2021 16:39:21 -0400 Subject: [PATCH 17/23] Update Makefile --- bin/pd/Makefile | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/bin/pd/Makefile b/bin/pd/Makefile index 8feb199c2..248b75579 100644 --- a/bin/pd/Makefile +++ b/bin/pd/Makefile @@ -641,10 +641,10 @@ $(workdir)/filtered/wrongdoing.csv: $(workdir)/wrongdoing.csv ### Supplier Vaccination ### .PHONY: suppliervax -contracts: upload-suppliervax rebuild-suppliervax +suppliervax: upload-suppliervax rebuild-suppliervax .PHONY: upload-suppliervax -upload-contracts: $(workdir)/filtered/contract-data.csv $(workdir)/filtered/verification-data.csv +upload-suppliervax: $(workdir)/filtered/contract-data.csv $(workdir)/filtered/verification-data.csv @echo Uploading Supplier Vaccination... @$(ckanapi) action resource_patch -c $(registry_ini) \ id=5334e05b-5c48-4cba-b5e3-cf755ef43dd3 upload@"$(workdir)/filtered/contract-data.csv" \ @@ -654,7 +654,7 @@ upload-contracts: $(workdir)/filtered/contract-data.csv $(workdir)/filtered/veri > /dev/null .PHONY: rebuild-suppliervax -rebuild-contracts: $(workdir)/filtered/contracts.csv $(workdir)/filtered/contracts-nil.csv +rebuild-suppliervax: $(workdir)/filtered/contracts.csv $(workdir)/filtered/contracts-nil.csv # no search for suppliervax $(workdir)/contract-data.csv: From d462fd7209a697431c7b2ed99e6bef77917f1a91 Mon Sep 17 00:00:00 2001 From: Patrick Little <31454591+PatLittle@users.noreply.github.com> Date: Mon, 8 Nov 2021 21:39:01 -0500 Subject: [PATCH 18/23] Update suppliervax.yaml --- ckanext/canada/tables/suppliervax.yaml | 216 ++++++++++++++----------- 1 file changed, 123 insertions(+), 93 deletions(-) diff --git a/ckanext/canada/tables/suppliervax.yaml b/ckanext/canada/tables/suppliervax.yaml index 9df708a90..61d922a27 100644 --- a/ckanext/canada/tables/suppliervax.yaml +++ b/ckanext/canada/tables/suppliervax.yaml @@ -17,14 +17,14 @@ portal_type: info collection: pd resources: -- title: Contract Data - Reporting on COVID-19 Vaccination Requirement for Supplier Personnel +- title: Contract Data resource_name: contract-data create_form: true edit_form: true fields: # 3.1 - - datastore_id: c_report_date + - datastore_id: report_date label: en: Report Date fr: Numéro de suivi @@ -32,9 +32,15 @@ resources: en: | This is the date of the report - a. An initial report to be submitted by November 26, 2021 on information collected as of November 15, 2021. - b. An updated report to be submitted by January 14, 2022 with updated information as of December 15, 2021. - c. If the previous report includes one or more contracts where the supplier certification status is pending, a monthly update is required until all active contracts subject to the Policy as of November 15, 2021 are accounted for. + The timelines for reporting on ongoing contracts as of November 15, 2021 are: + a. An initial report to be submitted by November 26, 2021 on information collected as of November 15, 2021 + b. A 2nd updated report to be submitted by December 15, 2021 on information collected as of November 30, 2021. + c. A 3rd updated report to be submitted by January 15, 2022 on information collected as of December 31, 2021. + d. A 4th updated report to be submitted by February 15, 2022 with updated information as of January 31, 2022. + e. If the previous report includes one or more contracts where the supplier certification status is pending, a monthly update is required until all pending contracts are accounted for. + + Note: For columns x, x and x, departments are not required to report on contracts that require the inclusion of a vaccination certification requirement prior to contract award. + fr: text obligation: Mandatory excel_required: true @@ -48,54 +54,54 @@ resources: form_snippet: scheming/form_snippets/date.html # 3.2 - - datastore_id: c_active - label: - en: Total number of active contracts within scope of Policy where certifcation occurs after contract award - fr: text - description: - en: | - Total number of active contracts within scope of Policy where certifcation occurs after contract award. - fr: text - obligation: Mandatory - excel_required: true - form_required: true - format_type: Numeric only - validation: This field must not be empty - visible_to_public: Yes - occurrence: Single - datastore_type: int - excel_column_width: 35 - form_attrs: - size: 60 - + - datastore_id: total + label: + en: Total number of contracts + fr: text + description: + en: Total number of contracts. + fr: text + obligation: Mandatory + excel_required: true + form_required: true + format_type: Numeric only + validation: This field must not be empty + visible_to_public: Yes + occurrence: Single + datastore_type: int + excel_column_width: 28 + form_attrs: + size: 60 # 3.3 - - datastore_id: c_refuse - label: - en: Total number of active contracts where certification occurs after contract award and supplier was unable/refuse to certify - fr: text - description: - en: Total number of active contracts where certification occurs after contract award and supplier was unable/refuse to certify - fr: text - obligation: Mandatory - excel_required: true - form_required: true - format_type: Numeric only - validation: This field must not be empty - visible_to_public: Yes - occurrence: Single - datastore_type: int - excel_column_width: 28 - form_attrs: - size: 60 + - datastore_id: refused + label: + en: Total number of contracts where the supplier was unable/refused to certify + fr: text + description: + en: | + Total number of contracts where the supplier was unable/refused to certify. + fr: text + obligation: Mandatory + excel_required: true + form_required: true + format_type: Numeric only + validation: This field must not be empty + visible_to_public: Yes + occurrence: Single + datastore_type: int + excel_column_width: 35 + form_attrs: + size: 60 + # 3.4 - - datastore_id: c_accommodations + - datastore_id: accommodations label: - en: Total number of active contracts where accomodations were made per Policy + en: Total number of contracts where accommodations were made in accordance with the Policy fr: text description: - en: Total number of active contracts where accomodations were made per Policy + en: Total number of contracts where accommodations were made in accordance with the Policy. fr: text obligation: Mandatory excel_required: true @@ -109,13 +115,13 @@ resources: form_attrs: size: 60 - # 3.5 - - datastore_id: c_pending + # 3.5 + - datastore_id: pending label: - en: Total number of active contracts where accomodations were made per Policy + en: Total number of contracts where the supplier certification status is pending fr: text description: - en: Total number of active contracts where accomodations were made per Policy + en: Total number of contracts where the supplier certification status is pending fr: text obligation: Mandatory excel_required: true @@ -129,7 +135,7 @@ resources: form_attrs: size: 60 - # 3.6 + # 3.6 - datastore_id: additional_information_en label: en: Additional Information (English) @@ -149,7 +155,7 @@ resources: form_attrs: style: "width: 100%; display: block" - # 3.2 + # 3.7 - datastore_id: additional_information_fr label: en: Additional Information (French) @@ -170,7 +176,6 @@ resources: style: "width: 100%; display: block" - - datastore_id: record_created label: Record Creation Time import_template_include: false @@ -192,10 +197,10 @@ resources: datastore_type: text preview_class: bg-info - datastore_primary_key: c_report_date + datastore_primary_key: report_date datastore_indexes: "" - default_preview_sort: c_report_date + default_preview_sort: report_date excel_example_height: 32 excel_data_height: 32 @@ -207,11 +212,11 @@ resources: errors text[][] := '{{}}'; crval RECORD; BEGIN - errors := errors || required_error(NEW.c_report_date, 'c_report_date'); - errors := errors || required_error(NEW.c_active, 'c_active'); - errors := errors || required_error(NEW.c_refuse, 'c_refuse'); - errors := errors || required_error(NEW.c_accommodations, 'c_accommodations'); - errors := errors || required_error(NEW.c_pending, 'c_pending'); + errors := errors || required_error(NEW.report_date, 'report_date'); + errors := errors || required_error(NEW.total, 'total); + errors := errors || required_error(NEW.refused, 'refused'); + errors := errors || required_error(NEW.accommodations, 'accommodations'); + errors := errors || required_error(NEW.pending, 'pending'); IF errors = '{{}}' THEN RETURN NEW; END IF; @@ -221,27 +226,27 @@ resources: examples: record: - c_report_date: "2021-11-26" - c_active: 19 - c_refuse: 2 - c_accommodations: 1 - c_pending: 3 + report_date: "2021-11-26" + total: 19 + refused: 2 + accommodations: 1 + pending: 3 additional_information_en: optional additional information goes here additional_information_fr: text filters: - c_report_date: "2021-11-26" + report_date: "2021-11-26" filter_one: - c_report_date: "2021-11-26" - sort: c_report_date desc + report_date: "2021-11-26" + sort: report_date desc -- title: Verification Data - Reporting on COVID-19 Vaccination Requirement for Supplier Personnel +- title: Verification Data resource_name: verification-data create_form: true edit_form: true fields: - # 3.1 - - datastore_id: v_report_date + # 3.8 + - datastore_id: report_date label: en: Report Date fr: Numéro de suivi @@ -249,9 +254,12 @@ resources: en: | This is the date of the report - a. An initial report to be submitted by February 14, 2022 with information as of January 31, 2022. - b. A monthly update of the report is to be provided within 14 calendar days after the end of the month. - c. A close-out report with an updated total is required within 30 calendar days after the policy is rescinded. + The timelines for reporting on the verification data are: + a. An initial report to be submitted by December 15, 2021 with information as of November 30, 2021. + b. A monthly update of the report is to be provided within 15 calendar days after the end of the month. + c. A close-out report with an updated total of the data elements is required within 30 calendar days after the policy is rescinded. + + Note: Departments are to indicate “0” in the report if any of the data elements is “0” by the reporting timelines specified in 3.1.8. fr: text obligation: Mandatory excel_required: true @@ -264,8 +272,8 @@ resources: excel_column_width: 15 form_snippet: scheming/form_snippets/date.html - # 3.2 - - datastore_id: v_total + # 3.9 + - datastore_id: total label: en: Total number of contracts with verifications undertaken fr: text @@ -287,13 +295,13 @@ resources: size: 60 - # 3.3 - - datastore_id: v_terminations + # 3.10 + - datastore_id: admin_action label: - en: Total number of contracts terminated due to non-compliance with Policy following verification + en: Total number of contracts that require further administrative action due to non-compliance with Policy following verification fr: text description: - en: Total number of contracts terminated due to non-compliance with Policy following verification + en: Total number of contracts that require further administrative action due to non-compliance with Policy following verification fr: text obligation: Mandatory excel_required: true @@ -307,7 +315,27 @@ resources: form_attrs: size: 60 - # 3.4 +# 3.11 + - datastore_id: enforcement_action + label: + en: Total number of contracts that require contract enforcement action due to non-compliance with Policy following verification + fr: text + description: + en: Total number of contracts that require contract enforcement action due to non-compliance with Policy following verification + fr: text + obligation: Mandatory + excel_required: true + form_required: true + format_type: Numeric only + validation: This field must not be empty + visible_to_public: Yes + occurrence: Single + datastore_type: int + excel_column_width: 28 + form_attrs: + size: 60 + + # 3.12 - datastore_id: additional_information_en label: en: Additional Information (English) @@ -327,7 +355,7 @@ resources: form_attrs: style: "width: 100%; display: block" - # 3.5 + # 3.13 - datastore_id: additional_information_fr label: en: Additional Information (French) @@ -370,10 +398,10 @@ resources: datastore_type: text preview_class: bg-info - datastore_primary_key: v_report_date + datastore_primary_key: report_date datastore_indexes: "" - default_preview_sort: v_report_date + default_preview_sort: report_date excel_example_height: 32 excel_data_height: 32 @@ -385,9 +413,10 @@ resources: errors text[][] := '{{}}'; crval RECORD; BEGIN - errors := errors || required_error(NEW.v_report_date, 'v_report_date'); - errors := errors || required_error(NEW.v_total, 'v_total'); - errors := errors || required_error(NEW.v_terminations, 'v_terminations'); + errors := errors || required_error(NEW.report_date, 'report_date'); + errors := errors || required_error(NEW.total, 'total'); + errors := errors || required_error(NEW.admin_action, 'admin_action'); + errors := errors || required_error(NEW.enforcement_action, 'enforcement_action'); IF errors = '{{}}' THEN RETURN NEW; END IF; @@ -397,16 +426,17 @@ resources: examples: record: - v_report_date: "2022-02-14" - v_total: 19 - v_terminations: 3 + report_date: "2022-02-14" + total: 19 + admin_action: 3 + enforcement_action: 1 additional_information_en: optional additional information goes here additional_information_fr: text filters: - v_report_date: "2022-02-14" + report_date: "2022-02-14" filter_one: - v_report_date: "2022-02-14" - sort: v_report_date desc + report_date: "2022-02-14" + sort: report_date desc excel_edge_style: PatternFill: From bf3717c0c1d6e5d376674f0697558d354c0301c5 Mon Sep 17 00:00:00 2001 From: Patrick Little <31454591+PatLittle@users.noreply.github.com> Date: Mon, 8 Nov 2021 22:52:39 -0500 Subject: [PATCH 19/23] Update suppliervax.yaml --- ckanext/canada/tables/suppliervax.yaml | 76 +++++++++++++------------- 1 file changed, 38 insertions(+), 38 deletions(-) diff --git a/ckanext/canada/tables/suppliervax.yaml b/ckanext/canada/tables/suppliervax.yaml index 61d922a27..d19dc9235 100644 --- a/ckanext/canada/tables/suppliervax.yaml +++ b/ckanext/canada/tables/suppliervax.yaml @@ -54,45 +54,45 @@ resources: form_snippet: scheming/form_snippets/date.html # 3.2 - - datastore_id: total - label: - en: Total number of contracts - fr: text - description: - en: Total number of contracts. - fr: text - obligation: Mandatory - excel_required: true - form_required: true - format_type: Numeric only - validation: This field must not be empty - visible_to_public: Yes - occurrence: Single - datastore_type: int - excel_column_width: 28 - form_attrs: - size: 60 + - datastore_id: total + label: + en: Total number of contracts + fr: text + description: + en: Total number of contracts. + fr: text + obligation: Mandatory + excel_required: true + form_required: true + format_type: Numeric only + validation: This field must not be empty + visible_to_public: Yes + occurrence: Single + datastore_type: int + excel_column_width: 28 + form_attrs: + size: 60 # 3.3 - - datastore_id: refused - label: - en: Total number of contracts where the supplier was unable/refused to certify - fr: text - description: - en: | - Total number of contracts where the supplier was unable/refused to certify. - fr: text - obligation: Mandatory - excel_required: true - form_required: true - format_type: Numeric only - validation: This field must not be empty - visible_to_public: Yes - occurrence: Single - datastore_type: int - excel_column_width: 35 - form_attrs: - size: 60 + - datastore_id: refused + label: + en: Total number of contracts where the supplier was unable/refused to certify + fr: text + description: + en: | + Total number of contracts where the supplier was unable/refused to certify. + fr: text + obligation: Mandatory + excel_required: true + form_required: true + format_type: Numeric only + validation: This field must not be empty + visible_to_public: Yes + occurrence: Single + datastore_type: int + excel_column_width: 35 + form_attrs: + size: 60 # 3.4 @@ -315,7 +315,7 @@ resources: form_attrs: size: 60 -# 3.11 + # 3.11 - datastore_id: enforcement_action label: en: Total number of contracts that require contract enforcement action due to non-compliance with Policy following verification From 7726600c481774e1ee2b37529a105352b69ae6b0 Mon Sep 17 00:00:00 2001 From: Patrick Little <31454591+PatLittle@users.noreply.github.com> Date: Mon, 8 Nov 2021 23:20:58 -0500 Subject: [PATCH 20/23] Update suppliervax.yaml --- ckanext/canada/tables/suppliervax.yaml | 23 +++++++++-------------- 1 file changed, 9 insertions(+), 14 deletions(-) diff --git a/ckanext/canada/tables/suppliervax.yaml b/ckanext/canada/tables/suppliervax.yaml index d19dc9235..64c86cef8 100644 --- a/ckanext/canada/tables/suppliervax.yaml +++ b/ckanext/canada/tables/suppliervax.yaml @@ -4,13 +4,10 @@ target_dataset: suppliervax title: Reporting on COVID-19 Vaccination Requirement for Supplier Personnel notes: Access, upload and modify the COVID-19 Vaccination Requirement for Supplier Personnel reporting for your organization - upload_warn: en: "placeholder if required" fr: "placeholder if required" - - template_version: 3 portal_type: info @@ -32,14 +29,14 @@ resources: en: | This is the date of the report - The timelines for reporting on ongoing contracts as of November 15, 2021 are: + The timelines for reporting on ongoing contracts as of November 15, 2021 are a. An initial report to be submitted by November 26, 2021 on information collected as of November 15, 2021 b. A 2nd updated report to be submitted by December 15, 2021 on information collected as of November 30, 2021. c. A 3rd updated report to be submitted by January 15, 2022 on information collected as of December 31, 2021. d. A 4th updated report to be submitted by February 15, 2022 with updated information as of January 31, 2022. e. If the previous report includes one or more contracts where the supplier certification status is pending, a monthly update is required until all pending contracts are accounted for. - Note: For columns x, x and x, departments are not required to report on contracts that require the inclusion of a vaccination certification requirement prior to contract award. + Note For columns x, x and x, departments are not required to report on contracts that require the inclusion of a vaccination certification requirement prior to contract award. fr: text obligation: Mandatory @@ -94,7 +91,6 @@ resources: form_attrs: size: 60 - # 3.4 - datastore_id: accommodations label: @@ -213,7 +209,7 @@ resources: crval RECORD; BEGIN errors := errors || required_error(NEW.report_date, 'report_date'); - errors := errors || required_error(NEW.total, 'total); + errors := errors || required_error(NEW.total, 'total'); errors := errors || required_error(NEW.refused, 'refused'); errors := errors || required_error(NEW.accommodations, 'accommodations'); errors := errors || required_error(NEW.pending, 'pending'); @@ -231,8 +227,8 @@ resources: refused: 2 accommodations: 1 pending: 3 - additional_information_en: optional additional information goes here - additional_information_fr: text + additional_information_en: "optional additional information goes here" + additional_information_fr: "text" filters: report_date: "2021-11-26" filter_one: @@ -254,12 +250,11 @@ resources: en: | This is the date of the report - The timelines for reporting on the verification data are: + The timelines for reporting on the verification data are a. An initial report to be submitted by December 15, 2021 with information as of November 30, 2021. b. A monthly update of the report is to be provided within 15 calendar days after the end of the month. c. A close-out report with an updated total of the data elements is required within 30 calendar days after the policy is rescinded. - - Note: Departments are to indicate “0” in the report if any of the data elements is “0” by the reporting timelines specified in 3.1.8. + fr: text obligation: Mandatory excel_required: true @@ -430,8 +425,8 @@ resources: total: 19 admin_action: 3 enforcement_action: 1 - additional_information_en: optional additional information goes here - additional_information_fr: text + additional_information_en: "optional additional information goes here" + additional_information_fr: "text" filters: report_date: "2022-02-14" filter_one: From d2050398d4aff649f26856be1917fa55cbd91d0e Mon Sep 17 00:00:00 2001 From: Patrick Little <31454591+PatLittle@users.noreply.github.com> Date: Mon, 8 Nov 2021 23:49:56 -0500 Subject: [PATCH 21/23] Update suppliervax.yaml --- ckanext/canada/tables/suppliervax.yaml | 50 ++++++++++++++++++++++++-- 1 file changed, 48 insertions(+), 2 deletions(-) diff --git a/ckanext/canada/tables/suppliervax.yaml b/ckanext/canada/tables/suppliervax.yaml index 64c86cef8..9b4696235 100644 --- a/ckanext/canada/tables/suppliervax.yaml +++ b/ckanext/canada/tables/suppliervax.yaml @@ -36,7 +36,7 @@ resources: d. A 4th updated report to be submitted by February 15, 2022 with updated information as of January 31, 2022. e. If the previous report includes one or more contracts where the supplier certification status is pending, a monthly update is required until all pending contracts are accounted for. - Note For columns x, x and x, departments are not required to report on contracts that require the inclusion of a vaccination certification requirement prior to contract award. + Note For columns E, F and G, departments are not required to report on contracts that require the inclusion of a vaccination certification requirement prior to contract award. fr: text obligation: Mandatory @@ -75,6 +75,12 @@ resources: label: en: Total number of contracts where the supplier was unable/refused to certify fr: text + excel_heading: + en: | + Total number of contracts where + the supplier was unable/refused to certify + fr: | + placeholder text description: en: | Total number of contracts where the supplier was unable/refused to certify. @@ -96,6 +102,14 @@ resources: label: en: Total number of contracts where accommodations were made in accordance with the Policy fr: text + excel_heading: + en: | + Total number of contracts + where accommodations were + made in accordance with the + Policy + fr: | + placeholder text description: en: Total number of contracts where accommodations were made in accordance with the Policy. fr: text @@ -116,6 +130,13 @@ resources: label: en: Total number of contracts where the supplier certification status is pending fr: text + excel_heading: + en: | + Total number of contracts + where the supplier certification + status is pending + fr: | + placeholder text description: en: Total number of contracts where the supplier certification status is pending fr: text @@ -254,6 +275,8 @@ resources: a. An initial report to be submitted by December 15, 2021 with information as of November 30, 2021. b. A monthly update of the report is to be provided within 15 calendar days after the end of the month. c. A close-out report with an updated total of the data elements is required within 30 calendar days after the policy is rescinded. + + Note Departments are to indicate “0” in the report if any of the data elements is “0” by the reporting timelines specified in 3.1.8. fr: text obligation: Mandatory @@ -272,10 +295,15 @@ resources: label: en: Total number of contracts with verifications undertaken fr: text + excel_heading: + en: | + Total number of contracts with + verifications undertaken + fr: | + placeholder text description: en: | Total number of contracts with verifications undertaken - fr: text obligation: Mandatory excel_required: true @@ -295,6 +323,15 @@ resources: label: en: Total number of contracts that require further administrative action due to non-compliance with Policy following verification fr: text + excel_heading: + en: | + Total number of contracts that + require further administrative + action due to non-compliance + with Policy following + verification + fr: | + placeholder text description: en: Total number of contracts that require further administrative action due to non-compliance with Policy following verification fr: text @@ -315,6 +352,15 @@ resources: label: en: Total number of contracts that require contract enforcement action due to non-compliance with Policy following verification fr: text + excel_heading: + en: | + Total number of contracts that + require contract enforcement + action due to non-compliance + with Policy following + verification + fr: | + placeholder text description: en: Total number of contracts that require contract enforcement action due to non-compliance with Policy following verification fr: text From c3b0d687e1f49d1fca624230d41896ae7901303e Mon Sep 17 00:00:00 2001 From: Patrick Little <31454591+PatLittle@users.noreply.github.com> Date: Mon, 8 Nov 2021 23:53:38 -0500 Subject: [PATCH 22/23] Update suppliervax.yaml --- ckanext/canada/tables/suppliervax.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ckanext/canada/tables/suppliervax.yaml b/ckanext/canada/tables/suppliervax.yaml index 9b4696235..0834d1baf 100644 --- a/ckanext/canada/tables/suppliervax.yaml +++ b/ckanext/canada/tables/suppliervax.yaml @@ -14,7 +14,7 @@ portal_type: info collection: pd resources: -- title: Contract Data +- title: Contract Data - Reporting on COVID-19 Vaccination Requirement for Supplier Personnel resource_name: contract-data create_form: true edit_form: true @@ -256,7 +256,7 @@ resources: report_date: "2021-11-26" sort: report_date desc -- title: Verification Data +- title: Verification Data - Reporting on COVID-19 Vaccination Requirement for Supplier Personnel resource_name: verification-data create_form: true edit_form: true From c06a5ff6355514ce271a744bf2adcbe149b6ccfa Mon Sep 17 00:00:00 2001 From: Patrick Little <31454591+PatLittle@users.noreply.github.com> Date: Wed, 10 Nov 2021 12:30:37 -0500 Subject: [PATCH 23/23] removing 2nd tab of template --- bin/pd/Makefile | 18 +- ckanext/canada/tables/suppliervax.yaml | 444 ++++++++++++------------- 2 files changed, 231 insertions(+), 231 deletions(-) diff --git a/bin/pd/Makefile b/bin/pd/Makefile index 248b75579..f242b88bc 100644 --- a/bin/pd/Makefile +++ b/bin/pd/Makefile @@ -644,28 +644,28 @@ $(workdir)/filtered/wrongdoing.csv: $(workdir)/wrongdoing.csv suppliervax: upload-suppliervax rebuild-suppliervax .PHONY: upload-suppliervax -upload-suppliervax: $(workdir)/filtered/contract-data.csv $(workdir)/filtered/verification-data.csv +upload-suppliervax: $(workdir)/filtered/contract-data.csv #$(workdir)/filtered/verification-data.csv @echo Uploading Supplier Vaccination... @$(ckanapi) action resource_patch -c $(registry_ini) \ id=5334e05b-5c48-4cba-b5e3-cf755ef43dd3 upload@"$(workdir)/filtered/contract-data.csv" \ > /dev/null - @$(ckanapi) action resource_patch -c $(registry_ini) \ - id=0d10f492-fcc3-467e-bd22-98492226569e upload@"$(workdir)/filtered/verification-data.csv" \ - > /dev/null +# @$(ckanapi) action resource_patch -c $(registry_ini) \ +# id=0d10f492-fcc3-467e-bd22-98492226569e upload@"$(workdir)/filtered/verification-data.csv" \ +# > /dev/null .PHONY: rebuild-suppliervax -rebuild-suppliervax: $(workdir)/filtered/contracts.csv $(workdir)/filtered/contracts-nil.csv +rebuild-suppliervax: $(workdir)/filtered/contracts.csv #$(workdir)/filtered/contracts-nil.csv # no search for suppliervax $(workdir)/contract-data.csv: $(paster) $(combine) contract-data -d $(workdir) -c $(registry_ini) -$(workdir)/verification-data.csv: - $(paster) $(combine) verification-data -d $(workdir) -c $(registry_ini) +#$(workdir)/verification-data.csv: +# $(paster) $(combine) verification-data -d $(workdir) -c $(registry_ini) $(workdir)/filtered/contract-data.csv: $(workdir)/contract-data.csv $(fdir)/filter_suppliervax.py < $< > $@ -$(workdir)/filtered/verification-data.csv: $(workdir)/verification-data.csv - $(fdir)/filter_suppliervax.py < $< > $@ +#$(workdir)/filtered/verification-data.csv: $(workdir)/verification-data.csv +# $(fdir)/filter_suppliervax.py < $< > $@ endif diff --git a/ckanext/canada/tables/suppliervax.yaml b/ckanext/canada/tables/suppliervax.yaml index 0834d1baf..c02372518 100644 --- a/ckanext/canada/tables/suppliervax.yaml +++ b/ckanext/canada/tables/suppliervax.yaml @@ -256,228 +256,228 @@ resources: report_date: "2021-11-26" sort: report_date desc -- title: Verification Data - Reporting on COVID-19 Vaccination Requirement for Supplier Personnel - resource_name: verification-data - create_form: true - edit_form: true - fields: - - # 3.8 - - datastore_id: report_date - label: - en: Report Date - fr: Numéro de suivi - description: - en: | - This is the date of the report - - The timelines for reporting on the verification data are - a. An initial report to be submitted by December 15, 2021 with information as of November 30, 2021. - b. A monthly update of the report is to be provided within 15 calendar days after the end of the month. - c. A close-out report with an updated total of the data elements is required within 30 calendar days after the policy is rescinded. - - Note Departments are to indicate “0” in the report if any of the data elements is “0” by the reporting timelines specified in 3.1.8. - - fr: text - obligation: Mandatory - excel_required: true - form_required: true - format_type: Date (Please format the data as YYYY-MM-DD) - validation: This field must not be empty - visible_to_public: Yes - occurrence: Single - datastore_type: date - excel_column_width: 15 - form_snippet: scheming/form_snippets/date.html - - # 3.9 - - datastore_id: total - label: - en: Total number of contracts with verifications undertaken - fr: text - excel_heading: - en: | - Total number of contracts with - verifications undertaken - fr: | - placeholder text - description: - en: | - Total number of contracts with verifications undertaken - fr: text - obligation: Mandatory - excel_required: true - form_required: true - format_type: Numeric only - validation: This field must not be empty - visible_to_public: Yes - occurrence: Single - datastore_type: int - excel_column_width: 28 - form_attrs: - size: 60 - - - # 3.10 - - datastore_id: admin_action - label: - en: Total number of contracts that require further administrative action due to non-compliance with Policy following verification - fr: text - excel_heading: - en: | - Total number of contracts that - require further administrative - action due to non-compliance - with Policy following - verification - fr: | - placeholder text - description: - en: Total number of contracts that require further administrative action due to non-compliance with Policy following verification - fr: text - obligation: Mandatory - excel_required: true - form_required: true - format_type: Numeric only - validation: This field must not be empty - visible_to_public: Yes - occurrence: Single - datastore_type: int - excel_column_width: 28 - form_attrs: - size: 60 - - # 3.11 - - datastore_id: enforcement_action - label: - en: Total number of contracts that require contract enforcement action due to non-compliance with Policy following verification - fr: text - excel_heading: - en: | - Total number of contracts that - require contract enforcement - action due to non-compliance - with Policy following - verification - fr: | - placeholder text - description: - en: Total number of contracts that require contract enforcement action due to non-compliance with Policy following verification - fr: text - obligation: Mandatory - excel_required: true - form_required: true - format_type: Numeric only - validation: This field must not be empty - visible_to_public: Yes - occurrence: Single - datastore_type: int - excel_column_width: 28 - form_attrs: - size: 60 - - # 3.12 - - datastore_id: additional_information_en - label: - en: Additional Information (English) - fr: Renseignements supplémentaires (en anglais) - description: - en: This field will display any additional information/comments, in English. - fr: Ce champ affichera de plus amples renseignements/commentaires, en anglais. - obligation: Optional - excel_required: false - format_type: Free text - validation: None - visible_to_public: Yes - occurrence: Single - datastore_type: text - excel_column_width: 35 - form_snippet: scheming/form_snippets/textarea.html - form_attrs: - style: "width: 100%; display: block" - - # 3.13 - - datastore_id: additional_information_fr - label: - en: Additional Information (French) - fr: Renseignements supplémentaires (en français) - description: - en: This field will display any additional information/comments, in French. - fr: Ce champ affichera de plus amples renseignements/commentaires, en français. - obligation: Optional - excel_required: false - format_type: Free text - validation: None - visible_to_public: Yes - occurrence: Single - datastore_type: text - excel_column_width: 35 - form_snippet: scheming/form_snippets/textarea.html - form_attrs: - style: "width: 100%; display: block" - - - - - datastore_id: record_created - label: Record Creation Time - import_template_include: false - visible_to_public: false - datastore_type: timestamp - preview_class: bg-info - - - datastore_id: record_modified - label: Last Record Modification Time - import_template_include: false - visible_to_public: false - datastore_type: timestamp - preview_class: bg-info - - - datastore_id: user_modified - label: User Last Modified Record - import_template_include: false - visible_to_public: false - datastore_type: text - preview_class: bg-info - - datastore_primary_key: report_date - datastore_indexes: "" - - default_preview_sort: report_date - - excel_example_height: 32 - excel_data_height: 32 - excel_data_num_rows: 500 - - triggers: - - verification-data_trigger: | - DECLARE - errors text[][] := '{{}}'; - crval RECORD; - BEGIN - errors := errors || required_error(NEW.report_date, 'report_date'); - errors := errors || required_error(NEW.total, 'total'); - errors := errors || required_error(NEW.admin_action, 'admin_action'); - errors := errors || required_error(NEW.enforcement_action, 'enforcement_action'); - IF errors = '{{}}' THEN - RETURN NEW; - END IF; - RAISE EXCEPTION E'TAB-DELIMITED\t%', array_to_string(errors, E'\t'); - END; - - update_record_modified_created_trigger - - examples: - record: - report_date: "2022-02-14" - total: 19 - admin_action: 3 - enforcement_action: 1 - additional_information_en: "optional additional information goes here" - additional_information_fr: "text" - filters: - report_date: "2022-02-14" - filter_one: - report_date: "2022-02-14" - sort: report_date desc +#- title: Verification Data - Reporting on COVID-19 Vaccination Requirement for Supplier Personnel +# resource_name: verification-data +# create_form: true +# edit_form: true +# fields: +# +# # 3.8 +# - datastore_id: report_date +# label: +# en: Report Date +# fr: Numéro de suivi +# description: +# en: | +# This is the date of the report +# +# The timelines for reporting on the verification data are +# a.An initial report to be submitted by December 15, 2021 with information as of November 30, 2021. +# b.A monthly update of the report is to be provided within 15 calendar days after the end of the month. +# c.A close-out report with an updated total of the data elements is required within 30 calendar days after the policy is rescinded. +# +# Note Departments are to indicate “0” in the report if any of the data elements is “0” by the reporting timelines specified in 3.1.8. +# +# fr: text +# obligation: Mandatory +# excel_required: true +# form_required: true +# format_type: Date (Please format the data as YYYY-MM-DD) +# validation: This field must not be empty +# visible_to_public: Yes +# occurrence: Single +# datastore_type: date +# excel_column_width: 15 +# form_snippet: scheming/form_snippets/date.html +# +# # 3.9 +# - datastore_id: total +# label: +# en: Total number of contracts with verifications undertaken +# fr: text +# excel_heading: +# en: | +# Total number of contracts with +# verifications undertaken +# fr: | +# placeholder text +# description: +# en: | +# Total number of contracts with verifications undertaken +# fr: text +# obligation: Mandatory +# excel_required: true +# form_required: true +# format_type: Numeric only +# validation: This field must not be empty +# visible_to_public: Yes +# occurrence: Single +# datastore_type: int +# excel_column_width: 28 +# form_attrs: +# size: 60 +# +# +# # 3.10 +# - datastore_id: admin_action +# label: +# en: Total number of contracts that require further administrative action due to non-compliance with Policy following verification +# fr: text +# excel_heading: +# en: | +# Total number of contracts that +# require further administrative +# action due to non-compliance +# with Policy following +# verification +# fr: | +# placeholder text +# description: +# en: Total number of contracts that require further administrative action due to non-compliance with Policy following verification +# fr: text +# obligation: Mandatory +# excel_required: true +# form_required: true +# format_type: Numeric only +# validation: This field must not be empty +# visible_to_public: Yes +# occurrence: Single +# datastore_type: int +# excel_column_width: 28 +# form_attrs: +# size: 60 +# +# # 3.11 +# - datastore_id: enforcement_action +# label: +# en: Total number of contracts that require contract enforcement action due to non-compliance with Policy following verification +# fr: text +# excel_heading: +# en: | +# Total number of contracts that +# require contract enforcement +# action due to non-compliance +# with Policy following +# verification +# fr: | +# placeholder text +# description: +# en: Total number of contracts that require contract enforcement action due to non-compliance with Policy following verification +# fr: text +# obligation: Mandatory +# excel_required: true +# form_required: true +# format_type: Numeric only +# validation: This field must not be empty +# visible_to_public: Yes +# occurrence: Single +# datastore_type: int +# excel_column_width: 28 +# form_attrs: +# size: 60 +# +# # 3.12 +# - datastore_id: additional_information_en +# label: +# en: Additional Information (English) +# fr: Renseignements supplémentaires (en anglais) +# description: +# en: This field will display any additional information/comments, in English. +# fr: Ce champ affichera de plus amples renseignements/commentaires, en anglais. +# obligation: Optional +# excel_required: false +# format_type: Free text +# validation: None +# visible_to_public: Yes +# occurrence: Single +# datastore_type: text +# excel_column_width: 35 +# form_snippet: scheming/form_snippets/textarea.html +# form_attrs: +# style: "width: 100%; display: block" +# +# # 3.13 +# - datastore_id: additional_information_fr +# label: +# en: Additional Information (French) +# fr: Renseignements supplémentaires (en français) +# description: +# en: This field will display any additional information/comments, in French. +# fr: Ce champ affichera de plus amples renseignements/commentaires, en français. +# obligation: Optional +# excel_required: false +# format_type: Free text +# validation: None +# visible_to_public: Yes +# occurrence: Single +# datastore_type: text +# excel_column_width: 35 +# form_snippet: scheming/form_snippets/textarea.html +# form_attrs: +# style: "width: 100%; display: block" +# +# +# +# - datastore_id: record_created +# label: Record Creation Time +# import_template_include: false +# visible_to_public: false +# datastore_type: timestamp +# preview_class: bg-info +# +# - datastore_id: record_modified +# label: Last Record Modification Time +# import_template_include: false +# visible_to_public: false +# datastore_type: timestamp +# preview_class: bg-info +# +# - datastore_id: user_modified +# label: User Last Modified Record +# import_template_include: false +# visible_to_public: false +# datastore_type: text +# preview_class: bg-info +# +# datastore_primary_key: report_date +# datastore_indexes: "" +# +# default_preview_sort: report_date +# +# excel_example_height: 32 +# excel_data_height: 32 +# excel_data_num_rows: 500 +# +# triggers: +# - verification-data_trigger: | +# DECLARE +# errors text[][] := '{{}}'; +# crval RECORD; +# BEGIN +# errors := errors || required_error(NEW.report_date, 'report_date'); +# errors := errors || required_error(NEW.total, 'total'); +# errors := errors || required_error(NEW.admin_action, 'admin_action'); +# errors := errors || required_error(NEW.enforcement_action, 'enforcement_action'); +# IF errors = '{{}}' THEN +# RETURN NEW; +# END IF; +# RAISE EXCEPTION E'TAB-DELIMITED\t%', array_to_string(errors, E'\t'); +# END; +# - update_record_modified_created_trigger +# +# examples: +# record: +# report_date: "2022-02-14" +# total: 19 +# admin_action: 3 +# enforcement_action: 1 +# additional_information_en: "optional additional information goes here" +# additional_information_fr: "text" +# filters: +# report_date: "2022-02-14" +# filter_one: +# report_date: "2022-02-14" +# sort: report_date desc excel_edge_style: PatternFill: