Browse Source

Lehrveranst., Einzelprüfungen, Logging verbessert #1

COStage_0.3_Release
Daniel Quathamer 2 years ago
parent
commit
e46f5c1366
  1. 236
      src-modules/module/costage/conf/costage.xml
  2. 8
      src-modules/module/costage/datentabellen/check_studierende.sql
  3. 37
      src-modules/module/costage/datentabellen/trans_costage_lehrveranstaltungen.sql
  4. 24
      src-modules/module/costage/datentabellen/trans_costage_lv_teilnehmende.sql
  5. 20
      src-modules/module/costage/datentabellen/trans_costage_st_studienstatus.sql
  6. 89
      src-modules/module/costage/datentabellen/trans_costage_st_studierendenstammdaten.sql
  7. 89
      src-modules/module/costage/hilfstabellen/costage_bw_antr_aggr_fuellen.sql
  8. 280
      src-modules/module/costage/hilfstabellen/costage_st_einzpruef_aggr_fuellen.sql
  9. 7
      src-modules/module/costage/hilfstabellen/costage_st_lv_aggr_fuellen.sql
  10. 4
      src-modules/module/costage/hilfstabellen/vacuum_pg.sql
  11. 2
      src-modules/module/costage/masken/43080_maskeninfo.unl
  12. 5
      src-modules/module/costage/masken/43110_felderinfo.unl
  13. 3
      src-modules/module/costage/masken/43110_maskeninfo.unl
  14. 56
      src-modules/module/costage/masken/43180_felderinfo.unl
  15. 1
      src-modules/module/costage/masken/43180_maske_system_bez.unl
  16. 21
      src-modules/module/costage/masken/43180_masken_felder_bez.unl
  17. 152
      src-modules/module/costage/masken/43180_maskeninfo.unl
  18. 1
      src-modules/module/costage/masken/43180_sachgeb_maske_bez.unl
  19. 617
      src-modules/module/costage/rohdaten/costage_prepare_unlfiles.x
  20. 29
      src-modules/module/costage/rohdaten/costage_unload.xml
  21. 6
      src-modules/module/costage/rohdaten_sos/sos_costage_unload.xml
  22. 24
      src-modules/module/costage/schluesseltabellen/konstanten_fuellen.sql
  23. 3
      src-modules/module/costage/schluesseltabellen/sx_stylesheets_einfuegen.sql
  24. 2
      src-modules/module/costage/upgrade/costage_upgrade_man.sql

236
src-modules/module/costage/conf/costage.xml

