-
Notifications
You must be signed in to change notification settings - Fork 36
/
dac.yaml
338 lines (313 loc) · 11.5 KB
/
dac.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
dataset_type: dac
target_dataset: dac
title: Proactive Publication - Departmental Audit Committee
shortname: Departmental Audit Committee
notes: Access, upload and modify your Departmental Audit Committee members’ remuneration and expenses.
template_version: 3
portal_type: info
collection: pd
resources:
- title: Proactive Publication - Departmental Audit Committee
resource_name: dac
published_resource_id: 499383b6-cd2a-466a-9fcf-910d3e427700
create_form: true
edit_form: true
fields:
- datastore_id: reporting_period
label:
en: Reporting Period
fr: Période de déclaration
description:
en: The current reporting period and fiscal year
fr: La période de déclaration et l’exercice financier en cours.
obligation: Mandatory
form_required: true
datastore_type: text
choices:
2018-2019-Q1: 2018-2019-Q1
2018-2019-Q2: 2018-2019-Q2
2018-2019-Q3: 2018-2019-Q3
2018-2019-Q4: 2018-2019-Q4
2019-2020-Q1: 2019-2020-Q1
2019-2020-Q2: 2019-2020-Q2
2019-2020-Q3: 2019-2020-Q3
2019-2020-Q4: 2019-2020-Q4
2020-2021-Q1: 2020-2021-Q1
2020-2021-Q2: 2020-2021-Q2
2020-2021-Q3: 2020-2021-Q3
2020-2021-Q4: 2020-2021-Q4
2021-2022-Q1: 2021-2022-Q1
2021-2022-Q2: 2021-2022-Q2
2021-2022-Q3: 2021-2022-Q3
2021-2022-Q4: 2021-2022-Q4
2022-2023-Q1: 2022-2023-Q1
2022-2023-Q2: 2022-2023-Q2
2022-2023-Q3: 2022-2023-Q3
2022-2023-Q4: 2022-2023-Q4
2023-2024-Q1: 2023-2024-Q1
2023-2024-Q2: 2023-2024-Q2
2023-2024-Q3: 2023-2024-Q3
2023-2024-Q4: 2023-2024-Q4
2024-2025-Q1: 2024-2025-Q1
2024-2025-Q2: 2024-2025-Q2
2024-2025-Q3: 2024-2025-Q3
2024-2025-Q4: 2024-2025-Q4
- datastore_id: line_number
label:
en: Line Number
fr: Numéro de ligne
description:
en: The line number of the disclosure.
fr: Le numéro de ligne de la divulgation.
obligation: Mandatory
form_required: true
datastore_type: int
- datastore_id: member_name
label:
en: Member’s Name
fr: Nom du membre
description:
en: The member’s full name.
fr: Le nom complet du membre.
obligation: Mandatory
excel_required: true
form_required: true
format_type: Free text
validation: This field must not be empty
datastore_type: text
form_attrs:
size: 60
- datastore_id: province
label:
en: Province or Territory of Primary Residence
fr: Province ou territoire de résidence primaire
excel_heading:
en: |
Province or Territory
of Primary Residence
fr: |
Province ou territoire
de résidence primaire
description:
en: The province or territory of the member’s main residence at the time the remuneration and/or expenses were incurred.
fr: La province ou le territoire de la résidence principale du membre au moment où la rémunération et/ou les frais ont été engagés.
obligation: Mandatory
excel_required: true
form_required: true
excel_full_text_choices: true
format_type: Controlled List
datastore_type: text
choices:
"ON":
en: Ontario
fr: Ontario
QC:
en: Quebec
fr: Québec
NB:
en: New Brunswick
fr: Nouveau-Brunswick
NL:
en: Newfoundland & Labrador
fr: Terre-Neuve-et-Labrador
PE:
en: Prince Edward Island
fr: Île-du-Prince-Édouard
SK:
en: Saskatchewan
fr: Saskatchewan
YT:
en: Yukon
fr: Yukon
AB:
en: Alberta
fr: Alberta
BC:
en: British Columbia
fr: Colombie-Britannique
MB:
en: Manitoba
fr: Manitoba
NT:
en: Northwest Territories
fr: Territoires du Nord-Ouest
NU:
en: Nunavut
fr: Nunavut
NS:
en: Nova Scotia
fr: Nouvelle-Écosse
OTHER:
en: OTHER
fr: AUTRES
- datastore_id: role
label:
en: Role
fr: Rôle
description:
en: The member’s role at the time the remuneration and/or expenses were incurred (i.e. “C-P” is for chair and “M-M” is for member)
fr: Le rôle du membre au moment où la rémunération et/ou les frais ont été engagés (c’est-à-dire, « C-P » est pour président(e) et « M-M » est pour membre).
obligation: Mandatory
excel_required: true
form_required: true
excel_full_text_choices: true
format_type: Controlled List
datastore_type: text
choices:
"C-P":
en: Chair
fr: Président(e)
"M-M":
en: Member
fr: Membre
- datastore_id: meeting_hours
label:
en: Number of Hours Spent at Meeting(s)
fr: Nombre d'heures consacrées à la rencontre (ou aux rencontres)
excel_heading:
en: |
Number of Hours
Spent at Meeting(s)
fr: |
Nombre d'heures consacrées à la
rencontre (ou aux rencontres)
description:
en: "The number of hours when the member met with the committee in person or via teleconference during the reporting period."
fr: "Le nombre d’heures où le membre a rencontré le comité en personne ou par téléconférence au cours de la période de déclaration."
obligation: Mandatory
excel_required: true
form_required: true
format_type: Decimal
validation: This field must not be empty
datastore_type: numeric
- datastore_id: other_hours
label:
en: Number of hours spent on preparation, travel and/or training or orientation
fr: Nombre d'heures consacrées à la préparation, le déplacement et/ou à la formation ou à l'orientation
excel_heading:
en: |
Number of hours spent on preparation,
travel and/or training or orientation
fr: |
Nombre d'heures consacrées à la préparation, le
déplacement et/ou à la formation ou à l'orientation
description:
en: "The number of hours the member spent on preparation, travel and/or training or orientation during the reporting period."
fr: "Le nombre d’heures que le membre a consacré à la préparation, le déplacement et/ou à la formation ou à l’orientation au cours de la période de déclaration."
obligation: Mandatory
excel_required: true
form_required: true
format_type: Decimal
validation: This field must not be empty
datastore_type: numeric
- datastore_id: remuneration
label:
en: Total Remuneration
fr: Rémunération totale
description:
en: The total amount paid to the member for time spent at meetings, preparation, travel and/or training or orientation during the reporting period (i.e. per diem rate ÷ 7.5 hours x number of hours worked).
fr: Le montant total payé au membre pour le temps consacré aux réunions, à la préparation, le déplacement et/ou à la formation ou à l’orientation au cours de la période de déclaration (c’est-à-dire, taux journalier ÷ 7,5 heures x nombre d’heures travaillées).
obligation: Mandatory
excel_required: true
form_required: true
datastore_type: money
- datastore_id: travel_expenses
label:
en: Total Travel Expenses
fr: Frais de voyage totaux
description:
en: The total travel expenses incurred by the member during the reporting period, including transportation, meals, incidentals, etc.
fr: Les frais de voyage totaux engagés par le membre au cours de la période de déclaration, y compris le transport, les repas, faux frais, etc.
obligation: Mandatory
excel_required: true
form_required: true
datastore_type: money
- datastore_id: notes_en
label:
en: Notes (English)
fr: Notes (Anglais)
description:
en: Any other relevant information (e.g. description of the activities included in the total remuneration, point of origin of a member’s travel, etc.)
fr: Toute autre information pertinente (par exemple, une description des activités incluses dans la rémunération totale, le point de départ du déplacement d’un membre, etc.)
excel_column_width: 50
datastore_type: text
form_snippet: scheming/form_snippets/textarea.html
form_attrs:
style: "width: 100%; display: block"
- datastore_id: notes_fr
label:
en: Notes (French)
fr: Notes (Français)
description:
en: Any other relevant information (e.g. description of the activities included in the total remuneration, point of origin of a member’s travel, etc.)
fr: Toute autre information pertinente (par exemple, une description des activités incluses dans la rémunération totale, le point de départ du déplacement d’un membre, etc.)
excel_column_width: 50
datastore_type: text
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: [reporting_period, line_number]
datastore_indexes: ""
excel_data_num_rows: 100
triggers:
- dac_trigger: |
DECLARE
errors text[][] := '{{}}';
crval RECORD;
BEGIN
errors := errors || required_error(NEW.reporting_period, 'reporting_period');
errors := errors || choice_error(NEW.reporting_period, {reporting_period}, 'reporting_period');
errors := errors || required_error(NEW.line_number, 'line_number');
errors := errors || required_error(NEW.member_name, 'member_name');
errors := errors || required_error(NEW.province, 'province');
errors := errors || choice_error(NEW.province, {province}, 'province');
errors := errors || required_error(NEW.meeting_hours, 'meeting_hours');
errors := errors || required_error(NEW.other_hours, 'other_hours');
errors := errors || required_error(NEW.remuneration, 'remuneration');
errors := errors || required_error(NEW.travel_expenses, 'travel_expenses');
errors := errors || required_error(NEW.travel_expenses, 'travel_expenses');
NEW.remuneration := round(NEW.remuneration::NUMERIC, 2);
NEW.travel_expenses := round(NEW.travel_expenses::NUMERIC, 2);
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:
reporting_period: "2018-2019-Q3"
line_number: 2
member_name: "John Smith"
province: "AB"
role: "M-M"
meeting_hours: 7.5
other_hours: 4
remuneration: 2300.00
travel_expenses: 500.00
notes_en: "The total remuneration includes time spent at meetings, preparation time and travel time."
notes_fr: "La rémunération totale comprend le temps passé en réunions, le temps de préparation et le temps de déplacement."
filters:
role: "C-P"
filter_one:
reporting_period: "2018-2019-Q1"
line_number: "1"
sort: reporting_period desc, line_number