Schnittstelle CampusOnline (TU Graz) zu SuperX-Modul COSTAGE http://www.superx-projekt.de/doku/costage_modul/
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

41 lines
2.9 KiB

--Freemarker Template
<#assign files = [
{"srcfile":"px_st_abschlussziele_amtstat_v.csv", "targettable":"costage_st_abschlussziele_amtstat", "targetfile":"costage_st_abschlussziele_amtstat.unl"},
{"srcfile":"px_st_abschlussziele_lokal_v.csv", "targettable":"costage_st_abschlussziele_lokal", "targetfile":"costage_st_abschlussziele_lokal.unl"},
{"srcfile":"px_st_fachsemester_v.csv", "targettable":"costage_st_fachsemester", "targetfile":"costage_st_fachsemester.unl"},
{"srcfile":"px_st_fakultaeten_v.csv", "targettable":"costage_st_fakultaeten", "targetfile":"costage_st_fakultaeten.unl"},
{"srcfile":"px_st_hauptstudien_v.csv", "targettable":"costage_st_hauptstudien", "targetfile":"costage_st_hauptstudien.unl"},
{"srcfile":"px_st_hoererstatus_v.csv", "targettable":"costage_st_hoererstatus", "targetfile":"costage_st_hoererstatus.unl"},
{"srcfile":"px_st_laender_v.csv", "targettable":"costage_st_laender", "targetfile":"costage_st_laender.unl"},
{"srcfile":"px_st_land_regionen_v.csv", "targettable":"costage_st_land_regionen", "targetfile":"costage_st_land_regionen.unl"},
{"srcfile":"px_st_semester_v.csv", "targettable":"costage_st_semester_neu", "targetfile":"costage_st_semester.unl"},
{"srcfile":"px_st_studienarten_v.csv", "targettable":"costage_st_studienarten", "targetfile":"costage_st_studienarten.unl"},
{"srcfile":"px_st_studienfaecher_v.csv", "targettable":"costage_st_studienfaecher", "targetfile":"costage_st_studienfaecher.unl"},
{"srcfile":"px_st_studiengaenge_mtsg_v.csv", "targettable":"costage_st_studiengaenge_mtsg", "targetfile":"costage_st_studiengaenge_mtsg.unl"},
{"srcfile":"px_st_studiengaenge_v.csv", "targettable":"costage_st_studiengaenge_neu", "targetfile":"costage_st_studiengaenge.unl"},
{"srcfile":"px_st_studienkennzahlen_v.csv", "targettable":"costage_st_studienkennzahlen", "targetfile":"costage_st_studienkennzahlen.unl", "specialrule":"delete from costage_st_studienkennzahlen where unikey != '8140'"},
{"srcfile":"px_st_studienstatus_v.csv", "targettable":"costage_st_studienstatus", "targetfile":"costage_st_studienstatus.unl"},
{"srcfile":"px_st_studien_spoversionen_v.csv", "targettable":"costage_st_studien_spoversionen", "targetfile":"costage_st_studien_spoversionen.unl"},
{"srcfile":"px_st_studien_v.csv", "targettable":"costage_st_studien", "targetfile":"costage_st_studien.unl"},
{"srcfile":"px_st_studierendenstammdaten_v.csv", "targettable":"costage_st_studierendenstammdaten_neu", "targetfile":"costage_st_studierendenstammdaten.unl", "specialrule":"update costage_st_studierendenstammdaten_neu set aufnahmedatum=now() where st_studstamm_nr=419856"}
] />
<#foreach file in files>
truncate table ${file.targettable};
vacuum full ${file.targettable};
\copy ${file.targettable} from 'unl/${file.srcfile}' with delimiter ',' quote '"' null as '' csv header encoding 'LATIN-1'
<#if file.specialrule?exists>
${file.specialrule};
</#if>
\! sx_unload_table.x ${file.targettable} unl/${file.targetfile}
</#foreach>