@ -130,6 +130,8 @@ rightname="CS_BIA_STANDARDREPORTS_ADMIN[CO]" />
<column name="hzb" type ="CHAR" size ="1" default ="" notnull ="false" /> <column name="hzb" type ="CHAR" size ="1" default ="" notnull ="false" />
<column name="staatsbuergerschaft" type ="CHAR" size ="1" default ="" notnull ="false" /> <column name="staatsbuergerschaft" type ="CHAR" size ="1" default ="" notnull ="false" />
<column name="kfz_kennzeichen" type ="CHAR" size ="10" default ="" notnull ="false" /> <column name="kfz_kennzeichen" type ="CHAR" size ="10" default ="" notnull ="false" />
<column name="eu" type ="CHAR" size ="10" default ="" notnull ="false" ><comment>Enthält ein X, wenn das Land ein EU-Mitglied ist.</comment></column>
<column name="nat_key" type ="CHAR" size ="10" default ="" notnull ="false" ><comment>Schlüsselwert des Landes laut Vorgabe des Wissenschaftsministeriums (AT). Der Schlüsselwert entspricht der ehemaligen Codex-Nationentabelle.</comment></column>
</columns> </columns>
<indexes></indexes> <indexes></indexes>
@ -383,7 +385,22 @@ rightname="CS_BIA_STANDARDREPORTS_ADMIN[CO]" />
<foreignKeys><rs> <foreignKeys><rs>
</rs></foreignKeys> </rs></foreignKeys>
</table> </table>
<table name="costage_st_studienstatus_neu" thema="Studierende und Gebühren" caption="Studienstatus pro Semester (CO)" typ="Ladetabelle" releaseUnload="empty">
<description>Studienstatus pro Semester (CO)</description>
<columns>
<column name="st_studienstatus_nr" type ="DECIMAL" size ="(38,0)" default ="" notnull ="true" />
<column name="st_studium_nr" type ="INTEGER" size ="8" default ="" notnull ="true" />
<column name="studienstatustyp" type ="VARCHAR" size ="240" default ="" notnull ="true" />
<column name="beginn_datum" type ="DATETIME" size ="7" default ="" notnull ="true" />
<column name="gueltig_ab" type ="DATETIME" size ="7" default ="" notnull ="true" />
<column name="st_sem_nr" type ="INTEGER" size ="8" default ="" notnull ="true" />
</columns>
<indexes></indexes>
<primaryKeys><rs>
</rs></primaryKeys>
<foreignKeys><rs>
</rs></foreignKeys>
</table>
<table name="costage_st_studien_spoversionen" thema="Studierende und Gebühren" caption="SPO-Versionen pro Studium" typ="Datentabelle" releaseUnload="empty"> <table name="costage_st_studien_spoversionen" thema="Studierende und Gebühren" caption="SPO-Versionen pro Studium" typ="Datentabelle" releaseUnload="empty">
<columns><column name="st_studium_nr" type ="INTEGER" size ="8" default ="" notnull ="true" /> <columns><column name="st_studium_nr" type ="INTEGER" size ="8" default ="" notnull ="true" />
@ -567,7 +584,7 @@ rightname="CS_BIA_STANDARDREPORTS_ADMIN[CO]" />
<column name="studiengang_nr" type ="INTEGER" size ="8" default ="" notnull ="false" description="Studiengang (Nr.)" currentlyUsed="false" /> <column name="studiengang_nr" type ="INTEGER" size ="8" default ="" notnull ="false" description="Studiengang (Nr.)" currentlyUsed="false" />
<column name="fach_nr" type ="INTEGER" size ="8" default ="" notnull ="false" description="Fach (Nr.)" /> <column name="fach_nr" type ="INTEGER" size ="8" default ="" notnull ="false" description="Fach (Nr.)" />
<column name="fachsemester" type ="INTEGER" size ="4" default ="" notnull ="false" description="Fachsemester" /> <column name="fachsemester" type ="INTEGER" size ="4" default ="" notnull ="false" description="Fachsemester" />
<column name="leistung_nr" type ="INTEGER" size ="4" default ="" notnull ="true" description="Eindeutige Laufnummer" /> <column name="leistung_nr" type ="INTEGER" size ="4" default ="" notnull ="true" description="Laufnummer der Leistung" />
<column name="leistungstyp_nr" type ="INTEGER" size ="4" default ="" notnull ="true" description="Leistungstyp" /> <column name="leistungstyp_nr" type ="INTEGER" size ="4" default ="" notnull ="true" description="Leistungstyp" />
<column name="leistungsdetailtyp_kb" type ="VARCHAR" size ="10" default ="" notnull ="false" description="Leistungsdetailtyp" /> <column name="leistungsdetailtyp_kb" type ="VARCHAR" size ="10" default ="" notnull ="false" description="Leistungsdetailtyp" />
<column name="pnr" type ="INTEGER" size ="10" default ="" notnull ="false" description="Prüfungselement Nr." currentlyUsed="false"/> <column name="pnr" type ="INTEGER" size ="10" default ="" notnull ="false" description="Prüfungselement Nr." currentlyUsed="false"/>
@ -600,12 +617,75 @@ rightname="CS_BIA_STANDARDREPORTS_ADMIN[CO]" />
</indexes> </indexes>
</table> </table>
<table name="costage_st_einzpruef_aggr" thema="Prüfungen und Leistungen" caption="Einzelprüfungen (CO)" typ="Hilfstabelle" releaseUnload="empty">
<columns><column name="st_studium_nr" type ="INTEGER" size ="8" default ="" notnull ="true" description="Studium (ID)" />
<column name="st_studstamm_nr" type ="INTEGER" size ="8" default ="" notnull ="true" description="Studierendenstammdaten (ID)" />
<column name="matrikelnummer" type ="INTEGER" size ="8" default ="" notnull ="false" description="Matrikelnummer" />
<column name="semester" type ="INTEGER" size ="8" default ="" notnull ="false" description="Semester" currentlyUsed="false"><comment>des Prüfungsdatums</comment></column>
<column name="semester_veranst" type ="INTEGER" size ="8" default ="" notnull ="false" description="Semester der Veranstaltung" />
<column name="st_studiengang_nr" type ="INTEGER" size ="8" default ="" notnull ="false" description="Studiengang (ID)" />
<column name="st_studiengang_nr_msg" type ="INTEGER" size ="8" default ="" notnull ="false" description="Studiengang (ID) des MSG" ><comment>nur bei TSG</comment></column>
<column name="unikey" type ="CHAR" size ="10" default ="" notnull ="false" description="Hochschulnummer" />
<column name="studienidentifikator" type ="VARCHAR" size ="255" default ="" notnull ="false" description="Studienidentifikator"/>
<column name="studiengang_nr" type ="INTEGER" size ="8" default ="" notnull ="false" description="Studiengang (Nr.)" currentlyUsed="false" />
<column name="fach_nr" type ="INTEGER" size ="8" default ="" notnull ="false" description="Fach (Nr.)" />
<column name="fachsemester" type ="INTEGER" size ="4" default ="" notnull ="false" description="Fachsemester" />
<column name="leistung_nr" type ="INTEGER" size ="4" default ="" notnull ="true" description="Laufnummer der Leistung" />
<column name="leistungstyp_nr" type ="INTEGER" size ="4" default ="" notnull ="true" description="Leistungstyp" />
<column name="leistungsdetailtyp_kb" type ="VARCHAR" size ="10" default ="" notnull ="false" description="Leistungsdetailtyp" />
<column name="pnr" type ="INTEGER" size ="10" default ="" notnull ="false" description="Prüfungselement Nr." currentlyUsed="false"/>
<column name="abschnitt" type ="INTEGER" size ="4" default ="" notnull ="false" description="Studienabschnitt" currentlyUsed="false"><comment>Hauptprüfung/TSAB</comment></column>
<column name="stp_sp_nr" type ="INTEGER" size ="4" default ="" notnull ="false" description="Prüfungsordnung Nr."><comment>Prüfungsordnung Nr.</comment></column>
<column name="veranstaltung_nummer" type ="VARCHAR" size ="25" default ="" notnull ="false" description="Nummer der Lehr- oder Prüfungsveranstaltung"><comment></comment></column>
<column name="veranstaltung_titel" type ="VARCHAR" size ="255" default ="" notnull ="false" description="Titel der Lehr- oder Prüfungsveranstaltung"><comment></comment></column>
<column name="veranstaltung_art" type ="VARCHAR" size ="2" default ="" notnull ="false" description="Art der Lehr- oder Prüfungsveranstaltung"><comment></comment></column>
<column name="semesterstunden" type ="FLOAT" size ="4" default ="" notnull ="false" description="Semesterstunden"><comment></comment></column>
<column name="unterrichtseinheiten" type ="INTEGER" size ="4" default ="" notnull ="false" description="Kontaktstunden"><comment></comment>der Lehr- oder Prüfungsveranstaltung im Semester</column>
<column name="thema_individuell" type ="VARCHAR" size ="255" default ="" notnull ="false" description="Individuelles Thema"><comment>einer*eines Studierenden bei der Leistung (z. B. wenn Abschlussarbeiten im Rahmen einer Lehrveranstaltung erstellt werden).</comment></column>
<column name="note" type ="FLOAT" size ="4" default ="" notnull ="false" description="Note"/>
<column name="credits" type ="FLOAT" size ="4" default ="" notnull ="false" description="Credits" />
<column name="leistungsdatum" type ="DATE" size ="7" default ="" notnull ="false" description="Prüfungsdatum"/>
<column name="anerkannt_flag" type ="CHAR" size ="1" default ="" notnull ="false" description="Anerkennung (J/N)"/>
<column name="zusatzleistung_flag" type ="CHAR" size ="10" default ="" notnull ="false" description="Zusatzleistung (J/N)"/>
<column name="leistungsstatus_nr" type ="INTEGER" size ="4" default ="" notnull ="false" description="Redaktionsstatus" currentlyUsed="false" ><comment>gültig/In Bearbeitung </comment></column>
<column name="leistungsstatus_map_kb" type ="CHAR" size ="10" default ="" notnull ="false" description="Prüfungsstatus"/>
<column name="leistung_nr_msg" type ="INTEGER" size ="4" default ="" notnull ="false" description="Eindeutige Laufnummer MSG" currentlyUsed="false" />
<column name="leistungsdatum_msg" type ="DATE" size ="7" default ="" notnull ="false" description="Prüfungsdatum MSG" currentlyUsed="false"/>
<column name="semester_msg" type ="INTEGER" size ="8" default ="" notnull ="false" description="Semester MSG" currentlyUsed="false"/>
<!-- aus Tabelle studienplankontexte -->
<column name="spo_st_studium_nr" type ="INTEGER" size ="4" default ="" notnull ="false" description="Studium (SPO-Kontext)" />
<column name="context_type" type ="VARCHAR" size ="255" default ="" notnull ="false" description="SPO-Kontext Typ"/>
<column name="stp_knoten_nr_sichtbar" type ="INTEGER" size ="4" default ="" notnull ="false" description="Studienplankontext sichtbar" />
<column name="ghk_nr" type ="INTEGER" size ="4" default ="" notnull ="false" description="Gleichheitsknoten Laufnummer"/>
<!-- aus Tabelle gleichheitsknoten: -->
<column name="ghk_typ_kurzbezeichnung" type ="VARCHAR" size ="255" default ="" notnull ="false" description="Gleichheitsknoten Typ"/>
<column name="summe" type ="INTEGER" size ="2" default ="" notnull ="false" description="Summe" />
</columns>
<indexes>
<index name="ix_costage_st_einzpruef_aggr1" unique="false">
<index-column name="matrikelnummer"/>
</index>
<index name="ix_costage_st_einzpruef_aggr2" unique="false">
<index-column name="semester"/>
</index>
<index name="ix_costage_st_einzpruef_aggr3" unique="false">
<index-column name="leistungsdetailtyp_kb"/>
</index>
<index name="ix_costage_st_einzpruef_aggr4" unique="false">
<index-column name="leistungsstatus_nr"/>
</index>
</indexes>
</table>
<table name="costage_bw_antr_aggr" thema="Bewerbungen" caption="Bewerbungen (CO)" typ="Hilfstabelle" releaseUnload="empty"> <table name="costage_bw_antr_aggr" thema="Bewerbungen" caption="Bewerbungen (CO)" typ="Hilfstabelle" releaseUnload="empty">
<columns> <columns>
<column name="nr" type ="INTEGER" size ="4" default ="" notnull ="true" /> <column name="nr" type ="INTEGER" size ="4" default ="" notnull ="true" description="Bewerbungsnr."/>
<column name="st_studstamm_nr" type ="INTEGER" size ="8" default ="" notnull ="true" description="Studierendenstammdaten (ID)" /> <column name="st_studstamm_nr" type ="INTEGER" size ="8" default ="" notnull ="true" description="Person-Nr." />
<column name="matrikelnummer" type ="INTEGER" size ="8" default ="" notnull ="false" description="Matrikelnummer" /> <column name="matrikelnummer" type ="INTEGER" size ="8" default ="" notnull ="false" description="Matrikelnummer" />
<column name="semester" type ="INTEGER" size ="8" default ="" notnull ="false" description="Semester" ><comment>desPrüfungsdatums</comment></column> <column name="semester" type ="INTEGER" size ="8" default ="" notnull ="false" description="Semester" ><comment></comment></column>
<column name="st_studiengang_nr" type ="INTEGER" size ="8" default ="" notnull ="false" description="Studiengang (ID)" /> <column name="st_studiengang_nr" type ="INTEGER" size ="8" default ="" notnull ="false" description="Studiengang (ID)" />
<column name="st_studiengang_nr_msg" type ="INTEGER" size ="8" default ="" notnull ="false" description="Studiengang (ID) des MSG" ><comment>nur bei TSG</comment></column> <column name="st_studiengang_nr_msg" type ="INTEGER" size ="8" default ="" notnull ="false" description="Studiengang (ID) des MSG" ><comment>nur bei TSG</comment></column>
<column name="unikey" type ="CHAR" size ="10" default ="" notnull ="false" description="Hochschulnummer" /> <column name="unikey" type ="CHAR" size ="10" default ="" notnull ="false" description="Hochschulnummer" />
@ -614,10 +694,21 @@ rightname="CS_BIA_STANDARDREPORTS_ADMIN[CO]" />
<column name="fach_nr" type ="INTEGER" size ="8" default ="" notnull ="false" description="Fach (Nr.)" /> <column name="fach_nr" type ="INTEGER" size ="8" default ="" notnull ="false" description="Fach (Nr.)" />
<column name="fachsemester" type ="INTEGER" size ="4" default ="" notnull ="false" description="Fachsemester" /> <column name="fachsemester" type ="INTEGER" size ="4" default ="" notnull ="false" description="Fachsemester" />
<column name="stufrm" type ="CHAR" size ="10" default ="" notnull ="false" description="Studienform"/> <column name="stufrm" type ="CHAR" size ="10" default ="" notnull ="false" description="Studienform"/>
<column name="semester_msg" type ="INTEGER" size ="8" default ="" notnull ="false" description="Semester MSG" /> <column name="bw_bewerbng_nr_msg" type ="INTEGER" size ="8" default ="" notnull ="false" description="Bewerbung MSG" />
<column name="bw_sb_svor_nr" type ="INTEGER" size ="4" default ="" notnull ="true" /> <column name="bw_sb_svor_nr" type ="INTEGER" size ="4" default ="" notnull ="true" />
<column name="bw_zul_art_nr" type ="INTEGER" size ="4" default ="" notnull ="false" /> <column name="bw_zul_art_nr" type ="INTEGER" size ="4" default ="" notnull ="false" />
<column name="bw_typ_kb" type ="VARCHAR" size ="10" default ="" notnull ="true" /> <column name="bw_typ_kb" type ="VARCHAR" size ="10" default ="" notnull ="true" />
<column name="status_vss" type ="VARCHAR" size ="10" default ="" notnull ="false" description="Status formale Zulassungsvoraussetzungen" />
<column name="status_dok" type ="VARCHAR" size ="10" default ="" notnull ="false" description="Status Bewerbungsunterlagen" />
<column name="status_zul" type ="VARCHAR" size ="10" default ="" notnull ="false" description="Status Zulassung" />
<column name="status_stpl" type ="VARCHAR" size ="10" default ="" notnull ="false" description="Status Studienplatzangebot" />
<column name="status_qvss" type ="VARCHAR" size ="10" default ="" notnull ="false" description="Status Fachliche Zulassungsvoraussetzungen" />
<column name="status_abgabe" type ="VARCHAR" size ="10" default ="" notnull ="false" description="Status Bewerbungsabgabe" />
<column name="status_evs" type ="VARCHAR" size ="10" default ="" notnull ="false" description="Status Einschreibungsvoraussetzungen" />
<column name="bew_kz" type ="VARCHAR" size ="10" default ="" notnull ="false" description="Kennzeichen gültige Bewerbung" />
<column name="zul_kz" type ="VARCHAR" size ="10" default ="" notnull ="false" description="Kennzeichen Zulassung" />
<column name="annahme_kz" type ="VARCHAR" size ="10" default ="" notnull ="false" description="Kennzeichen Annahme" />
<column name="einschreib_kz" type ="VARCHAR" size ="10" default ="" notnull ="false" description="Kennzeichen Einschreibung" />
<column name="summe" type ="INTEGER" size ="2" default ="" notnull ="false" description="Summe" /> <column name="summe" type ="INTEGER" size ="2" default ="" notnull ="false" description="Summe" />
</columns> </columns>
</table> </table>
@ -703,8 +794,8 @@ rightname="CS_BIA_STANDARDREPORTS_ADMIN[CO]" />
<column name="zeugnisdatum" type ="DATETIME" size ="7" default ="" notnull ="true" /> <column name="zeugnisdatum" type ="DATETIME" size ="7" default ="" notnull ="true" />
<column name="hzb_note" type ="FLOAT" size ="4" default ="" notnull ="false" /> <column name="hzb_note" type ="FLOAT" size ="4" default ="" notnull ="false" />
<column name="hzb_note_original" type ="VARCHAR" size ="40" default ="" notnull ="false" /> <column name="hzb_note_original" type ="VARCHAR" size ="40" default ="" notnull ="false" />
<column name="hzb_punkte" type ="INTEGER" size ="4" default ="" notnull ="false" /> <column name="hzb_punkte" type ="FLOAT" size ="4" default ="" notnull ="false" />
<column name="hzb_punkte_max" type ="INTEGER" size ="4" default ="" notnull ="false" /> <column name="hzb_punkte_max" type ="FLOAT" size ="4" default ="" notnull ="false" />
<column name="land_nr" type ="INTEGER" size ="4" default ="" notnull ="true" /> <column name="land_nr" type ="INTEGER" size ="4" default ="" notnull ="true" />
<column name="land_regio_nr" type ="INTEGER" size ="4" default ="" notnull ="false" /> <column name="land_regio_nr" type ="INTEGER" size ="4" default ="" notnull ="false" />
<column name="land_sub_r_nr" type ="INTEGER" size ="4" default ="" notnull ="false" /> <column name="land_sub_r_nr" type ="INTEGER" size ="4" default ="" notnull ="false" />
@ -911,6 +1002,8 @@ rightname="CS_BIA_STANDARDREPORTS_ADMIN[CO]" />
<column name="sws" type ="FLOAT" size ="4" default ="" notnull ="float" /> <column name="sws" type ="FLOAT" size ="4" default ="" notnull ="float" />
<column name="ects_credits" type ="FLOAT" size ="4" default ="" notnull ="false" /> <column name="ects_credits" type ="FLOAT" size ="4" default ="" notnull ="false" />
<column name="anerkennungsobjekt_flag" type ="CHAR" size ="1" default ="" notnull ="false" /> <column name="anerkennungsobjekt_flag" type ="CHAR" size ="1" default ="" notnull ="false" />
<column name="semester" type ="INTEGER" size ="8" default ="" notnull ="false" description="Semester" ><comment></comment></column>
</columns> </columns>
<indexes></indexes> <indexes></indexes>
<primaryKeys><rs> <primaryKeys><rs>
@ -924,7 +1017,31 @@ rightname="CS_BIA_STANDARDREPORTS_ADMIN[CO]" />
</rs></privileges> </rs></privileges>
</table> </table>
<table name="costage_lehrveranstaltungen_neu" thema="Lehre" caption="Lehrveranstaltungen (CO) neu" typ="Ladetabelle" releaseUnload="empty">
<columns><column name="stp_sp_nr" type ="INTEGER" size ="4" default ="" notnull ="true" />
<column name="ghk_nr" type ="INTEGER" size ="4" default ="" notnull ="true" />
<column name="titel_de" type ="VARCHAR" size ="255" default ="" notnull ="true" />
<column name="titel_en" type ="VARCHAR" size ="255" default ="" notnull ="false" />
<column name="nummer" type ="VARCHAR" size ="255" default ="" notnull ="false" />
<column name="art_name_de" type ="VARCHAR" size ="255" default ="" notnull ="true" />
<column name="art_name_en" type ="VARCHAR" size ="255" default ="" notnull ="false" />
<column name="st_sem_nr" type ="INTEGER" size ="4" default ="" notnull ="true" />
<column name="org_nr" type ="INTEGER" size ="4" default ="" notnull ="true" />
<column name="sws" type ="FLOAT" size ="4" default ="" notnull ="float" />
<column name="ects_credits" type ="FLOAT" size ="4" default ="" notnull ="false" />
<column name="anerkennungsobjekt_flag" type ="CHAR" size ="1" default ="" notnull ="false" />
</columns>
<indexes></indexes>
<primaryKeys><rs>
</rs></primaryKeys>
<foreignKeys><rs>
</rs></foreignKeys>
<importedKeys><rs>
</rs></importedKeys>
<privileges><rs>
</rs></privileges>
</table>
<table name="costage_leistungen" thema="Prüfungen und Leistungen" caption="Leistungen (CO)" typ="Datentabelle" releaseUnload="empty"> <table name="costage_leistungen" thema="Prüfungen und Leistungen" caption="Leistungen (CO)" typ="Datentabelle" releaseUnload="empty">
<columns><column name="leistung_nr" type ="INTEGER" size ="4" default ="" notnull ="true" /> <columns><column name="leistung_nr" type ="INTEGER" size ="4" default ="" notnull ="true" />
<column name="leistungstyp_nr" type ="INTEGER" size ="4" default ="" notnull ="true" /> <column name="leistungstyp_nr" type ="INTEGER" size ="4" default ="" notnull ="true" />
@ -935,14 +1052,14 @@ rightname="CS_BIA_STANDARDREPORTS_ADMIN[CO]" />
<column name="st_studium_nr" type ="INTEGER" size ="4" default ="" notnull ="true" /> <column name="st_studium_nr" type ="INTEGER" size ="4" default ="" notnull ="true" />
<column name="studienidentifikator" type ="VARCHAR" size ="4000" default ="" notnull ="false" /> <column name="studienidentifikator" type ="VARCHAR" size ="4000" default ="" notnull ="false" />
<column name="spov_abschluss" type ="VARCHAR" size ="10" default ="" notnull ="false" /> <column name="spov_abschluss" type ="VARCHAR" size ="10" default ="" notnull ="false" />
<column name="stp_sp_nr" type ="INTEGER" size ="4" default ="" notnull ="false" /> <column name="stp_sp_nr" type ="INTEGER" size ="4" default ="" notnull ="false" description=""/>
<column name="veranstaltung_nummer" type ="VARCHAR" size ="10" default ="" notnull ="false" /> <column name="veranstaltung_nummer" type ="VARCHAR" size ="25" default ="" notnull ="false" description="Nummer der Lehr- oder Prüfungsveranstaltung"><comment></comment></column>
<column name="veranstaltung_semester" type ="VARCHAR" size ="4000" default ="" notnull ="false" /> <column name="veranstaltung_semester" type ="VARCHAR" size ="255" default ="" notnull ="false" currentlyUsed="false"><comment></comment></column>
<column name="veranstaltung_titel" type ="VARCHAR" size ="200" default ="" notnull ="false" /> <column name="veranstaltung_titel" type ="VARCHAR" size ="255" default ="" notnull ="false" description="Titel der Lehr- oder Prüfungsveranstaltung"><comment></comment></column>
<column name="veranstaltung_art" type ="VARCHAR" size ="2" default ="" notnull ="false" /> <column name="veranstaltung_art" type ="VARCHAR" size ="2" default ="" notnull ="false" description="Art der Lehr- oder Prüfungsveranstaltung"><comment></comment></column>
<column name="semesterstunden" type ="FLOAT" size ="4" default ="" notnull ="false" /> <column name="semesterstunden" type ="FLOAT" size ="4" default ="" notnull ="false" description="Semesterstunden"><comment></comment></column>
<column name="unterrichtseinheiten" type ="INTEGER" size ="4" default ="" notnull ="false" /> <column name="unterrichtseinheiten" type ="INTEGER" size ="4" default ="" notnull ="false" description="Kontaktstunden"><comment></comment>der Lehr- oder Prüfungsveranstaltung im Semester</column>
<column name="thema_individuell" type ="VARCHAR" size ="2000" default ="" notnull ="false" /> <column name="thema_individuell" type ="VARCHAR" size ="255" default ="" notnull ="false" description="Individuelles Thema"><comment>einer*eines Studierenden bei der Leistung (z. B. wenn Abschlussarbeiten im Rahmen einer Lehrveranstaltung erstellt werden).</comment></column>
<column name="pv_notenskala_nr" type ="INTEGER" size ="4" default ="" notnull ="true" /> <column name="pv_notenskala_nr" type ="INTEGER" size ="4" default ="" notnull ="true" />
<column name="note" type ="VARCHAR" size ="100" default ="" notnull ="true" /> <column name="note" type ="VARCHAR" size ="100" default ="" notnull ="true" />
<column name="note_name" type ="VARCHAR" size ="100" default ="" notnull ="true" /> <column name="note_name" type ="VARCHAR" size ="100" default ="" notnull ="true" />
@ -957,8 +1074,8 @@ rightname="CS_BIA_STANDARDREPORTS_ADMIN[CO]" />
<column name="pv_notenskala_typ_name" type ="VARCHAR" size ="400" default ="" notnull ="false" /> <column name="pv_notenskala_typ_name" type ="VARCHAR" size ="400" default ="" notnull ="false" />
<column name="credits" type ="FLOAT" size ="4" default ="" notnull ="false" /> <column name="credits" type ="FLOAT" size ="4" default ="" notnull ="false" />
<column name="leistungsdatum" type ="DATETIME" size ="7" default ="" notnull ="false" /> <column name="leistungsdatum" type ="DATETIME" size ="7" default ="" notnull ="false" />
<column name="anerkannt_flag" type ="CHAR" size ="1" default ="" notnull ="false" /> <column name="anerkannt_flag" type ="CHAR" size ="1" default ="" notnull ="false" description="Anerkennung (J/N)"/>
<column name="zusatzleistung_flag" type ="CHAR" size ="1" default ="" notnull ="false" /> <column name="zusatzleistung_flag" type ="CHAR" size ="10" default ="" notnull ="false" description="Zusatzleistung (J/N)"/>
<column name="leistungsstatus_nr" type ="INTEGER" size ="4" default ="" notnull ="true" /> <column name="leistungsstatus_nr" type ="INTEGER" size ="4" default ="" notnull ="true" />
<column name="leistungsstatus_map_kb" type ="CHAR" size ="10" default ="" notnull ="false" /> <column name="leistungsstatus_map_kb" type ="CHAR" size ="10" default ="" notnull ="false" />
</columns> </columns>
@ -1019,6 +1136,7 @@ rightname="CS_BIA_STANDARDREPORTS_ADMIN[CO]" />
<column name="st_studium_nr" type ="INTEGER" size ="4" default ="" notnull ="true" /> <column name="st_studium_nr" type ="INTEGER" size ="4" default ="" notnull ="true" />
<column name="stp_sp_nr" type ="INTEGER" size ="4" default ="" notnull ="false" /> <column name="stp_sp_nr" type ="INTEGER" size ="4" default ="" notnull ="false" />
<column name="lv_grp_name" type ="VARCHAR" size ="255" default ="" notnull ="true" /> <column name="lv_grp_name" type ="VARCHAR" size ="255" default ="" notnull ="true" />
<column name="semester" type ="INTEGER" size ="8" default ="" notnull ="false" description="Semester" ><comment></comment></column>
</columns> </columns>
<indexes></indexes> <indexes></indexes>
<primaryKeys><rs> <primaryKeys><rs>
@ -1033,6 +1151,24 @@ rightname="CS_BIA_STANDARDREPORTS_ADMIN[CO]" />
</rs></privileges> </rs></privileges>
</table> </table>
<table name="costage_lv_teilnehmende_neu" thema="Lehre" caption="Teilnahme (CO) neu" typ="Ladetabelle" releaseUnload="empty">
<columns><column name="lv_grp_pers_nr" type ="INTEGER" size ="4" default ="" notnull ="true" />
<column name="st_studium_nr" type ="INTEGER" size ="4" default ="" notnull ="true" />
<column name="stp_sp_nr" type ="INTEGER" size ="4" default ="" notnull ="false" />
<column name="lv_grp_name" type ="VARCHAR" size ="255" default ="" notnull ="true" />
</columns>
<indexes></indexes>
<primaryKeys><rs>
</rs></primaryKeys>
<foreignKeys><rs>
</rs></foreignKeys>
<importedKeys><rs>
</rs></importedKeys>
<privileges><rs>
<row>
</row>
</rs></privileges>
</table>
<table name="costage_st_studienformen" thema="Studierende und Gebühren" caption="Studienformen (CO)" typ="Schlüsseltabelle" releaseUnload="empty"> <table name="costage_st_studienformen" thema="Studierende und Gebühren" caption="Studienformen (CO)" typ="Schlüsseltabelle" releaseUnload="empty">
<columns><column name="nr" type ="INTEGER" size ="4" default ="" notnull ="true" /> <columns><column name="nr" type ="INTEGER" size ="4" default ="" notnull ="true" />
@ -1385,6 +1521,12 @@ parent="CO Basisdaten">Abfragen zu Studienplänen und Ordnungen</thema>
<path>$COSTAGE_PFAD/masken</path> <path>$COSTAGE_PFAD/masken</path>
</src> </src>
</maske> </maske>
<maske tid="43180" name="Einzelprüfungen Datenblatt (CO)" thema="CO Basisdaten">
<description></description>
<src>
<path>$COSTAGE_PFAD/masken</path>
</src>
</maske>
</masken> </masken>
<data-integrity> <data-integrity>
@ -1549,6 +1691,46 @@ parent="CO Basisdaten">Abfragen zu Studienplänen und Ordnungen</thema>
displayType="select" visibleFields="matrikelnummer" format="%s"> displayType="select" visibleFields="matrikelnummer" format="%s">
<relation-column from="st_studstamm_nr" to="st_studstamm_nr" /> <relation-column from="st_studstamm_nr" to="st_studstamm_nr" />
</relation> </relation>
<relation from="costage_leistungen_detail_typen" to="costage_st_pruef_aggr" delete="FALSE"
displayType="select" visibleFields="name_de" format="%s">
<relation-column from="leistungsdetailtyp_kb" to="leistungsdetailtyp_kb" />
</relation>
<!--costage_st_einzpruef_aggr-->
<relation from="costage_st_semester" to="costage_st_einzpruef_aggr" delete="FALSE"
displayType="select" visibleFields="semester_bezeichnung" format="%s">
<relation-column from="semester_tid" to="semester" />
</relation>
<relation from="costage_st_semester" to="costage_st_einzpruef_aggr" delete="FALSE"
displayType="select" visibleFields="semester_bezeichnung" format="%s">
<relation-column from="semester_tid" to="semester_msg" />
</relation>
<relation from="costage_st_studien" to="costage_st_einzpruef_aggr" delete="FALSE"
displayType="select" visibleFields="st_studium_nr" format="%s">
<relation-column from="st_studium_nr" to="st_studium_nr" />
</relation>
<relation from="costage_dim_studiengang" to="costage_st_einzpruef_aggr" delete="FALSE"
displayType="select" visibleFields="studiengangs_bezeichnung" format="%s">
<relation-column from="st_studiengang_nr" to="st_studiengang_nr" />
</relation>
<relation from="costage_leistungen_typen" to="costage_st_einzpruef_aggr" delete="FALSE"
displayType="select" visibleFields="name_de" format="%s">
<relation-column from="leistungstyp_nr" to="leistungstyp_nr" />
</relation>
<relation from="costage_leistungen_status_typen" to="costage_st_einzpruef_aggr" delete="FALSE"
displayType="select" visibleFields="kurzbezeichnung" format="%s">
<relation-column from="leistungsstatus_nr" to="leistungsstatus_nr" />
</relation>
<relation from="costage_st_studierendenstammdaten" to="costage_st_einzpruef_aggr" delete="FALSE"
displayType="select" visibleFields="matrikelnummer" format="%s">
<relation-column from="st_studstamm_nr" to="st_studstamm_nr" />
</relation>
<relation from="costage_leistungen_detail_typen" to="costage_st_einzpruef_aggr" delete="FALSE"
displayType="select" visibleFields="name_de" format="%s">
<relation-column from="leistungsdetailtyp_kb" to="leistungsdetailtyp_kb" />
</relation>
<!--costage_bw_antr_aggr--> <!--costage_bw_antr_aggr-->
<relation from="costage_st_semester" to="costage_bw_antr_aggr" delete="FALSE" <relation from="costage_st_semester" to="costage_bw_antr_aggr" delete="FALSE"
displayType="select" visibleFields="semester_bezeichnung" format="%s"> displayType="select" visibleFields="semester_bezeichnung" format="%s">
@ -1615,7 +1797,7 @@ parent="CO Basisdaten">Abfragen zu Studienplänen und Ordnungen</thema>
<loadtable refresh="true" delimiter="^" header="false" tabname="costage_st_studiengaenge_mtsg"><file path="$COSTAGE_LOAD_PFAD/unl/costage_st_studiengaenge_mtsg.unl"/></loadtable> <loadtable refresh="true" delimiter="^" header="false" tabname="costage_st_studiengaenge_mtsg"><file path="$COSTAGE_LOAD_PFAD/unl/costage_st_studiengaenge_mtsg.unl"/></loadtable>
<loadtable refresh="true" delimiter="^" header="false" tabname="costage_st_studiengaenge_neu"><file path="$COSTAGE_LOAD_PFAD/unl/costage_st_studiengaenge.unl"/></loadtable> <loadtable refresh="true" delimiter="^" header="false" tabname="costage_st_studiengaenge_neu"><file path="$COSTAGE_LOAD_PFAD/unl/costage_st_studiengaenge.unl"/></loadtable>
<loadtable refresh="true" delimiter="^" header="false" tabname="costage_st_studienkennzahlen_neu"><file path="$COSTAGE_LOAD_PFAD/unl/costage_st_studienkennzahlen.unl"/></loadtable> <loadtable refresh="true" delimiter="^" header="false" tabname="costage_st_studienkennzahlen_neu"><file path="$COSTAGE_LOAD_PFAD/unl/costage_st_studienkennzahlen.unl"/></loadtable>
<loadtable refresh="true" delimiter="^" header="false" tabname="costage_st_studienstatus"><file path="$COSTAGE_LOAD_PFAD/unl/costage_st_studienstatus.unl"/></loadtable> <loadtable refresh="true" delimiter="^" header="false" tabname="costage_st_studienstatus_neu"><file path="$COSTAGE_LOAD_PFAD/unl/costage_st_studienstatus.unl"/></loadtable>
<loadtable refresh="true" delimiter="^" header="false" tabname="costage_st_studien_spoversionen"><file path="$COSTAGE_LOAD_PFAD/unl/costage_st_studien_spoversionen.unl"/></loadtable> <loadtable refresh="true" delimiter="^" header="false" tabname="costage_st_studien_spoversionen"><file path="$COSTAGE_LOAD_PFAD/unl/costage_st_studien_spoversionen.unl"/></loadtable>
<loadtable refresh="true" delimiter="^" header="false" tabname="costage_st_studien"><file path="$COSTAGE_LOAD_PFAD/unl/costage_st_studien.unl"/></loadtable> <loadtable refresh="true" delimiter="^" header="false" tabname="costage_st_studien"><file path="$COSTAGE_LOAD_PFAD/unl/costage_st_studien.unl"/></loadtable>
<loadtable refresh="true" delimiter="^" header="false" tabname="costage_st_studierendenstammdaten_neu"><file path="$COSTAGE_LOAD_PFAD/unl/costage_st_studierendenstammdaten.unl"/></loadtable> <loadtable refresh="true" delimiter="^" header="false" tabname="costage_st_studierendenstammdaten_neu"><file path="$COSTAGE_LOAD_PFAD/unl/costage_st_studierendenstammdaten.unl"/></loadtable>
@ -1646,8 +1828,8 @@ parent="CO Basisdaten">Abfragen zu Studienplänen und Ordnungen</thema>
<loadtable refresh="true" delimiter="^" header="false" tabname="costage_leistungen_typen"><file path="$COSTAGE_LOAD_PFAD/unl/costage_leistungen_typen.unl"/></loadtable> <loadtable refresh="true" delimiter="^" header="false" tabname="costage_leistungen_typen"><file path="$COSTAGE_LOAD_PFAD/unl/costage_leistungen_typen.unl"/></loadtable>
<loadtable refresh="true" delimiter="^" header="false" tabname="costage_antritte"><file path="$COSTAGE_LOAD_PFAD/unl/costage_antritte.unl"/></loadtable> <loadtable refresh="true" delimiter="^" header="false" tabname="costage_antritte"><file path="$COSTAGE_LOAD_PFAD/unl/costage_antritte.unl"/></loadtable>
<loadtable refresh="true" delimiter="^" header="false" tabname="costage_gleichheitsknoten"><file path="$COSTAGE_LOAD_PFAD/unl/costage_gleichheitsknoten.unl"/></loadtable> <loadtable refresh="true" delimiter="^" header="false" tabname="costage_gleichheitsknoten"><file path="$COSTAGE_LOAD_PFAD/unl/costage_gleichheitsknoten.unl"/></loadtable>
<loadtable refresh="true" delimiter="^" header="false" tabname="costage_lehrveranstaltungen"><file path="$COSTAGE_LOAD_PFAD/unl/costage_lehrveranstaltungen.unl"/></loadtable> <loadtable refresh="true" delimiter="^" header="false" tabname="costage_lehrveranstaltungen_neu"><file path="$COSTAGE_LOAD_PFAD/unl/costage_lehrveranstaltungen.unl"/></loadtable>
<loadtable refresh="true" delimiter="^" header="false" tabname="costage_lv_teilnehmende"><file path="$COSTAGE_LOAD_PFAD/unl/costage_lv_teilnehmende.unl"/></loadtable> <loadtable refresh="true" delimiter="^" header="false" tabname="costage_lv_teilnehmende_neu"><file path="$COSTAGE_LOAD_PFAD/unl/costage_lv_teilnehmende.unl"/></loadtable>
</action> </action>
</etl-step> </etl-step>
@ -1661,7 +1843,10 @@ parent="CO Basisdaten">Abfragen zu Studienplänen und Ordnungen</thema>
<!-- und dann die Studiengänge: --> <!-- und dann die Studiengänge: -->
<nativeaction sql="" scriptfile="$COSTAGE_PFAD/schluesseltabellen/trans_costage_st_studiengaenge.sql" database=""/> <nativeaction sql="" scriptfile="$COSTAGE_PFAD/schluesseltabellen/trans_costage_st_studiengaenge.sql" database=""/>
<nativeaction sql="" scriptfile="$COSTAGE_PFAD/datentabellen/trans_costage_st_studierendenstammdaten.sql" database=""/> <nativeaction sql="" scriptfile="$COSTAGE_PFAD/datentabellen/trans_costage_st_studierendenstammdaten.sql" database=""/>
<nativeaction sql="" scriptfile="$COSTAGE_PFAD/datentabellen/trans_costage_st_studienstatus.sql" database=""/>
<nativeaction sql="" scriptfile="$COSTAGE_PFAD/schluesseltabellen/costage_dim_studiengang_fuellen.sql" database=""/> <nativeaction sql="" scriptfile="$COSTAGE_PFAD/schluesseltabellen/costage_dim_studiengang_fuellen.sql" database=""/>
<nativeaction sql="" scriptfile="$COSTAGE_PFAD/datentabellen/trans_costage_lehrveranstaltungen.sql" database=""/>
<nativeaction sql="" scriptfile="$COSTAGE_PFAD/datentabellen/trans_costage_lv_teilnehmende.sql" database=""/>
</action> </action>
</etl-step> </etl-step>
@ -1671,6 +1856,8 @@ parent="CO Basisdaten">Abfragen zu Studienplänen und Ordnungen</thema>
<nativeaction sql="" scriptfile="$COSTAGE_PFAD/hilfstabellen/costage_st_pruef_aggr_fuellen.sql" database=""/> <nativeaction sql="" scriptfile="$COSTAGE_PFAD/hilfstabellen/costage_st_pruef_aggr_fuellen.sql" database=""/>
<nativeaction sql="" scriptfile="$COSTAGE_PFAD/hilfstabellen/costage_bw_antr_aggr_fuellen.sql" database=""/> <nativeaction sql="" scriptfile="$COSTAGE_PFAD/hilfstabellen/costage_bw_antr_aggr_fuellen.sql" database=""/>
<nativeaction sql="" scriptfile="$COSTAGE_PFAD/hilfstabellen/costage_st_lv_aggr_fuellen.sql" database=""/> <nativeaction sql="" scriptfile="$COSTAGE_PFAD/hilfstabellen/costage_st_lv_aggr_fuellen.sql" database=""/>
<nativeaction sql="" scriptfile="$COSTAGE_PFAD/hilfstabellen/costage_st_einzpruef_aggr_fuellen.sql" database=""/>
<!--<nativeaction sql="" scriptfile="$COSTAGE_PFAD/schluesseltabellen/semester_bereinigen.sql" database=""> <!--<nativeaction sql="" scriptfile="$COSTAGE_PFAD/schluesseltabellen/semester_bereinigen.sql" database="">
<description>Ungenutzte Semester, d.h. Semester, die keine Bewegungsdaten enthalten (z.B. WS 1937/1938) entfernen</description> <description>Ungenutzte Semester, d.h. Semester, die keine Bewegungsdaten enthalten (z.B. WS 1937/1938) entfernen</description>
</nativeaction>--> </nativeaction>-->
@ -1678,6 +1865,13 @@ parent="CO Basisdaten">Abfragen zu Studienplänen und Ordnungen</thema>
</action> </action>
</etl-step> </etl-step>
<etl-step name="Überprüfung der COSTAGE-Daten" type="test">
<action error="stop">
<nativeaction sql="" scriptfile="$COSTAGE_PFAD/datentabellen/check_studierende.sql"
database=""/>
</action>
</etl-step>
</etl> </etl>
<install> <install>

