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