-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathcourses_load.py
More file actions
47 lines (41 loc) · 1.46 KB
/
courses_load.py
File metadata and controls
47 lines (41 loc) · 1.46 KB
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
import os
import sys
import ldlite
ld = ldlite.LDLite()
ld.connect_folio(
url=os.environ['FOLIOURL'],
tenant=os.environ['FOLIOTENANT'],
user=os.environ['FOLIOUSER'],
password=os.environ['FOLIOPASSWORD'],
)
db = ld.connect_db_postgresql(dsn=f"""
dbname={os.environ['PGDATABASE']}
host={os.environ['PGHOST']}
port={os.environ['PGPORT']}
user={os.environ['PGUSER']}
password={os.environ['PGPASSWORD']}
""")
queries = [
('courses.coursereserves_copyrightstates', '/coursereserves/copyrightstatuses'),
('courses.coursereserves_courselistings', '/coursereserves/courselistings'),
('courses.coursereserves_courses', '/coursereserves/courses'),
('courses.coursereserves_coursetypes', '/coursereserves/coursetypes'),
('courses.coursereserves_departments', '/coursereserves/departments'),
('courses.coursereserves_processingstates', '/coursereserves/processingstatuses'),
('courses.coursereserves_reserves', '/coursereserves/reserves'),
('courses.coursereserves_roles', '/coursereserves/roles'),
('courses.coursereserves_terms', '/coursereserves/terms'),
]
tables = []
for q in queries:
try:
t = ld.query(table=q[0], path=q[1], keep_raw=False)
tables += t
except Exception as ex:
print('folio_demo.py: error processing "' + q[1] + '"', file=sys.stderr)
print(ex, file=sys.stderr)
print()
print('Tables:')
for t in tables:
print(t)
print('(' + str(len(tables)) + ' tables)')