8
src-modules/module/costage/datentabellen/check_studierende.sql

@ -0,0 +1,8 @@
select 'Warnung: keine Studierendenstammdaten geliefert!'::varchar(255)
from xdummy
where 0=(select count(*) from costage_st_studierendenstammdaten_neu)
;
select 'Warnung: keine Studienverläufe mit Status geliefert!'::varchar(255)
from xdummy
where 0=(select count(*) from costage_st_studienstatus_neu)
;

37
src-modules/module/costage/datentabellen/trans_costage_lehrveranstaltungen.sql

@ -0,0 +1,37 @@
--costage_lehrveranstaltungen semesterweise füllen:
delete from costage_lehrveranstaltungen
where st_sem_nr in (
select distinct st_sem_nr
from costage_lehrveranstaltungen_neu);
insert into costage_lehrveranstaltungen(stp_sp_nr,
ghk_nr,
titel_de,
titel_en,
nummer,
art_name_de,
art_name_en,
st_sem_nr,
org_nr,
sws,
ects_credits,
anerkennungsobjekt_flag,
semester
)
select N.stp_sp_nr,
N.ghk_nr,
N.titel_de,
N.titel_en,
N.nummer,
N.art_name_de,
N.art_name_en,
N.st_sem_nr,
N.org_nr,
N.sws,
N.ects_credits,
N.anerkennungsobjekt_flag,
S.semester_tid
FROM costage_lehrveranstaltungen_neu N, costage_st_semester S
where S.st_sem_nr=N.st_sem_nr
;

