910a632c63e33e86135788525e5ab80f79d27e78
[migration-tools.git] / mig-sql / init / 020_common_tables.sql
1 CREATE TABLE map_hold_policies (
2     l_org_unit            TEXT
3     ,l_user_group         TEXT
4     ,l_circ_mod           TEXT
5     ,l_holdable           TEXT
6     ,l_max_holds          TEXT
7     ,l_include_frozen     TEXT
8     ,l_transit_range      TEXT
9     ,l_range_from         TEXT
10     ,l_notes              TEXT
11     ,x_org_unit           INTEGER
12     ,x_grp_id             INTEGER
13     ,x_migrate            BOOLEAN DEFAULT TRUE
14 ) INHERITS (config.hold_matrix_matchpoint);
15
16 INSERT INTO gsheet_tracked_table 
17     (table_name,tab_name,created)
18 VALUES
19     ('map_hold_policies','Hold Policies',NOW())
20 ;
21
22 INSERT INTO gsheet_tracked_column
23     (table_id,column_name)
24 VALUES
25      ((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Hold Policies'),'l_org_unit')
26     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Hold Policies'),'l_user_group')
27     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Hold Policies'),'l_circ_mod')
28     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Hold Policies'),'l_holdable')
29     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Hold Policies'),'l_max_holds')
30     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Hold Policies'),'l_include_frozen')
31     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Hold Policies'),'l_transit_range')
32     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Hold Policies'),'l_range_from')
33     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Hold Policies'),'l_notes')
34 ;
35
36
37  CREATE TABLE map_hold_combo_policies (
38     l_user_home_lib         TEXT
39     ,l_request_lib          TEXT
40     ,l_owning_lib           TEXT
41     ,l_item_circ_lib        TEXT
42     ,l_request_user_group   TEXT
43     ,l_circ_mod             TEXT
44     ,l_active               TEXT
45     ,l_holdable             TEXT
46     ,l_max_holds            TEXT
47     ,l_max_includes_frozen  TEXT
48     ,l_range_from           TEXT
49     ,l_transit_range        TEXT
50     ,l_user_group           TEXT
51     ,l_notes                TEXT
52     ,x_user_home_lib        INTEGER
53     ,x_request_lib          INTEGER
54     ,x_owning_lib           INTEGER
55     ,x_item_circ_lib        INTEGER
56     ,x_request_user_group   INTEGER
57     ,x_circ_mod             TEXT
58     ,x_active               BOOLEAN DEFAULT TRUE
59     ,x_holdable             BOOLEAN DEFAULT TRUE
60     ,x_max_holds            INTEGER
61     ,x_max_includes_frozen  BOOLEAN DEFAULT FALSE
62     ,x_range_from           BOOLEAN DEFAULT TRUE
63     ,x_trasnit_range        INTEGER
64     ,x_user_group           INTEGER
65     ,x_migrate              BOOLEAN DEFAULT TRUE
66 );
67
68 INSERT INTO gsheet_tracked_table
69     (table_name,tab_name,created)
70 VALUES
71     ('map_combo_circ_policies','Hold Combos',NOW())
72 ;
73
74 INSERT INTO gsheet_tracked_column
75     (table_id,column_name)
76 VALUES
77      ((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Hold Combos'),'l_user_home_lib')
78     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Hold Combos'),'l_request_lib')
79     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Hold Combos'),'l_owning_lib')
80     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Hold Combos'),'l_item_circ_lib')
81     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Hold Combos'),'l_request_user_group')
82     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Hold Combos'),'l_circ_mod')
83     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Hold Combos'),'l_active')
84     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Hold Combos'),'l_holdable')
85     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Hold Combos'),'l_max_holds')
86     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Hold Combos'),'l_max_includes_frozen')
87     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Hold Combos'),'l_range_from')
88     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Hold Combos'),'l_transit_range')
89     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Hold Combos'),'l_user_group')
90     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Hold Combos'),'l_notes')
91 ;
92
93 CREATE TABLE map_circ_policies (
94     l_org_unit              TEXT
95     ,l_user_group           TEXT
96     ,l_circ_mod             TEXT
97     ,l_copy_location        TEXT
98     ,l_circulate            TEXT
99     ,l_circ_limit_set       TEXT
100     ,l_duration_rule        TEXT
101     ,l_renewals             TEXT
102     ,l_fine                 TEXT
103     ,l_fine_interval        TEXT
104     ,l_grace_period         TEXT
105     ,l_max_fine             TEXT
106     ,l_grace_override       TEXT
107     ,l_renewal_boolean      TEXT
108     ,l_notes                TEXT
109     ,x_org_unit             INTEGER
110     ,x_grp_id               INTEGER
111     ,x_copy_location        INTEGER
112     ,x_circ_limit           INTEGER
113     ,x_duration             INTEGER
114     ,x_max_fine             INTEGER
115     ,x_fine_interval        INTEGER
116     ,x_migrate              INTEGER
117 ) INHERITS (config.circ_matrix_matchpoint);
118
119 INSERT INTO gsheet_tracked_table
120     (table_name,tab_name,created)
121 VALUES
122     ('map_circ_policies','Circ Policies',NOW())
123 ;
124
125 INSERT INTO gsheet_tracked_column
126     (table_id,column_name)
127 VALUES
128      ((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Circ Policies'),'l_org_unit')
129     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Circ Policies'),'l_user_group')
130     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Circ Policies'),'l_circ_mod')
131     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Circ Policies'),'l_copy_location')
132     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Circ Policies'),'l_circulate')
133     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Circ Policies'),'l_circ_limit_set')
134     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Circ Policies'),'l_duration_rule')
135     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Circ Policies'),'l_renewals')
136     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Circ Policies'),'l_fine')
137     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Circ Policies'),'l_fine_interval')
138     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Circ Policies'),'l_grace_period')
139     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Circ Policies'),'l_max_fine')
140     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Circ Policies'),'l_grace_override')
141     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Circ Policies'),'l_renewal_boolean')
142     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Circ Policies'),'l_notes')
143 ;
144
145
146  CREATE TABLE map_circ_combo_policies (
147     l_active                TEXT
148     ,l_user_group           TEXT
149     ,l_org_unit             TEXT
150     ,l_copy_own_lib         TEXT
151     ,l_user_home_lib        TEXT
152     ,l_circ_mod             TEXT
153     ,l_circulate            TEXT
154     ,l_copy_loc             TEXT
155     ,l_duration_rule        TEXT
156     ,l_recurring_fine_rule  TEXT
157     ,l_grace_override       TEXT
158     ,l_max_fine_rule        TEXT
159     ,l_circ_limit_set_name  TEXT
160     ,l_notes                TEXT
161     ,x_active               BOOLEAN
162     ,x_user_group           INTEGER
163     ,x_org_unit             INTEGER
164     ,x_copy_own_lib         INTEGER
165     ,x_user_home_lib        INTEGER
166     ,x_circ_mod             TEXT
167     ,x_circulate            BOOLEAN
168     ,x_copy_loc             INTEGER
169     ,x_duration_rule        INTEGER
170     ,x_recurring_fine_rule  INTEGER
171     ,x_grace_override       INTERVAL
172     ,x_max_fine_rule        INTEGER
173     ,x_circ_limit_set       INTEGER
174     ,x_migrate              BOOLEAN DEFAULT TRUE
175 );
176
177 INSERT INTO gsheet_tracked_table
178     (table_name,tab_name,created)
179 VALUES
180     ('map_combo_circ_policies','Circ Combos',NOW())
181 ;
182
183 INSERT INTO gsheet_tracked_column
184     (table_id,column_name)
185 VALUES
186      ((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Circ Combos'),'l_active')
187     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Circ Combos'),'l_user_group')
188     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Circ Combos'),'l_org_unit')
189     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Circ Combos'),'l_copy_own_lib')
190     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Circ Combos'),'l_user_home_lib')
191     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Circ Combos'),'l_circ_mod')
192     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Circ Combos'),'l_circulate')
193     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Circ Combos'),'l_copy_loc')
194     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Circ Combos'),'l_duration_rule')
195     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Circ Combos'),'l_recurring_fine_rule')
196     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Circ Combos'),'l_grace_override')
197     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Circ Combos'),'l_max_fine_rule')
198     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Circ Combos'),'l_circ_limit_set_name')
199     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Circ Combos'),'l_notes')
200 ;
201
202 CREATE TABLE map_create_shelving_location (
203     l_id                  SERIAL
204     ,l_owning_lib         TEXT            
205     ,l_copy_location      TEXT
206     ,l_opac_visible       TEXT
207     ,l_checkin_alert      TEXT
208     ,l_holdable           TEXT
209     ,l_circulate          TEXT
210     ,l_note               TEXT
211     ,x_migrate            BOOLEAN NOT NULL DEFAULT TRUE
212     ,x_shelf              INTEGER
213 ) INHERITS (asset_copy_location);
214
215 INSERT INTO gsheet_tracked_table 
216     (table_name,tab_name,created)
217 VALUES 
218     ('map_create_shelving_location','New Copy Locations',NOW())
219 ;
220
221 INSERT INTO gsheet_tracked_column 
222     (table_id,column_name) 
223 VALUES 
224      ((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'New Copy Locations'),'l_owning_lib')
225     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'New Copy Locations'),'l_copy_location')
226     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'New Copy Locations'),'l_opac_visible')
227     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'New Copy Locations'),'l_checkin_alert')
228     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'New Copy Locations'),'l_holdable')
229     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'New Copy Locations'),'l_circulate')
230     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'New Copy Locations'),'l_note')
231 ;
232
233 CREATE TABLE map_create_account (
234     l_id                  SERIAL
235     ,l_usrname            TEXT            
236     ,l_first_name         TEXT
237     ,l_family_name        TEXT
238     ,l_email              TEXT
239     ,l_password           TEXT
240     ,l_home_library       TEXT
241     ,l_profile1           TEXT
242     ,l_profile2           TEXT
243     ,l_profile3           TEXT
244     ,l_work_ou            TEXT
245     ,l_note               TEXT
246     ,l_note2              TEXT
247     ,x_migrate            BOOLEAN NOT NULL DEFAULT TRUE
248 ) INHERITS (actor_usr);
249
250 INSERT INTO gsheet_tracked_table 
251     (table_name,tab_name,created)
252 VALUES 
253     ('map_create_account','New Accounts',NOW())
254 ;
255
256 INSERT INTO gsheet_tracked_column 
257     (table_id,column_name) 
258 VALUES 
259      ((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'New Accounts'),'l_usrname')
260     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'New Accounts'),'l_first_name')
261     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'New Accounts'),'l_family_name')
262     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'New Accounts'),'l_email')
263     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'New Accounts'),'l_password')
264     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'New Accounts'),'l_home_library')
265     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'New Accounts'),'l_profile1')
266     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'New Accounts'),'l_profile2')
267     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'New Accounts'),'l_profile3')
268     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'New Accounts'),'l_work_ou')
269     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'New Accounts'),'l_note')
270     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'New Accounts'),'l_note2')
271 ;
272
273
274 CREATE TABLE map_threshold (
275     id                  SERIAL
276     ,profile            TEXT            
277     ,checkout_threshold TEXT
278     ,fine_threshold     TEXT
279     ,overdue_threshold  TEXT
280     ,note               TEXT
281 );
282
283 INSERT INTO gsheet_tracked_table 
284     (table_name,tab_name,created)
285 VALUES 
286     ('map_threshold','Patron Thresholds',NOW())
287 ;
288
289 INSERT INTO gsheet_tracked_column 
290     (table_id,column_name) 
291 VALUES 
292      ((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Patron Thresholds'),'profile')
293     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Patron Thresholds'),'checkout_threshold')
294     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Patron Thresholds'),'fine_threshold')
295     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Patron Thresholds'),'overdue_threshold')
296     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Patron Thresholds'),'note')
297 ;
298
299
300 CREATE TABLE map_misc (
301     id             SERIAL
302     ,count       TEXT            
303     ,option        TEXT
304     ,choice        TEXT
305     ,value         TEXT
306     ,note          TEXT
307 );
308
309 INSERT INTO gsheet_tracked_table 
310     (table_name,tab_name,created)
311 VALUES 
312     ('map_misc','Miscellaneous Options',NOW())
313 ;
314
315 INSERT INTO gsheet_tracked_column 
316     (table_id,column_name) 
317 VALUES 
318      ((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Miscellaneous Options'),'count')
319     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Miscellaneous Options'),'option')
320     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Miscellaneous Options'),'Choice')
321     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Miscellaneous Options'),'value')
322     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Miscellaneous Options'),'note')
323 ;
324
325 CREATE TABLE map_org_setting (
326     l_id             SERIAL
327     ,l_name          TEXT            
328     ,l_label         TEXT
329     ,l_entry_type    TEXT
330     ,l_org_unit      TEXT
331     ,l_value         TEXT
332     ,l_note          TEXT
333 );
334
335 INSERT INTO gsheet_tracked_table 
336     (table_name,tab_name,created)
337 VALUES 
338     ('map_org_setting','Org Settings',NOW())
339 ;
340
341 INSERT INTO gsheet_tracked_column 
342     (table_id,column_name) 
343 VALUES 
344      ((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Org Settings'),'l_name')
345     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Org Settings'),'l_label')
346     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Org Settings'),'l_entry_type')
347     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Org Settings'),'l_org_unit')
348     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Org Settings'),'l_value')
349     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Org Settings'),'l_note')
350 ;
351
352
353 CREATE TABLE map_bib_manipulations (
354     id               SERIAL
355     ,action          TEXT
356     ,field           TEXT
357     ,subfield        TEXT
358     ,matching_value  TEXT
359     ,target_value    TEXT
360     ,note            TEXT
361 );
362
363 INSERT INTO gsheet_tracked_table
364     (table_name,tab_name,created)
365 VALUES
366     ('map_bib_manipulations','Bib Records',NOW())
367 ;
368
369 INSERT INTO gsheet_tracked_column
370     (table_id,column_name)
371 VALUES
372      ((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Bib Records'),'name')
373     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Bib Records'),'action')
374     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Bib Records'),'field')
375     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Bib Records'),'subfield')
376     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Bib Records'),'matching_value')
377     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Bib Records'),'target_value')
378     ,((SELECT id FROM gsheet_tracked_table WHERE tab_name = 'Bib Records'),'note')
379 ;
380
381