24
src-modules/module/costage/datentabellen/trans_costage_lv_teilnehmende.sql

@ -0,0 +1,24 @@
--costage_lv_teilnehmende semesterweise füllen:
delete from costage_lv_teilnehmende
where semester in (
select distinct S.semester_tid
from costage_lv_teilnehmende_neu N, costage_lehrveranstaltungen_neu L,costage_st_semester S
where N.stp_sp_nr=L.stp_sp_nr
and S.st_sem_nr=L.st_sem_nr);
insert into costage_lv_teilnehmende(lv_grp_pers_nr,
st_studium_nr,
stp_sp_nr,
lv_grp_name,
semester
)
select N.lv_grp_pers_nr,
N.st_studium_nr,
N.stp_sp_nr,
N.lv_grp_name,
S.semester_tid
FROM costage_lv_teilnehmende_neu N, costage_lehrveranstaltungen_neu L,costage_st_semester S
where N.stp_sp_nr=L.stp_sp_nr
and S.st_sem_nr=L.st_sem_nr
;

20
src-modules/module/costage/datentabellen/trans_costage_st_studienstatus.sql

@ -0,0 +1,20 @@
delete from costage_st_studienstatus
where st_sem_nr in (select distinct st_sem_nr
from costage_st_studienstatus_neu);
insert into costage_st_studienstatus(st_studienstatus_nr,
st_studium_nr,
studienstatustyp,
beginn_datum,
gueltig_ab,
st_sem_nr)
select st_studienstatus_nr,
st_studium_nr,
studienstatustyp,
beginn_datum,
gueltig_ab,
st_sem_nr
from costage_st_studienstatus_neu;

89
src-modules/module/costage/datentabellen/trans_costage_st_studierendenstammdaten.sql

@ -1,5 +1,26 @@
delete from costage_st_studierendenstammdaten;
create temp table tmp_st_studierendenstammdaten(
st_studstamm_nr INTEGER not null,
matrikelnummer INTEGER not null,
vorname VARCHAR(255) ,
familienname VARCHAR(255) ,
geburtsdatum timestamptz ,
st_land1_nr INTEGER ,
st_land2_nr INTEGER ,
geburt_st_land_nr INTEGER ,
personentyp_name VARCHAR(100) ,
personentyp_kb VARCHAR(10) ,
aufnahmedatum timestamptz ,
abmeldungsdatum timestamptz ,
geschlecht INTEGER ,
d_geburt DATE ,
ca12_staat INTEGER ,
second_nationality INTEGER ,
d_exmatr DATE ,
semester_max INTEGER
)
;
--zuerst Ermittlung max. Semester --zuerst Ermittlung max. Semester
select S.st_studstamm_nr,max(SM.semester_tid)::integer as semester_max select S.st_studstamm_nr,max(SM.semester_tid)::integer as semester_max
@ -17,7 +38,9 @@ group by 1
; ;
insert into costage_st_studierendenstammdaten(
insert into tmp_st_studierendenstammdaten(
st_studstamm_nr, st_studstamm_nr,
matrikelnummer, matrikelnummer,
vorname, vorname,
@ -31,8 +54,8 @@ insert into costage_st_studierendenstammdaten(
aufnahmedatum, aufnahmedatum,
abmeldungsdatum, abmeldungsdatum,
geschlecht, geschlecht,
ca12_staat, -- ca12_staat,
second_nationality, -- second_nationality,
d_geburt, d_geburt,
d_exmatr, d_exmatr,
semester_max) semester_max)
@ -53,8 +76,6 @@ S.st_studstamm_nr,
when S.geschlecht='W' then 2 when S.geschlecht='W' then 2
when S.geschlecht='X' then 3 when S.geschlecht='X' then 3
else 4 end)::smallint as geschlecht, else 4 end)::smallint as geschlecht,
val(L.statistik_code) as ca12_staat,
S.st_land2_nr,
date(S.geburtsdatum) as d_geburt, date(S.geburtsdatum) as d_geburt,
date(S.abmeldungsdatum) as d_exmatr, date(S.abmeldungsdatum) as d_exmatr,
M.semester_max M.semester_max
@ -63,11 +84,61 @@ on (M.st_studstamm_nr=S.st_studstamm_nr)
where L.st_land_nr=S.st_land1_nr where L.st_land_nr=S.st_land1_nr
and S.matrikelnummer is not null and S.matrikelnummer is not null
; ;
update costage_st_studierendenstammdaten set second_nationality=val(L.statistik_code) update tmp_st_studierendenstammdaten set ca12_staat=val(L.statistik_code)
from costage_st_laender L
where L.st_land_nr=tmp_st_studierendenstammdaten.st_land1_nr;
update tmp_st_studierendenstammdaten set second_nationality=val(L.statistik_code)
from costage_st_laender L from costage_st_laender L
where L.st_land_nr=costage_st_studierendenstammdaten.st_land2_nr; where L.st_land_nr=tmp_st_studierendenstammdaten.st_land2_nr;
delete from costage_st_studierendenstammdaten
where 0 > (select count(*) from tmp_st_studierendenstammdaten) --bei CSV Upload kann die Tab. leer sein, daher abfangen
;
insert into costage_st_studierendenstammdaten(
st_studstamm_nr,
matrikelnummer,
vorname,
familienname,
geburtsdatum,
st_land1_nr,
st_land2_nr,
geburt_st_land_nr,
personentyp_name,
personentyp_kb,
aufnahmedatum,
abmeldungsdatum,
geschlecht,
ca12_staat,
second_nationality,
d_geburt,
d_exmatr,
semester_max)
select
st_studstamm_nr,
matrikelnummer,
vorname,
familienname,
geburtsdatum,
st_land1_nr,
st_land2_nr,
geburt_st_land_nr,
personentyp_name,
personentyp_kb,
aufnahmedatum,
abmeldungsdatum,
geschlecht,
ca12_staat,
second_nationality,
d_geburt,
d_exmatr,
semester_max
FROM tmp_st_studierendenstammdaten
;
drop table tmp_max; drop table tmp_max;
drop table tmp_st_studierendenstammdaten;

89
src-modules/module/costage/hilfstabellen/costage_bw_antr_aggr_fuellen.sql

@ -1,3 +1,16 @@
--Freemarker Template
<#assign bw_stati = [
{"kb":"vss", "nr":"20","name":"Formale Zulassungsvoraussetzungen"},
{"kb":"dok", "nr":"30","name":"Bewerbungsunterlagen"},
{"kb":"zul", "nr":"40","name":"Zulassung"},
{"kb":"stpl", "nr":"50","name":"Studienplatzangebot"},
{"kb":"qvss", "nr":"60","name":"Fachliche Zulassungsvoraussetzungen"},
{"kb":"abgabe", "nr":"80","name":"Bewerbungsabgabe"},
{"kb":"evs", "nr":"90","name":"Einschreibungsvoraussetzungen"}
] />
SELECT B.nr, SELECT B.nr,
B.st_studstamm_nr, B.st_studstamm_nr,
B.st_sem_nr, B.st_sem_nr,
@ -14,19 +27,40 @@ B.fachsemester_gewaehlt,
B.abgeschickt_datum, B.abgeschickt_datum,
E.semester_tid as semester, E.semester_tid as semester,
S.matrikelnummer, S.matrikelnummer,
<#foreach bw_status in bw_stati>
null::char(1) as status_${bw_status.kb} ,
null::char(1) as status_msg_${bw_status.kb} ,
</#foreach>
null::char(10) as stufrm, null::char(10) as stufrm,
null::char(10) as unikey, null::char(10) as unikey,
null::integer as studiengang_nr, null::integer as studiengang_nr,
null::integer as fach_nr, null::integer as fach_nr,
null::integer as st_studiengang_nr_msg, null::integer as st_studiengang_nr_msg,
null::date as leistungsdatum_msg, null::integer as bw_bewerbng_nr_msg,
null::integer as semester_msg null::char(10) as bew_kz,
null::char(10) as zul_kz,
null::char(10) as annahme_kz,
null::char(10) as einschreib_kz
into temp tmp_bew into temp tmp_bew
FROM costage_st_semester E, costage_bw_bewerbungen B FROM costage_st_semester E, costage_bw_bewerbungen B
left outer join costage_st_studierendenstammdaten S left outer join costage_st_studierendenstammdaten S
on (B.st_studstamm_nr=S.st_studstamm_nr) on (B.st_studstamm_nr=S.st_studstamm_nr)
where E.st_sem_nr=B.st_sem_nr; where E.st_sem_nr=B.st_sem_nr
--and B.bw_typ_kb not in ('MBW') --keine Mehrfachbewerbung
--and B.st_studstamm_nr=1186303
;
update tmp_bew set bw_bewerbng_nr_msg=K.bw_bewrbng_nr
from costage_bw_bewerbung_kombination K
where K.bw_bewrbng_nr_teil=tmp_bew.nr
and tmp_bew.bw_typ_kb='TBW'
;
update tmp_bew set st_studiengang_nr_msg=B.st_studiengang_nr
from costage_bw_bewerbungen B
where B.nr=tmp_bew.bw_bewerbng_nr_msg
and tmp_bew.bw_typ_kb='TBW'
;
update tmp_bew set unikey=K.unikey update tmp_bew set unikey=K.unikey
from costage_st_studiengaenge G, costage_st_studienkennzahlen K from costage_st_studiengaenge G, costage_st_studienkennzahlen K
@ -39,6 +73,33 @@ from costage_st_studienformen F
where F.nr=tmp_bew.st_studfrm_nr where F.nr=tmp_bew.st_studfrm_nr
; ;
<#foreach bw_status in bw_stati>
update tmp_bew set status_${bw_status.kb}=S.wert
from costage_bw_bewerb_sb_status S
where tmp_bew.nr=S.bw_bewerbng_nr
and S.bw_sb_stat_nr =${bw_status.nr}
;
update tmp_bew set status_msg_${bw_status.kb}=S.wert
from costage_bw_bewerb_sb_status S
where tmp_bew.bw_bewerbng_nr_msg=S.bw_bewerbng_nr
and S.bw_sb_stat_nr =${bw_status.nr}
;
</#foreach>
update tmp_bew set bew_kz='J' where status_vss='J';
;
update tmp_bew set zul_kz='J' where status_zul='J';
;
--beim MSG annahme_kz noch runterschreiben auf TSG
update tmp_bew set annahme_kz='J' where (status_stpl='J' or status_msg_stpl='J');
;
update tmp_bew set einschreib_kz='J' where status_evs='J';
;
truncate table costage_bw_antr_aggr; truncate table costage_bw_antr_aggr;
insert into costage_bw_antr_aggr( nr, insert into costage_bw_antr_aggr( nr,
st_studstamm_nr, st_studstamm_nr,
@ -46,15 +107,22 @@ insert into costage_bw_antr_aggr( nr,
semester, semester,
st_studiengang_nr, st_studiengang_nr,
st_studiengang_nr_msg, st_studiengang_nr_msg,
bw_bewerbng_nr_msg,
unikey, unikey,
studiengang_nr, studiengang_nr,
fach_nr, fach_nr,
fachsemester, fachsemester,
stufrm, stufrm,
semester_msg,
bw_sb_svor_nr, bw_sb_svor_nr,
bw_zul_art_nr, bw_zul_art_nr,
bw_typ_kb, bw_typ_kb,
<#foreach bw_status in bw_stati>
status_${bw_status.kb},
</#foreach>
bew_kz,
zul_kz,
annahme_kz,
einschreib_kz,
summe summe
) )
SELECT nr, SELECT nr,
@ -63,18 +131,25 @@ insert into costage_bw_antr_aggr( nr,
semester, semester,
st_studiengang_nr, st_studiengang_nr,
st_studiengang_nr_msg, st_studiengang_nr_msg,
bw_bewerbng_nr_msg,
unikey, unikey,
studiengang_nr, studiengang_nr,
fach_nr, fach_nr,
einstiegs_fachsemester as fachsemester, einstiegs_fachsemester as fachsemester,
stufrm, stufrm,
semester_msg,
bw_sb_svor_nr, bw_sb_svor_nr,
bw_zul_art_nr, bw_zul_art_nr,
bw_typ_kb, bw_typ_kb,
count(*) <#foreach bw_status in bw_stati>
status_${bw_status.kb},
</#foreach>
bew_kz,
zul_kz,
annahme_kz,
einschreib_kz,
count(*)
from tmp_bew from tmp_bew
group by 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15; group by 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;
drop table tmp_bew; drop table tmp_bew;

280
src-modules/module/costage/hilfstabellen/costage_st_einzpruef_aggr_fuellen.sql

@ -0,0 +1,280 @@
--freemarker template
<sqlvars>
<sqlvar name="beginn_semester"><![CDATA[
<#assign anz_sem=5 />
<#if COSTAGE_einzpruef_anz_sem?exists && COSTAGE_einzpruef_anz_sem?string!="">
<#assign anz_sem=COSTAGE_einzpruef_anz_sem />
</#if>
select min(S.tid) from semester S where S.sem_beginn >= today()-(182*${anz_sem})
;
]]>
</sqlvar>
</sqlvars>
--Leistungen mit Veranstaltung -> Semester:
SELECT
L.st_studium_nr,
S.st_studstamm_nr,
val(L.matrikelnummer) as matrikelnummer,
null::integer as st_studiengang_nr,
null::integer as studiengang_nr,
null::integer as fach_nr,
null::integer as st_studienstatus_nr,
null::integer as semester,
E.semester_tid as semester_veranst,
E.st_sem_nr,
null::integer as fachsemester,
null::varchar(255) as unikey,
L.leistung_nr,
L.leistungstyp_nr,
L.leistungsdetailtyp_kb,
L.studienidentifikator,
L.spov_abschluss,
L.stp_sp_nr,
L.veranstaltung_nummer,
L.veranstaltung_semester,
L.veranstaltung_titel,
L.veranstaltung_art,
L.semesterstunden,
L.unterrichtseinheiten,
L.thema_individuell,
L.pv_notenskala_nr,
L.note,
L.note_name,
L.note_zahl,
L.pv_pruef_zusatz_typen_nr,
L.note_zusatz,
L.note_zusatz_name,
L.note_positiv_flag,
L.note_negativ_flag,
L.pv_notenskala_typ_nr,
L.pv_notenskala_typ_kb,
L.pv_notenskala_typ_name,
L.credits,
date(L.leistungsdatum) as leistungsdatum,
L.anerkannt_flag,
L.zusatzleistung_flag,
L.leistungsstatus_nr,
L.leistungsstatus_map_kb,
null::integer as abschnitt,
null::integer as pnr,
null::integer as leistung_nr_msg,
null::integer as st_studiengang_nr_msg,
null::date as leistungsdatum_msg,
null::integer as semester_msg
into temp tmp_pruef
FROM costage_st_semester E, costage_leistungen_typen T, costage_leistungen L, costage_st_studierendenstammdaten S
where E.semester_id=L.veranstaltung_semester
and T.leistungstyp_nr=L.leistungstyp_nr
and S.matrikelnummer::varchar(255)=L.matrikelnummer
-- TSAB/AB:
--and T.kurzbezeichnung in ('AP','AAP') --Abschlussprüfung/Anerkannte Abschlussprüfung
and L.leistungsstatus_nr in (4,2) --Letztgültig/Final/gültige Leistung
--px_leistungen_status_typen_v:
--4^F^Letztgültig^Final^
--1^P^in Bearbeitung^in process^
--2^V^gültige Leistung^valid^
--3^I^ungültige Leistung^invalid^
--5^D^gelöscht^deleted^
and E.semester_tid >= ${beginn_semester}
;
--Leistungen ohne Veranstaltungssemester gehen über Prüfungsdatum:
insert into tmp_pruef
SELECT
L.st_studium_nr,
S.st_studstamm_nr,
val(L.matrikelnummer) as matrikelnummer,
null::integer as st_studiengang_nr,
null::integer as studiengang_nr,
null::integer as fach_nr,
null::integer as st_studienstatus_nr,
E.semester_tid as semester,
null::integer as semester_veranst,
null::integer as st_sem_nr,
null::integer as fachsemester,
null::varchar(255) as unikey,
L.leistung_nr,
L.leistungstyp_nr,
L.leistungsdetailtyp_kb,
L.studienidentifikator,
L.spov_abschluss,
L.stp_sp_nr,
L.veranstaltung_nummer,
L.veranstaltung_semester,
L.veranstaltung_titel,
L.veranstaltung_art,
L.semesterstunden,
L.unterrichtseinheiten,
L.thema_individuell,
L.pv_notenskala_nr,
L.note,
L.note_name,
L.note_zahl,
L.pv_pruef_zusatz_typen_nr,
L.note_zusatz,
L.note_zusatz_name,
L.note_positiv_flag,
L.note_negativ_flag,
L.pv_notenskala_typ_nr,
L.pv_notenskala_typ_kb,
L.pv_notenskala_typ_name,
L.credits,
date(L.leistungsdatum) as leistungsdatum,
L.anerkannt_flag,
L.zusatzleistung_flag,
L.leistungsstatus_nr,
L.leistungsstatus_map_kb,
2::integer as abschnitt, --provisorisch erstmal nur Hauptprüfungen
null::integer as pnr,
null::integer as leistung_nr_msg,
null::integer as st_studiengang_nr_msg,
null::date as leistungsdatum_msg,
null::integer as semester_msg
FROM costage_st_semester E, costage_leistungen_typen T, costage_leistungen L, costage_st_studierendenstammdaten S
where L.leistungsdatum between E.semester_anfang and E.semester_ende
and L.veranstaltung_semester is null
and T.leistungstyp_nr=L.leistungstyp_nr
and S.matrikelnummer::varchar(255)=L.matrikelnummer
-- TSAB/AB:
--and T.kurzbezeichnung in ('AP','AAP') --Abschlussprüfung/Anerkannte Abschlussprüfung
and L.leistungsstatus_nr in (4,2) --Letztgültig/Final/gültige Leistung
and E.semester_tid >= ${beginn_semester}
;
update tmp_pruef set semester=E.semester_tid
FROM costage_st_semester E
where tmp_pruef.leistungsdatum between E.semester_anfang and E.semester_ende
and tmp_pruef.semester is null;
update tmp_pruef set st_sem_nr=E.st_sem_nr
FROM costage_st_semester E
where tmp_pruef.leistungsdatum between E.semester_anfang and E.semester_ende
and tmp_pruef.st_sem_nr is null;
update tmp_pruef set semester_veranst=semester
where semester_veranst is null;
--Fachsem. nachladen:
update tmp_pruef
set fachsemester=F.fachsemester
from costage_st_fachsemester F
where F.st_studium_nr=tmp_pruef.st_studium_nr
and F.st_sem_nr=tmp_pruef.st_sem_nr
and F.fachsemestertyp='FS'
;
--Studiengang nachladen
update tmp_pruef set st_studiengang_nr=S.st_studiengang_nr
from costage_st_studien S
where S.st_studium_nr=tmp_pruef.st_studium_nr
and S.st_studstamm_nr=tmp_pruef.st_studstamm_nr
;
--unikey nachladen:
update tmp_pruef set unikey=K.unikey
from costage_st_studiengaenge G, costage_st_studienkennzahlen K
where G.st_studiengang_nr=tmp_pruef.st_studiengang_nr
and K.st_skz_nr=G.st_skz_nr
;
--verknüpfen mit SPO Kontext:
select P.*,
G.context_type,
G.stp_knoten_nr_sichtbar,
G.ghk_nr,
G.st_studium_nr as spo_st_studium_nr,
null::varchar(255) as ghk_typ_kurzbezeichnung
into temp tmp_pruef2
from tmp_pruef P left outer join costage_studienplankontexte G
on (P.leistung_nr=G.leistungs_nr)
;
update tmp_pruef2 set ghk_typ_kurzbezeichnung=G.typ_kurzbezeichnung
from costage_gleichheitsknoten G
where G.ghk_nr=tmp_pruef2.ghk_nr
;
truncate table costage_st_einzpruef_aggr;
insert into costage_st_einzpruef_aggr(st_studium_nr,
st_studstamm_nr,
matrikelnummer,
semester,
semester_veranst,
st_studiengang_nr,
st_studiengang_nr_msg,
studiengang_nr,
fach_nr,
unikey,
studienidentifikator,
fachsemester,
leistung_nr,
leistungstyp_nr,
leistungsdetailtyp_kb,
pnr,
abschnitt,
stp_sp_nr,
veranstaltung_nummer,
veranstaltung_titel,
veranstaltung_art,
semesterstunden,
unterrichtseinheiten,
thema_individuell,
note,
credits,
leistungsdatum,
anerkannt_flag,
zusatzleistung_flag,
leistungsstatus_nr,
leistungsstatus_map_kb,
leistung_nr_msg,
leistungsdatum_msg,
semester_msg,
context_type,
stp_knoten_nr_sichtbar,
ghk_nr,
spo_st_studium_nr,
ghk_typ_kurzbezeichnung,
summe)
select
st_studium_nr,
st_studstamm_nr,
matrikelnummer,
semester,
semester_veranst,
st_studiengang_nr,
st_studiengang_nr_msg,
studiengang_nr,
fach_nr,
unikey,
substring(studienidentifikator from 1 for 255),
fachsemester,
leistung_nr,
leistungstyp_nr,
leistungsdetailtyp_kb,
pnr,
abschnitt,
stp_sp_nr,
veranstaltung_nummer,
substring(veranstaltung_titel from 1 for 255),
veranstaltung_art,
semesterstunden,
unterrichtseinheiten,
substring(thema_individuell from 1 for 255),
case when pv_notenskala_typ_kb in ('DE1','DE2','DE3','DE4','DE5','DE6','DE7') or pv_notenskala_typ_kb is null then note_zahl else null::float end as note,
credits,
leistungsdatum,
anerkannt_flag,
zusatzleistung_flag,
leistungsstatus_nr,
leistungsstatus_map_kb,
leistung_nr_msg,
leistungsdatum_msg,
semester_msg,
context_type,
stp_knoten_nr_sichtbar,
ghk_nr,
spo_st_studium_nr,
ghk_typ_kurzbezeichnung,
count(*)
from tmp_pruef2
group by 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;
drop table tmp_pruef;
drop table tmp_pruef2;

7
src-modules/module/costage/hilfstabellen/costage_st_lv_aggr_fuellen.sql

@ -20,12 +20,11 @@ U.st_studiengang_nr,
null::integer as st_studiengang_nr_msg, null::integer as st_studiengang_nr_msg,
null::varchar(255) as studienidentifikator, null::varchar(255) as studienidentifikator,
val(S.matrikelnummer) as matrikelnummer, val(S.matrikelnummer) as matrikelnummer,
E.semester_tid as semester L.semester
into temp tmp_lv into temp tmp_lv
FROM costage_st_semester E, costage_lehrveranstaltungen L, costage_st_studierendenstammdaten S, FROM costage_lehrveranstaltungen L, costage_st_studierendenstammdaten S,
costage_lv_teilnehmende T, costage_st_studien U costage_lv_teilnehmende T, costage_st_studien U
where E.st_sem_nr=L.st_sem_nr where T.stp_sp_nr=L.stp_sp_nr
and T.stp_sp_nr=L.stp_sp_nr
and U.st_studium_nr=T.st_studium_nr and U.st_studium_nr=T.st_studium_nr
and U.st_studstamm_nr=S.st_studstamm_nr and U.st_studstamm_nr=S.st_studstamm_nr
; ;

4
src-modules/module/costage/hilfstabellen/vacuum_pg.sql

@ -8,3 +8,7 @@ vacuum costage_st_studiengaenge;
vacuum costage_st_studien_aggr; vacuum costage_st_studien_aggr;
vacuum costage_st_pruef_aggr; vacuum costage_st_pruef_aggr;
vacuum costage_bw_antr_aggr; vacuum costage_bw_antr_aggr;
vacuum costage_lehrveranstaltungen;
vacuum costage_lv_teilnehmende;
vacuum costage_st_lv_aggr;
vacuum costage_st_einzpruef_aggr;

2
src-modules/module/costage/masken/43080_maskeninfo.unl

@ -165,4 +165,4 @@ Column CID=${i} heading_text="${myfield.key}\\n(Schlüssel)" explanation="Schlü
</#if>\ </#if>\
</#foreach>\ </#foreach>\
</#if>\ </#if>\
@@@^Altersgruppe^Anzahl^Flexible Ausgabe der Studierendenstatistik, Studiengänge und Lehreinheiten^drop table tmp_tabelle;^ ^2^700^360^0^1^ ^ @@@^Altersgruppe^Anzahl^Flexible Ausgabe der Abschlussprüfungen, Studiengänge und Studierenden-Stammdaten^drop table tmp_tabelle;^ ^2^700^360^0^1^ ^

5
src-modules/module/costage/masken/43110_felderinfo.unl

@ -9,10 +9,7 @@ order by 1^ ^^
43113^Staatsangehörigkeit^36^0^0^130^150^10^sql^30^0^1^<<SQL>> SELECT st_land_nr, name from costage_st_laender order by 2;^^^ 43113^Staatsangehörigkeit^36^0^0^130^150^10^sql^30^0^1^<<SQL>> SELECT st_land_nr, name from costage_st_laender order by 2;^^^
43114^Zulassungsart^14^350^-1^140^180^1^integer^30^0^1^<<SQL>> select nr, name\ 43114^Zulassungsart^14^350^-1^140^180^1^integer^30^0^1^<<SQL>> select nr, name\
FROM costage_bw_zulassungsarten order by 2^^ ^ FROM costage_bw_zulassungsarten order by 2^^ ^
43115^Auswertungsebene Prüfungen^25^330^-1^130^150^1^char^4^0^13^<<SQL>> select 'G','Gesamtabschluss' from xdummy\ 43115^Person-Nr.^25^350^-1^150^180^1^integer^200^0^0^^^^
union select 'F','Absolvent*innenfachfälle' from xdummy\
union select 'T','Teilstudienabschluss' from xdummy\
order by 1;^^ ^
43116^Weitere Tabellen^123^0^0^140^140^10^char^30^0^1^<<SQL>> \ 43116^Weitere Tabellen^123^0^0^140^140^10^char^30^0^1^<<SQL>> \
--freemarker template\ --freemarker template\
select name,string_not_null(caption) || ' - ' || name from sx_tables where name in ('costage_st_studierendenstammdaten','costage_dim_studiengang')\ select name,string_not_null(caption) || ' - ' || name from sx_tables where name in ('costage_st_studierendenstammdaten','costage_dim_studiengang')\

3
src-modules/module/costage/masken/43110_maskeninfo.unl

@ -60,7 +60,7 @@ SELECT name,\
<@generate_foreign_fields_multitable />\ <@generate_foreign_fields_multitable />\
\ \
\ \
<#assign filter="\ <#assign filter="and bw_typ_kb not in ('MBW')\
/* AND bw_zul_art_nr in (<<Zulassungsart>>) */\ /* AND bw_zul_art_nr in (<<Zulassungsart>>) */\
/* and costage_bw_antr_aggr.st_studiengang_nr in (select G.st_studiengang_nr from costage_st_studiengaenge G where G.abschluss in (<<Abschluss>>)) */\ /* and costage_bw_antr_aggr.st_studiengang_nr in (select G.st_studiengang_nr from costage_st_studiengaenge G where G.abschluss in (<<Abschluss>>)) */\
/* and studiengang_nr =<<Studiengang-Nr.>> */\ /* and studiengang_nr =<<Studiengang-Nr.>> */\
@ -71,6 +71,7 @@ SELECT name,\
/* and semester >= <<Seit Semester>> */\ /* and semester >= <<Seit Semester>> */\
/* and semester <= <<Bis Semester>> */\ /* and semester <= <<Bis Semester>> */\
/* and fachsemester <= <<bis Fachsemester>> */\ /* and fachsemester <= <<bis Fachsemester>> */\
/* and st_studstamm_nr =<<Person-Nr.>> */\
" />\ " />\
\ \
/* <#assign filter = filter + " and 's_' || costage_bw_antr_aggr.st_studiengang_nr in "+Studiengang.allNeededKeysList /> --<<Studiengang>> */ \ /* <#assign filter = filter + " and 's_' || costage_bw_antr_aggr.st_studiengang_nr in "+Studiengang.allNeededKeysList /> --<<Studiengang>> */ \

56
src-modules/module/costage/masken/43180_felderinfo.unl

@ -0,0 +1,56 @@
43180^Prüfungstyp^18^0^0^140^150^1^char^70^0^1^<<SQL>>select 'LV','reale Lehrveranstaltung' from xdummy\
union select 'FACH','Fach-/Modulprüfung' from xdummy\
order by 1^ ^^
43181^Seit Semester^3^0^0^140^80^1^integer^30^0^1^<<SQL>> select semester_tid, semester_bezeichnung from costage_st_semester order by 1 DESC;^ ^<<SQL>> select semester_tid, semester_bezeichnung from costage_st_semester where today()-365 between date(semester_anfang) and date(semester_ende);^
43182^Studiengang^9^0^0^130^150^50^char^30^0^12^<<SQL>> select tid,name,sortnr from sichten where art in ('COSTAGE-Studiengang-Sicht') order by 3,2;^^^
43183^Staatsangehörigkeit^36^0^0^130^150^10^sql^30^0^1^<<SQL>> SELECT st_land_nr, name from costage_st_laender order by 2;^^^
43184^Prüfungsstatus^14^350^-1^140^180^1^char^30^0^1^<<SQL>> select apnr,druck from cifx where key=622 order by 2^^ ^
43185^Auswertungsebene Prüfungen^25^330^-1^130^150^1^char^4^1^1^<<SQL>> select 'G','Gesamtabschluss' from xdummy\
union select 'F','Absolvent*innenfachfälle' from xdummy\
union select 'T','Teilstudienabschluss' from xdummy\
order by 1;^hidden^<<SQL>> select 'T','Teilstudienabschluss' from xdummy;^
43186^Weitere Tabellen^123^0^0^140^140^10^char^30^0^1^<<SQL>> \
--freemarker template\
select name,string_not_null(caption) || ' - ' || name from sx_tables where name in ('costage_st_studierendenstammdaten','costage_dim_studiengang')\
<#if <<tablestylesheet>>!='tabelle_html_datenblatt.xsl'>\
and name in (select distinct tablename from stylesheet_field where stylesheet_id in (select tid from sx_stylesheets where filename=<<tablestylesheet>>)) \
</#if>\
order by 2^^^
43187^Leistungsdetailtyp^20^350^-1^140^100^10^char^30^0^1^<<SQL>> select leistungsdetailtyp_kb,name_de from costage_leistungen_detail_typen\
where leistungsdetailtyp_kb in (select distinct leistungsdetailtyp_kb from costage_st_pruef_aggr);^ ^ ^
43189^Bis Semester^4^350^-1^140^80^1^integer^30^0^1^<<SQL>> select semester_tid, semester_bezeichnung from costage_st_semester order by 1 DESC;^ ^<<SQL>> select semester_tid, semester_bezeichnung from costage_st_semester where today() between date(semester_anfang) and date(semester_ende);^
43190^Matrikel-Nr.^50^350^-1^150^180^1^char^200^0^0^^^^
43191^Geschlecht^37^0^0^140^80^1^integer^30^0^1^<<SQL>> SELECT apnr,druck FROM cif WHERE cif.key = 9003 order by 2;^^^
43192^Felder^125^0^0^150^190^10^char^30^0^1^<<SQL>>\
--freemarker template\
select trim(F.table_name) || '.' || F.name,trim(T.caption) || ':' || trim(F.caption) || ' - ' || trim(F.name) from sx_fields F,\
sx_tables T where F.table_name=T.name and F.currentlyused=1\
--Pseudonyme eingeschaltet:\
and (F.name != 'matrikel_nr' or 0=(select \
count(*) from konstanten where beschreibung='SOS_MTKNR_EXT'\
and apnr=1)) \
<#if <<tablestylesheet>>='tabelle_html_datenblatt.xsl'>\
and (F.table_name ='costage_st_einzpruef_aggr'\
/* or F.table_name in (<<Weitere Tabellen>>) */) \
<#else>\
and trim(F.table_name) || '.' || F.name in (select trim(tablename)||'.'||trim(fieldname) from stylesheet_field where stylesheet_id in \
(select tid from sx_stylesheets where filename=<<tablestylesheet>>))\
</#if>\
order by 2;^^^
43193^Fach^6^0^0^140^150^50^char^30^0^1^<<SQL>>\
SELECT \
skz_key,\
skz_name\
FROM costage_st_studienkennzahlen\
/* where unikey=<<Hochschule>> */\
order by 2\
;^^^
43194^Schlüssel anzeigen^150^0^0^100^100^1^integer^30^1^1^<<SQL>> select 1,'Ja' from xdummy union select 0,'Nein' from xdummy^^<<SQL>> select 1,'Ja' from xdummy^
43195^tablestylesheet^121^0^0^100^200^1^char^200^1^1^<<SQL>> select distinct filename,X.caption,ord from sx_stylesheets X,sx_mask_style S where X.tid=S.stylesheet_id and S.maskeninfo_id=43180 order by ord^^<<SQL>> select distinct filename,X.caption from sx_stylesheets X,sx_mask_style S where X.tid=S.stylesheet_id and S.maskeninfo_id=43180 and S.ord=1^
43196^Ausgabeformat^2001^0^0^100^150^1^char^200^1^1^<<SQL>> select element_value,description from menu_element where element='Ausgabeformat' and nature::smallint<100 order by nature::smallint^^<<SQL>> select element_value,description from menu_element where element='Ausgabeformat' and description='HTML'^
43199^Hochschule^5^350^-1^140^80^1^char^255^0^1^<<SQL>>select distinct K.unikey,K.unikey\
from costage_st_studienkennzahlen K\
order by 2;^ ^<<SQL>> select distinct K.unikey,K.unikey\
from costage_st_studienkennzahlen K, hochschulinfo H\
where K.unikey=H.hs_nr::char(10)^
43200^##line##^10^0^0^100^100^1^char^5000^0^8^^^1^

1
src-modules/module/costage/masken/43180_maske_system_bez.unl

@ -0,0 +1 @@
43180^310^

21
src-modules/module/costage/masken/43180_masken_felder_bez.unl

@ -0,0 +1,21 @@
43180^43180^
43180^43181^
43180^43182^
43180^43183^
43180^43184^
43180^43185^
43180^43186^
43180^43187^
43180^43188^
43180^43189^
43180^43190^
43180^43191^
43180^43192^
43180^43193^
43180^43194^
43180^43195^
43180^43196^
43180^43197^
43180^43198^
43180^43199^
43180^43200^

152
src-modules/module/costage/masken/43180_maskeninfo.unl

@ -0,0 +1,152 @@
43180^Einzelprüfungen Datenblatt (CO)^--Freemarker Template\
<#include "SuperX_general"/>\
<#include "SQL_multitable_output"/>\
\
--ram excelexport \
<#include "SQL_lingua_franca"/>\
<#include "SuperX_general"/>\
<#include "SQL_multitable_output"/>\
\
<sqlvars>\
<sqlvar name="get_tables"><![CDATA[\
SELECT distinct name,name\
from sx_tables\
where name in ('costage_st_einzpruef_aggr'\
${DatenblattTables(<<tablestylesheet>>,"<<Weitere Tabellen>>",.vars["Weitere TabellenObject"].allKeys)}\
\
)\
order by 2;]]>\
</sqlvar>\
<sqlvar name="get_table_joins"><![CDATA[\
select table_name || '.' || name || '=' || foreignkey_tab || '.' || foreignkey_col,table_name \
from sx_fields where table_name in ('costage_st_einzpruef_aggr'\
${DatenblattTables(<<tablestylesheet>>,"<<Weitere Tabellen>>",.vars["Weitere TabellenObject"].allKeys)} )\
and foreignkey_tab in ('costage_st_einzpruef_aggr'\
${DatenblattTables(<<tablestylesheet>>,"<<Weitere Tabellen>>",.vars["Weitere TabellenObject"].allKeys)})\
;]]>\
</sqlvar>\
<sqlvar name="get_felder"><![CDATA[\
SELECT name,\
caption,\
(trim(field_type) || '#' || is_primarykey || '#' || trim(string_not_null(foreignkey_tab)) || '#' || trim(string_not_null(foreignkey_col))\
|| '#' || trim(string_not_null(foreignkey_cap))\
|| '#' || trim(string_not_null(foreignkey_cond))\
|| '#' || trim(string_not_null(foreignkey_func))\
|| '#' || trim(string_not_null(table_name))\
|| '#' || trim(string_not_null(foreignkey_uniquename)))::char(255) as strukturStr\
from sx_fields\
where table_name in ('costage_st_einzpruef_aggr'\
${DatenblattTables(<<tablestylesheet>>,"<<Weitere Tabellen>>",.vars["Weitere TabellenObject"].allKeys)}\
)\
and currentlyused=1\
${DatenblattFields(<<tablestylesheet>>,"<<Felder>>",FelderObject.allKeys)}\
order by 2,3;]]>\
</sqlvar>\
<sqlvar name="get_felder_fk"><![CDATA[\
SELECT name,\
caption,\
(trim(table_name)\
|| '#' || trim(string_not_null(foreignkey_tab))\
|| '#' || trim(string_not_null(foreignkey_uniquename)))::char(255) as strukturStr\
from sx_fields\
where table_name in ('costage_st_einzpruef_aggr' ${DatenblattTables(<<tablestylesheet>>,"<<Weitere Tabellen>>",.vars["Weitere TabellenObject"].allKeys)}\
)\
and currentlyused=1\
${DatenblattFields(<<tablestylesheet>>,"<<Felder>>",FelderObject.allKeys)}\
order by 2,3;]]>\
</sqlvar>\
</sqlvars>\
\
<@generate_multitable_list />\
<@generate_field_list_multitable aggregationsfeld="summe" aggregatfunktion="sum(" />\
<@generate_foreign_fields_multitable />\
\
\
<#assign filter="\
/* and hrst in (<<Hörerstatus>>) */\
/* AND leistungsdetailtyp_kb in (<<Leistungsdetailtyp>>) */\
/* and leistungsstatus_map_kb in(<<Prüfungsstatus>>) */\
/* and costage_st_einzpruef_aggr.st_studiengang_nr in (select G.st_studiengang_nr from costage_st_studiengaenge G where G.abschluss in (<<Abschluss>>)) */\
/* and studiengang_nr =<<Studiengang-Nr.>> */\
/* and fach_nr =<<Fach-Nr.>> */\
/* and costage_st_einzpruef_aggr.st_studstamm_nr in (select S.st_studstamm_nr from costage_st_studierendenstammdaten S where S.st_land1_nr in (<<Staatsangehörigkeit>>) ) */\
/* and costage_st_einzpruef_aggr.st_studstamm_nr in (select S2.st_studstamm_nr from costage_st_studierendenstammdaten S2 where S2.geschlecht = <<Geschlecht>> ) */\
/* and costage_st_einzpruef_aggr.unikey=<<Hochschule>> */\
/* and costage_st_einzpruef_aggr.ghk_typ_kurzbezeichnung=<<Prüfungstyp>> */\
\
" />\
\
\
<#if "<<Matrikel-Nr.>>"!="">\
<#assign filter=filter+" and costage_st_einzpruef_aggr.matrikelnummer in (<<Matrikel-Nr.>>)"?replace("'","")/>\
</#if>\
/* <#assign filter = filter + " and 's_' || costage_st_einzpruef_aggr.st_studiengang_nr in "+Studiengang.allNeededKeysList /> --<<Studiengang>> */ \
\
--Feld Auswertungsebene Prüfungen\
--Was wird ausgewertet? Welche Leistungsdetailtypen sin betroffen? Welches Prüfungsdatum/Semester soll ausgewertet werden?\
--G=Gesamtabschluss=BAKN, MAGN, STEX, ERGAB Prüfungsdatum/Semester\
--F=Absolvent*innenfachfälle=TSAB Prüfungsdatum/Semester des MSG\
--T=Teilstudienabschluss=TSAB Prüfungsdatum/Semester\
\
<#assign semester_filter="1=1" />\
<#assign semester_feld="semester_veranst" />\
\
<#assign fach_filter="1=1" />\
--Default: \
/* <#assign fach_filter="costage_st_einzpruef_aggr.st_studiengang_nr in (select G.st_studiengang_nr from costage_st_studiengaenge G where G.skz_key in (<<Fach>>)) "/> \
*/\
\
\
/* <#assign semester_filter=semester_filter + " and "+semester_feld + " >= <<Seit Semester>>" /> */\
/* <#assign semester_filter=semester_filter + " and "+semester_feld + " <= <<Bis Semester>>" /> */\
\
\
<#assign filter=filter + " and " + semester_filter +" and " + fach_filter />\
\
<@generate_resultset_multitable tabellen=table_list\
p_show_keys=<<Schlüssel anzeigen>>\
p_field_list_select=field_list_select\
p_foreign_fields=foreign_fields\
p_filter=filter\
p_field_list_groupby=field_list_groupby\
p_join_clause=join_clause\
/>^--Freemarker Template \
<sqlvars>\
<sqlvar name="basetable">select 'costage_st_einzpruef_aggr' from xdummy</sqlvar>\
<sqlvar name="restriction"><![CDATA[\
<#assign restrict=DatenblattTables(<<tablestylesheet>>,"<<Weitere Tabellen>>",.vars["Weitere TabellenObject"].allKeys)/>;\
select '${restrict?replace("\\x0027","\\x0027\\x0027")}' from xdummy;]]>\
</sqlvar>\
<sqlvar name="get_felder"><![CDATA[\
SELECT caption,\
foreignkey_tab,\
description as strukturStr\
from sx_fields\
where table_name in ('${basetable}'\
${restriction}\
)\
and currentlyused=1\
${DatenblattFields(<<tablestylesheet>>,"<<Felder>>",FelderObject.allKeys)}\
order by 1;]]>\
</sqlvar>\
</sqlvars>\
XIL List\
sizable_columns horizontal_scrolling\
white_space_color=COLOR_WHITE fixed_columns=1\
min_heading_height=35\
<#assign i=1 />\
<#if get_felder?has_content >\
<#foreach myfield in get_felder>\
<#assign i=i+1 />\
Column CID=${i} heading_text="${myfield.key}" explanation="${myfield.strukturStr}" center_heading\
row_selectable col_selectable rightJust heading_platform readonly\
width=20\
<#if myfield.name != '' && <<Schlüssel anzeigen>>==1>\
<#assign i=i+1 />\
Column CID=${i} heading_text="${myfield.key}\\n(Schlüssel)" explanation="Schlüssel des Feldes ${myfield.key}" center_heading\
row_selectable col_selectable rightJust heading_platform readonly\
width=20\
</#if>\
</#foreach>\
</#if>\
@@@^Altersgruppe^Anzahl^Flexible Ausgabe der Einzelprüfungen im SPO-Kontext, Studiengänge und Lehreinheiten^drop table tmp_tabelle;^ ^2^700^360^0^1^ ^

1
src-modules/module/costage/masken/43180_sachgeb_maske_bez.unl

@ -0,0 +1 @@
310^43180^

617
src-modules/module/costage/rohdaten/costage_prepare_unlfiles.x

File diff suppressed because it is too large Load Diff

29
src-modules/module/costage/rohdaten/costage_unload.xml

@ -382,6 +382,8 @@ where S.st_sem_nr=B.st_sem_nr
and to_number('20' || replace(replace(S.semester_id,'S','1'),'W','2')) >= $COSTAGE_start_bw_sem and to_number('20' || replace(replace(S.semester_id,'S','1'),'W','2')) >= $COSTAGE_start_bw_sem
and current_date+365 > S.semester_anfang and current_date+365 > S.semester_anfang
and extract(year from S.semester_anfang) > 2000 and extract(year from S.semester_anfang) > 2000
and B.abgeschickt_datum is not null --TUG: abgeschickt_datum = Null sind zu filtern. Diese wurden dann nie an die Hochschule übermittelt.
and B.zurueckgezogen_am is null
; ;
]]> ]]>
@ -625,7 +627,7 @@ FROM px_st_ersthochschulen_v
SELECT H.st_studstamm_nr, SELECT H.st_studstamm_nr,
H.st_sem_nr, H.st_sem_nr,
H.anzahl_hochschulsemester H.anzahl_hochschulsemester
FROM sx_st_hochschulsemester_v H,px_st_semester_v S FROM px_st_hochschulsemester_v H,px_st_semester_v S
where S.st_sem_nr=H.st_sem_nr where S.st_sem_nr=H.st_sem_nr
and H.anzahl_hochschulsemester >0 and H.anzahl_hochschulsemester >0
and to_number('20' || replace(replace(S.semester_id,'S','1'),'W','2')) >= $COSTAGE_start_st_sem and to_number('20' || replace(replace(S.semester_id,'S','1'),'W','2')) >= $COSTAGE_start_st_sem
@ -652,12 +654,12 @@ SELECT leistung_nr,
spov_abschluss, spov_abschluss,
stp_sp_nr, stp_sp_nr,
veranstaltung_nummer, veranstaltung_nummer,
veranstaltung_semester, substr(veranstaltung_semester,0, 254),
veranstaltung_titel, substr(veranstaltung_titel,0, 254),
veranstaltung_art, veranstaltung_art,
semesterstunden, semesterstunden,
unterrichtseinheiten, unterrichtseinheiten,
thema_individuell, substr(thema_individuell,0, 254),
pv_notenskala_nr, pv_notenskala_nr,
note, note,
note_name, note_name,
@ -676,7 +678,8 @@ SELECT leistung_nr,
zusatzleistung_flag, zusatzleistung_flag,
leistungsstatus_nr, leistungsstatus_nr,
leistungsstatus_map_kb leistungsstatus_map_kb
FROM sx_leistungen_v FROM sx_leistungen_v
--da das Semester bei Leistungen nicht immer gefuellt ist bzw. der Datum der Leistung nach dem Studium sein kann, hier keine Where Bedingung aufs Startsemester
; ;
]]> ]]>
</extraction-sql> </extraction-sql>
@ -825,11 +828,15 @@ and to_number('20' || replace(replace(S.semester_id,'S','1'),'W','2')) >= $COSTA
<comment>Fixplatzanmeldungen</comment> <comment>Fixplatzanmeldungen</comment>
<extraction-sql sourcesystem="co" database="" version=""> <extraction-sql sourcesystem="co" database="" version="">
<![CDATA[ <![CDATA[
SELECT lv_grp_pers_nr, SELECT T.lv_grp_pers_nr,
st_studium_nr, T.st_studium_nr,
stp_sp_nr, T.stp_sp_nr,
lv_grp_name T.lv_grp_name
FROM px_lv_teilnehmende_v FROM px_lv_teilnehmende_v T, px_lehrveranstaltungen_v L,px_st_semester_v S
where T.stp_sp_nr=L.stp_sp_nr
and S.st_sem_nr=L.st_sem_nr
and to_number('20' || replace(replace(S.semester_id,'S','1'),'W','2')) >= $COSTAGE_start_lv_sem
; ;
]]> ]]>
@ -848,6 +855,7 @@ SELECT st_studien_nr,
text, text,
datum datum
FROM px_ergebnisse_v FROM px_ergebnisse_v
where 1=0
; ;
]]> ]]>
@ -864,6 +872,7 @@ SELECT st_studium_nr,
stp_knoten_nr_sichtbar, stp_knoten_nr_sichtbar,
ghk_nr ghk_nr
FROM px_studienplankontexte_v FROM px_studienplankontexte_v
where 1=0
; ;
]]> ]]>

6
src-modules/module/costage/rohdaten_sos/sos_costage_unload.xml

@ -5482,18 +5482,18 @@ null as sortorder
SELECT SELECT
12, 12,
0, 0,
statistik_code, kurzbezeichnung,
kurzbezeichnung as ktxt, kurzbezeichnung as ktxt,
name, name,
name, name,
statistik_code as astat, statistik_code as astat,
'', '',
statistik_code as akfz,--uniqename kurzbezeichnung as akfz,--uniqename
'' as erdteil, '' as erdteil,
'' , '' ,
null::date as gueltig_von, null::date as gueltig_von,
null::date as gueltig_bis, null::date as gueltig_bis,
statistik_code, --sourcesystem_id kurzbezeichnung, --sourcesystem_id
'' , --hiskey_id '' , --hiskey_id
'' ,--egmitgl struktur_c '' ,--egmitgl struktur_c
null as lid, null as lid,

24
src-modules/module/costage/schluesseltabellen/konstanten_fuellen.sql

@ -48,6 +48,30 @@ beschreibung,
'Datenquelle, Entladestartzeitpunkt, -umfang', 'Datenquelle, Entladestartzeitpunkt, -umfang',
310); 310);
insert into tmp_konstanten(apnr,
beschreibung,
defaultvalue,
description,
systeminfo_id,
doku_link,
read_only,
wertebereich,
ab_version,
gruppe,
sachgebiete_id)
values (5,
'COSTAGE_einzpruef_anz_sem',
5,
'Anzahl der Semester, für die rückwirkend Einzelprüfungen berechnet werden',
310,
'Modul_Studienerfolg_Admin-HISinOne.xhtml#Konstanten',
0 ,
null::Char(1),
'2023.06',
'Datenquelle, Entladestartzeitpunkt, -umfang',
120);
--vorhandene Schlüssel Metadaten updaten: --vorhandene Schlüssel Metadaten updaten:

3
src-modules/module/costage/schluesseltabellen/sx_stylesheets_einfuegen.sql

@ -7,7 +7,8 @@
{"mask":"43040", "filename":"tabelle_html_datenblatt.xsl", "ord":"1"}, {"mask":"43040", "filename":"tabelle_html_datenblatt.xsl", "ord":"1"},
{"mask":"43080", "filename":"tabelle_html_datenblatt.xsl", "ord":"1"}, {"mask":"43080", "filename":"tabelle_html_datenblatt.xsl", "ord":"1"},
{"mask":"43110", "filename":"tabelle_html_datenblatt.xsl", "ord":"1"}, {"mask":"43110", "filename":"tabelle_html_datenblatt.xsl", "ord":"1"},
{"mask":"43140", "filename":"tabelle_html_datenblatt.xsl", "ord":"1"} {"mask":"43140", "filename":"tabelle_html_datenblatt.xsl", "ord":"1"},
{"mask":"43180", "filename":"tabelle_html_datenblatt.xsl", "ord":"1"}
] /> ] />
<#assign stylesheet = [ <#assign stylesheet = [

2
src-modules/module/costage/upgrade/costage_upgrade_man.sql

@ -6,6 +6,8 @@
alter table costage_st_studienkennzahlen alter column skz_key type char(10); alter table costage_st_studienkennzahlen alter column skz_key type char(10);
alter table costage_st_studierendenstammdaten_neu alter column aufnahmedatum type varchar(255); alter table costage_st_studierendenstammdaten_neu alter column aufnahmedatum type varchar(255);
--alter table costage_st_studierendenstammdaten alter column geschlecht type integer using val(geschlecht); --alter table costage_st_studierendenstammdaten alter column geschlecht type integer using val(geschlecht);
alter table costage_bw_bewerb_hzb alter column hzb_punkte type float;
alter table costage_bw_bewerb_hzb alter column hzb_punkte_max type float;
</#if> </#if>

Loading…
Cancel
Save