Compare commits

..

2 Commits

  1. 159
      src-modules/module/costage/conf/costage.xml
  2. 13
      src-modules/module/costage/hilfstabellen/costage_bw_antr_aggr_fuellen.sql
  3. 8
      src-modules/module/costage/hilfstabellen/costage_st_einzpruef_aggr_fuellen.sql
  4. 214
      src-modules/module/costage/hilfstabellen/costage_st_pruef_aggr_fuellen.sql
  5. 160
      src-modules/module/costage/hilfstabellen/costage_st_studien_aggr_fuellen.sql
  6. 6
      src-modules/module/costage/masken/43040_maskeninfo.unl
  7. 12
      src-modules/module/costage/masken/43080_maskeninfo.unl
  8. 18
      src-modules/module/costage/rohdaten/costage_unload.xml
  9. 150
      src-modules/module/costage/rohdaten_sos/sos_costage_unload.xml
  10. 3
      src-modules/module/costage/rohdaten_zul/zul_costage_unload.xml
  11. 122
      src-modules/module/costage/schluesseltabellen/costage_dim_studiengang_fuellen.sql
  12. 3
      src-modules/module/costage/schluesseltabellen/sx_repository.unl
  13. 8
      src-modules/module/costage/upgrade/costage_pre_upgrade_pg.sql
  14. 1
      src-modules/module/costage/upgrade/costage_upgrade_man.sql

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

@ -1,5 +1,5 @@ @@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<module name="costage" version="0.7b" sachgebiet_id="310"
<module name="costage" version="0.6" sachgebiet_id="310"
sachgebiet="CO Basisdaten" systeminfo_id="310"
system="CO Basisdaten" thema="CO Basisdaten" thema_parent="Studierende, Prüfungen">
<database name="superx" system="superx">
@ -272,8 +272,7 @@ rightname="CS_BIA_STANDARDREPORTS_ADMIN[CO]" /> @@ -272,8 +272,7 @@ rightname="CS_BIA_STANDARDREPORTS_ADMIN[CO]" />
<table name="costage_st_studiengaenge" thema="Studierende und Gebühren" caption="Studiengänge (CO)" typ="Schlüsseltabelle" releaseUnload="empty">
<description>Studiengänge (CO)</description>
<columns>
<column name="st_studiengang_nr" type ="INTEGER" size ="8" default ="" notnull ="true" description="Studiengangnr. CO" />
<columns><column name="st_studiengang_nr" type ="INTEGER" size ="8" default ="" notnull ="true" />
<column name="studiengangs_identifikator" type ="VARCHAR" size ="4000" default ="" notnull ="false" description="" />
<column name="studiengangs_bezeichnung" type ="VARCHAR" size ="4000" default ="" notnull ="false" description="" />
<column name="st_absz_nr" type ="INTEGER" size ="8" default ="" notnull ="true" description="" currentlyUsed="false"/>
@ -303,9 +302,7 @@ rightname="CS_BIA_STANDARDREPORTS_ADMIN[CO]" /> @@ -303,9 +302,7 @@ rightname="CS_BIA_STANDARDREPORTS_ADMIN[CO]" />
</table>
<table name="costage_dim_studiengang" thema="Studierende und Gebühren" caption="Studiengänge (CO)" typ="Schlüsseltabelle" releaseUnload="empty">
<columns>
<column name="tid" type ="SERIAL" size ="8" default ="" notnull ="true" description="Laufnummer"/>
<column name="st_studiengang_nr" type ="INTEGER" size ="10" default ="" notnull ="false" description="Studiengang Laufnr."/>
<columns><column name="st_studiengang_nr" type ="INTEGER" size ="10" default ="" notnull ="false" description="Studiengang Laufnr."/>
<column name="studiengangs_identifikator" type ="VARCHAR" size ="255" default ="" notnull ="false" description="Studiengang ID"/>
<column name="studiengangs_bezeichnung" type ="VARCHAR" size ="255" default ="" notnull ="false" description="Studiengang Name"/>
<column name="st_absz_nr" type ="INTEGER" size ="10" default ="" notnull ="false" description="Abschlussziel Laufnr."/>
@ -318,7 +315,7 @@ rightname="CS_BIA_STANDARDREPORTS_ADMIN[CO]" /> @@ -318,7 +315,7 @@ rightname="CS_BIA_STANDARDREPORTS_ADMIN[CO]" />
<column name="studientyp_kb" type ="VARCHAR" size ="10" default ="" notnull ="false" description="Studientyp KB"/>
<column name="stp_stp_nr" type ="INTEGER" size ="10" default ="" notnull ="false" description="" currentlyUsed="false"/>
<column name="stuart" type ="CHAR" size ="10" default ="" notnull ="false" description="" currentlyUsed="false"/>
<column name="stufrm" type ="CHAR" size ="10" default ="" notnull ="false" description="Studienform" currentlyUsed="false"/>
<column name="stufrm" type ="CHAR" size ="10" default ="" notnull ="false" description="Studienform" />
<column name="pversion" type ="VARCHAR" size ="255" default ="" notnull ="false" description="P-Version" currentlyUsed="false"/>
<column name="rsz" type ="INTEGER" size ="10" default ="" notnull ="false" description="Regelstudienzeit" currentlyUsed="false"/>
<column name="skz_key" type ="CHAR" size ="10" default ="" notnull ="false" description="Studienfach (CO) Schlüssel" />
@ -334,14 +331,6 @@ rightname="CS_BIA_STANDARDREPORTS_ADMIN[CO]" /> @@ -334,14 +331,6 @@ rightname="CS_BIA_STANDARDREPORTS_ADMIN[CO]" />
</columns>
<indexes></indexes>
<primaryKeys><rs>
<row>
<fld name='table_cat'></fld>
<fld name='table_schem'>public</fld>
<fld name='table_name'>costage_dim_studiengang</fld>
<fld name='column_name'>tid</fld>
<fld name='key_seq'>1</fld>
<fld name='pk_name'>costage_dim_studiengang_pkey</fld>
</row>
</rs></primaryKeys>
<foreignKeys></foreignKeys>
<importedKeys></importedKeys>
@ -532,10 +521,40 @@ rightname="CS_BIA_STANDARDREPORTS_ADMIN[CO]" /> @@ -532,10 +521,40 @@ rightname="CS_BIA_STANDARDREPORTS_ADMIN[CO]" />
<table name="costage_st_studien_aggr" thema="Studierende und Gebühren" caption="Studienverläufe (CO)" typ="Hilfstabelle" releaseUnload="empty">
<columns><!--Studierendendaten-->
<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="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_studienstatus_nr" type ="INTEGER" size ="8" default ="" notnull ="false" description="Studienstatus (ID)" />
<column name="statustyp" type ="CHAR" size ="10" default ="" notnull ="false" description="Studienstatus"><comment>ESG oder, bei TSG, der Status des MSG</comment></column>
<column name="statustyp_tsg" type ="CHAR" size ="10" default ="" notnull ="false" description="Studienstatus TSG" />
<column name="tsg_generated" type ="SMALLINT" size ="2" default ="0" notnull ="false" description="Automatisch generierter Datensatz" ><comment>Wenn TSG vor MSG beendet wird, werden TSG-Sätze generiert</comment></column>
<column name="hrst" type ="CHAR" size ="10" default ="" notnull ="false" description="Hörerstatus" />
<column name="semester" type ="INTEGER" size ="8" default ="" notnull ="true" description="Semester" />
<column name="fachsemester" type ="INTEGER" size ="4" default ="" notnull ="false" description="Fachsemester" />
<column name="hssem" type ="INTEGER" size ="4" default ="" notnull ="false" description="Hochschulsemester" />
<column name="primaerflag" type ="SMALLINT" size ="2" default ="" notnull ="false" description="Primärfach" />
<column name="studiengang_nr" type ="INTEGER" size ="8" default ="" notnull ="false" description="Studiengang (Nr.)" />
<column name="fach_nr" type ="INTEGER" size ="8" default ="" notnull ="false" description="Fach (Nr.)" />
<column name="unikey" type ="CHAR" size ="10" default ="" notnull ="false" description="Hochschulnummer" />
<column name="anfdat" type ="DATE" size ="4" default ="" notnull ="false" description="Beginndatum"/>
<column name="ruebeudat" type ="DATE" size ="4" default ="" notnull ="false" description="Rückmeldedatum"/>
<column name="endedat" type ="DATE" size ="4" default ="" notnull ="false" description="Datum der Exmatr."/>
<column name="stufrm" type ="CHAR" size ="10" default ="" notnull ="false" description="Studienform"/>
<column name="kz_rueck_beur_ein" type ="SMALLINT" size ="2" default ="" notnull ="false" description="Rückmeldestatus (amtlich)" />
<column name="abm_art_p" type ="CHAR" size ="10" default ="" notnull ="false" description="Art Abmeldung (personbezogen)" >
<sourcefield table="costage_st_personen_abmeldungen" name="st_abm_art_kurzbezeichnung" sourcesystem="co" />
<comment>Lookup via: st_studium_nr/st_sem_nr - costage_st_personen_abmeldungen.st_studium_nr/st_sem_nr - costage_st_semester.semester_tid / costage_st_abmeldungsarten.bezug='P'</comment>
</column>
<column name="abm_art_s" type ="CHAR" size ="10" default ="" notnull ="false" description="Art Abmeldung (studienbezogen)" >
<sourcefield table="costage_st_personen_abmeldungen" name="st_abm_art_kurzbezeichnung" sourcesystem="co" />
<comment>Lookup via: st_studium_nr/st_sem_nr - costage_st_personen_abmeldungen.st_studium_nr/st_sem_nr - costage_st_semester.semester_tid / costage_st_abmeldungsarten.bezug='S'</comment>
</column>
<column name="urlaub_art" type ="INTEGER" size ="10" default ="" notnull ="false" description="Art der Beurlaubung (amtlich)" >
<sourcefield table="costage_st_urlaube" name="st_urlaub_typ_nr" sourcesystem="co" />
<comment>Lookup via: st_studium_nr/st_sem_nr - costage_st_urlaube.st_studium_nr/st_sem_nr </comment>
</column>
<column name="adresse_ort_s" type ="VARCHAR" size ="255" default ="" notnull ="false" description="Wohnsitz Landkreis (Studienadresse)" >
<sourcefield table="costage_st_adressen" name="land_kfz_kennzeichen_subregion" sourcesystem="co" />
<comment>Lookup via: st_studstamm_nr - costage_st_adressen.st_studstamm_nr - costage_st_adressen.st_adresse_typ='S' </comment>
@ -552,68 +571,35 @@ rightname="CS_BIA_STANDARDREPORTS_ADMIN[CO]" /> @@ -552,68 +571,35 @@ rightname="CS_BIA_STANDARDREPORTS_ADMIN[CO]" />
<sourcefield table="costage_st_adressen" name="st_land_nr" sourcesystem="co" />
<comment>Lookup via: st_studstamm_nr - costage_st_adressen.st_studstamm_nr -costage_st_adressen.st_adresse_typ='H' </comment>
</column>
<column name="po_stp_stp_version_kb" type ="CHAR" size ="10" default ="" notnull ="false" description="SPO-Version" >
<sourcefield table="costage_st_studien_spoversionen" name="po_stp_stp_version_kb" sourcesystem="co" />
<comment>Lookup via: st_studium_nr - costage_st_studien_spoversionen.st_studium_nr, hierbei die jeweils letzte (max(gueltig_ab) </comment>
</column>
<column name="summe" type ="INTEGER" size ="2" default ="" notnull ="false" description="Summe" />
<column name="kz_rueck_beur_ein_tsg" type ="SMALLINT" size ="2" default ="" notnull ="false" description="Rückmeldestatus (amtlich) TSG" />
<column name="hzb_land_nr" type ="INTEGER" size ="4" default ="" notnull ="false" description="HZB-Staat"/>
<column name="hzb_land_sub_r_nr" type ="INTEGER" size ="4" default ="" notnull ="false" description="HZB-Ort"/>
<column name="hzb_art_nr" type ="INTEGER" size ="4" default ="" notnull ="false" description="HZB-Art"/>
<column name="hzb_jahr" type ="INTEGER" size ="4" default ="" notnull ="false" description="HZB-Jahr"/>
<column name="hzb_datum" type ="DATE" size ="7" default ="" notnull ="false" description="HZB Datum "/>
<column name="hzb_note" type ="DECIMAL" size ="(14,7)" default ="" notnull ="false" description="HZB-Note"/>
<!--studiengang-->
<column name="studiengang_tid" type ="INTEGER" size ="8" default ="" notnull ="false" description="Studiengang (Join-ID)" />
<column name="studiengangs_identifikator" type ="VARCHAR" size ="255" default ="" notnull ="false" description="Studiengang-Identifikator (ESG/MSG)" />
<column name="studiengangs_identifikator_tsg" type ="VARCHAR" size ="255" default ="" notnull ="false" description="Studiengang-Identifikator (TSG)" />
<column name="st_studiengang_nr" type ="INTEGER" size ="8" default ="" notnull ="false" description="Studiengang (ID) des ESG/MSG" />
<column name="st_studiengang_nr_tsg" type ="INTEGER" size ="8" default ="" notnull ="false" description="Studiengang (ID) des TSG" ><comment>nur bei TSG</comment></column>
<column name="studiengangs_typ_kb" type ="CHAR" size ="10" default ="" notnull ="false" description="Studiengangstyp" currentlyUsed="false"><comment>TSG/ESG</comment></column>
<column name="primaerflag" type ="SMALLINT" size ="2" default ="" notnull ="false" description="Primärfach" />
<column name="studiengang_nr" type ="INTEGER" size ="8" default ="" notnull ="false" description="Studiengang (Nr.)" />
<column name="fach_nr" type ="INTEGER" size ="8" default ="" notnull ="false" description="Fach (Nr.)" />
<column name="unikey" type ="CHAR" size ="10" default ="" notnull ="false" description="Hochschulnummer" />
<column name="tsg_generated" type ="SMALLINT" size ="2" default ="0" notnull ="false" description="Automatisch generierter Datensatz" ><comment>Wenn TSG vor MSG beendet wird, werden TSG-Sätze generiert</comment></column>
<column name="po_stp_stp_version_kb" type ="CHAR" size ="10" default ="" notnull ="false" description="SPO-Version" >
<sourcefield table="costage_st_studien_spoversionen" name="po_stp_stp_version_kb" sourcesystem="co" />
<comment>Lookup via: st_studium_nr - costage_st_studien_spoversionen.st_studium_nr, hierbei die jeweils letzte (max(gueltig_ab) </comment>
</column>
<column name="po_regelstudienzeit" type ="INTEGER" size ="10" default ="" notnull ="false" description="Regelstudienzeit SPO-Version" >
<sourcefield table="costage_st_studien_spoversionen" name="po_regelstudienzeit" sourcesystem="co" />
<comment>Lookup via: st_studium_nr - costage_st_studien_spoversionen.st_studium_nr, hierbei die jeweils letzte (max(gueltig_ab) </comment>
</column>
<column name="stufrm" type ="CHAR" size ="10" default ="" notnull ="false" description="Studienform"/>
<!--studienverlauf-->
<column name="semester" type ="INTEGER" size ="8" default ="" notnull ="true" description="Semester" />
<column name="fachsemester" type ="INTEGER" size ="4" default ="" notnull ="false" description="Fachsemester" />
<column name="hssem" type ="INTEGER" size ="4" default ="" notnull ="false" description="Hochschulsemester" />
<column name="anfdat" type ="DATE" size ="4" default ="" notnull ="false" description="Beginndatum"/>
<column name="ruebeudat" type ="DATE" size ="4" default ="" notnull ="false" description="Rückmeldedatum"/>
<column name="endedat" type ="DATE" size ="4" default ="" notnull ="false" description="Datum der Exmatr."/>
<column name="endedat_tsg" type ="DATE" size ="4" default ="" notnull ="false" description="Datum der Abmeldung (TSG)"/>
<column name="praxissemester" type ="INTEGER" size ="4" default ="" notnull ="false" description="Praxissemester" />
<column name="klinsem" type ="INTEGER" size ="4" default ="" notnull ="false" description="Klinische Semester" />
<column name="st_studium_nr" type ="INTEGER" size ="8" default ="" notnull ="false" description="Studium des ESG/MSG (ID)" />
<column name="st_studium_nr_tsg" type ="INTEGER" size ="8" default ="" notnull ="false" description="Studium des TSG (ID)" />
<!--Studienstatus-->
<column name="st_studienstatus_nr" type ="INTEGER" size ="8" default ="" notnull ="false" description="Studienstatus (ID)" />
<column name="statustyp" type ="CHAR" size ="10" default ="" notnull ="false" description="Studienstatus"><comment>ESG oder, bei TSG, der Status des MSG</comment></column>
<column name="statustyp_tsg" type ="CHAR" size ="10" default ="" notnull ="false" description="Studienstatus TSG" />
<column name="kz_rueck_beur_ein" type ="SMALLINT" size ="2" default ="" notnull ="false" description="Rückmeldestatus (amtlich)" />
<column name="kz_rueck_beur_ein_tsg" type ="SMALLINT" size ="2" default ="" notnull ="false" description="Rückmeldestatus (amtlich) TSG" />
<column name="abm_art_p" type ="CHAR" size ="10" default ="" notnull ="false" description="Art Abmeldung (personbezogen)" >
<sourcefield table="costage_st_personen_abmeldungen" name="st_abm_art_kurzbezeichnung" sourcesystem="co" />
<comment>Lookup via: st_studium_nr/st_sem_nr - costage_st_personen_abmeldungen.st_studium_nr/st_sem_nr - costage_st_semester.semester_tid / costage_st_abmeldungsarten.bezug='P'</comment>
</column>
<column name="abm_art_s" type ="CHAR" size ="10" default ="" notnull ="false" description="Art Abmeldung (studienbezogen) ESG/MSG" >
<column name="studiengangs_identifikator_msg" type ="VARCHAR" size ="255" default ="" notnull ="false" description="Studiengang-Identifikator (MSG)" />
<column name="abm_art_s_msg" type ="CHAR" size ="10" default ="" notnull ="false" description="Art Abmeldung (studienbezogen) MSG" >
<sourcefield table="costage_st_personen_abmeldungen" name="st_abm_art_kurzbezeichnung" sourcesystem="co" />
<comment>Lookup via: st_studium_nr/st_sem_nr - costage_st_personen_abmeldungen.st_studium_nr/st_sem_nr - costage_st_semester.semester_tid / costage_st_abmeldungsarten.bezug='S'</comment>
</column>
<column name="abm_art_s_tsg" type ="CHAR" size ="10" default ="" notnull ="false" description="Art Abmeldung (studienbezogen) TSG" >
<!--<column name="abm_datum_p" type ="DATE" size ="10" default ="" notnull ="false" description="Datum der Abmeldung (personbezogen)" >
<sourcefield table="costage_st_personen_abmeldungen" name="st_abm_art_kurzbezeichnung" sourcesystem="co" />
<comment>Lookup via: st_studium_nr/st_sem_nr - costage_st_personen_abmeldungen.st_studium_nr/st_sem_nr - costage_st_semester.semester_tid / costage_st_abmeldungsarten.bezug='S'</comment>
</column>
<column name="urlaub_art" type ="INTEGER" size ="10" default ="" notnull ="false" description="Art der Beurlaubung (amtlich)" >
<sourcefield table="costage_st_urlaube" name="st_urlaub_typ_nr" sourcesystem="co" />
<comment>Lookup via: st_studium_nr/st_sem_nr - costage_st_urlaube.st_studium_nr/st_sem_nr </comment>
</column>
<column name="summe" type ="INTEGER" size ="2" default ="" notnull ="false" description="Summe" />
<comment>Lookup via: st_studium_nr/st_sem_nr - costage_st_personen_abmeldungen.st_studium_nr/st_sem_nr - costage_st_semester.semester_tid / costage_st_personen_abmeldungen.person_flag='J'</comment>
</column>-->
<column name="praxissemester" type ="INTEGER" size ="4" default ="" notnull ="false" description="Praxissemester" />
<column name="klinsem" type ="INTEGER" size ="4" default ="" notnull ="false" description="Klinische Semester" />
</columns>
<indexes>
@ -625,48 +611,34 @@ rightname="CS_BIA_STANDARDREPORTS_ADMIN[CO]" /> @@ -625,48 +611,34 @@ rightname="CS_BIA_STANDARDREPORTS_ADMIN[CO]" />
</table>
<!-- neue Views in 0.3 -->
<table name="costage_st_pruef_aggr" thema="Prüfungen und Leistungen" caption="Prüfungen (CO)" typ="Hilfstabelle" releaseUnload="empty">
<columns>
<!--Studierendendaten-->
<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" />
<!--Studiengang-->
<column name="studiengang_tid" type ="INTEGER" size ="8" default ="" notnull ="false" description="Studiengang (Join-ID)" />
<column name="st_studiengang_nr" type ="INTEGER" size ="8" default ="" notnull ="false" description="Studiengang (ID) ESG/MSG" />
<column name="st_studiengang_nr_tsg" type ="INTEGER" size ="8" default ="" notnull ="false" description="Studiengang (ID) des TSG" ><comment>nur bei TSG</comment></column>
<column name="semester" type ="INTEGER" size ="8" default ="" notnull ="false" description="Semester" ><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="po_stp_stp_version_kb" type ="CHAR" size ="10" default ="" notnull ="false" description="SPO-Version" >
<sourcefield table="costage_st_studien_spoversionen" name="po_stp_stp_version_kb" sourcesystem="co" />
<comment>Lookup via: st_studium_nr - costage_st_studien_spoversionen.st_studium_nr, hierbei die jeweils letzte (max(gueltig_ab) </comment>
</column>
<!--Studienverlauf-->
<column name="st_studium_nr" type ="INTEGER" size ="8" default ="" notnull ="true" description="Studium (ID)" />
<column name="semester" type ="INTEGER" size ="8" default ="" notnull ="false" description="Semester" ><comment>des Prüfungsdatums</comment></column>
<column name="semester_tsg" type ="INTEGER" size ="8" default ="" notnull ="false" description="Semester TSG" />
<column name="semester_veranst" type ="INTEGER" size ="8" default ="" notnull ="false" description="Semester der Veranstaltung" />
<column name="fachsemester" type ="INTEGER" size ="4" default ="" notnull ="false" description="Fachsemester" />
<column name="fachsemester_tsg" type ="INTEGER" size ="4" default ="" notnull ="false" description="Fachsemester (TSG)" />
<column name="abschnitt" type ="INTEGER" size ="4" default ="" notnull ="false" description="Studienabschnitt"><comment>Hauptprüfung/TSAB</comment></column>
<!--Leistungsdaten-->
<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="stp_sp_nr" type ="INTEGER" size ="4" default ="" notnull ="false" description="Prüfungsordnung Nr." currentlyUsed="false"><comment>Prüfungsordnung Nr.</comment></column>
<column name="note" type ="FLOAT" size ="4" default ="" notnull ="false" description="Note (ESG,MSG)"/>
<column name="note_tsg" type ="FLOAT" size ="4" default ="" notnull ="false" description="Note (TSG)"/>
<column name="abschnitt" type ="INTEGER" size ="4" default ="" notnull ="false" description="Studienabschnitt"><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="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="leistungsdatum_tsg" type ="DATE" size ="7" default ="" notnull ="false" description="Prüfungsdatum TSG"/>
<column name="anerkannt_flag" type ="CHAR" size ="1" default ="" notnull ="false" description="Anerkannt"><comment>J/N</comment></column>
<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 ESG/MSG"/>
<column name="leistungsstatus_map_kb_tsg" type ="CHAR" size ="10" default ="" notnull ="false" description="Prüfungsstatus TSG"/>
<column name="leistung_nr" type ="INTEGER" size ="4" default ="" notnull ="false" description="Eindeutige Leistungsnummer ESG/MSG" />
<column name="leistung_nr_tsg" type ="INTEGER" size ="4" default ="" notnull ="false" description="Eindeutige Leistungsnummer TSG" />
<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" />
<column name="leistungsdatum_msg" type ="DATE" size ="7" default ="" notnull ="false" description="Prüfungsdatum MSG"/>
<column name="semester_msg" type ="INTEGER" size ="8" default ="" notnull ="false" description="Semester MSG" />
<column name="summe" type ="INTEGER" size ="2" default ="" notnull ="false" description="Summe" />
</columns>
<indexes>
<index name="ix_costage_st_pruef_aggr1" unique="false">
@ -1134,7 +1106,7 @@ rightname="CS_BIA_STANDARDREPORTS_ADMIN[CO]" /> @@ -1134,7 +1106,7 @@ rightname="CS_BIA_STANDARDREPORTS_ADMIN[CO]" />
<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="leistungsdetailtyp_kb" type ="VARCHAR" size ="10" default ="" notnull ="false" />
<column name="matrikelnummer" type ="INTEGER" size ="12" default ="" notnull ="false" />
<column name="matrikelnummer" type ="VARCHAR" size ="12" default ="" notnull ="false" />
<column name="vorname" type ="VARCHAR" size ="255" default ="" notnull ="true" />
<column name="nachname" type ="VARCHAR" size ="255" default ="" notnull ="true" />
<column name="st_studium_nr" type ="INTEGER" size ="4" default ="" notnull ="true" />
@ -1704,7 +1676,7 @@ parent="CO Basisdaten">Abfragen zu Studienplänen und Ordnungen</thema> @@ -1704,7 +1676,7 @@ parent="CO Basisdaten">Abfragen zu Studienplänen und Ordnungen</thema>
</relation>
<relation from="costage_dim_studiengang" to="costage_st_studien_aggr" delete="FALSE"
displayType="select" visibleFields="studiengangs_bezeichnung" format="%s">
<relation-column from="tid" to="studiengang_tid" />
<relation-column from="st_studiengang_nr" to="st_studiengang_nr" />
</relation>
<relation from="costage_st_laender" to="costage_st_studien_aggr" delete="FALSE"
displayType="select" visibleFields="name" format="%s">
@ -1795,7 +1767,7 @@ parent="CO Basisdaten">Abfragen zu Studienplänen und Ordnungen</thema> @@ -1795,7 +1767,7 @@ parent="CO Basisdaten">Abfragen zu Studienplänen und Ordnungen</thema>
</relation>
<relation from="costage_dim_studiengang" to="costage_st_pruef_aggr" delete="FALSE"
displayType="select" visibleFields="studiengangs_bezeichnung" format="%s">
<relation-column from="tid" to="studiengang_tid" />
<relation-column from="st_studiengang_nr" to="st_studiengang_nr" />
</relation>
<relation from="costage_leistungen_typen" to="costage_st_pruef_aggr" delete="FALSE"
displayType="select" visibleFields="name_de" format="%s">
@ -1939,7 +1911,6 @@ parent="CO Basisdaten">Abfragen zu Studienplänen und Ordnungen</thema> @@ -1939,7 +1911,6 @@ parent="CO Basisdaten">Abfragen zu Studienplänen und Ordnungen</thema>
<loadtable refresh="true" delimiter="^" header="false" tabname="costage_st_ersthochschulen"><file path="$COSTAGE_LOAD_PFAD/unl/costage_st_ersthochschulen.unl"/></loadtable>
<loadtable refresh="true" delimiter="^" header="false" tabname="costage_st_hochschulsemester_neu"><file path="$COSTAGE_LOAD_PFAD/unl/costage_st_hochschulsemester.unl"/></loadtable>
<loadtable refresh="true" delimiter="^" header="false" tabname="costage_leistungen"><file path="$COSTAGE_LOAD_PFAD/unl/costage_leistungen.unl"/></loadtable>
<loadtable refresh="true" delimiter="^" header="false" tabname="costage_leistungen_status_typen"><file path="$COSTAGE_LOAD_PFAD/unl/costage_leistungen_status_typen.unl"/></loadtable>
<loadtable refresh="true" delimiter="^" header="false" tabname="costage_leistungen_detail_typen"><file path="$COSTAGE_LOAD_PFAD/unl/costage_leistungen_detail_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>

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

@ -148,18 +148,9 @@ and bw_typ_kb='TBW' @@ -148,18 +148,9 @@ and bw_typ_kb='TBW'
</#foreach>
</#foreach>
update tmp_bew set bew_kz='U';
--Ermittlung Antrags Status:
update tmp_bew set bew_kz='G' where
status_vss in ('J','V')
or status_dok in ('E','T','J')
or status_zul in ('J','V','N')
or status_stpl in ('J','N','R')
or status_qvss in ('J','V')
or status_evs is not null
;
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/einschreib_kz noch runterschreiben auf TSG

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

@ -14,7 +14,7 @@ select min(S.tid) from semester S where S.sem_beginn >= today()-(182*${anz_sem}) @@ -14,7 +14,7 @@ select min(S.tid) from semester S where S.sem_beginn >= today()-(182*${anz_sem})
SELECT
L.st_studium_nr,
S.st_studstamm_nr,
L.matrikelnummer::integer as matrikelnummer,
val(L.matrikelnummer) as matrikelnummer,
null::integer as st_studiengang_nr,
null::integer as studiengang_nr,
null::integer as fach_nr,
@ -65,7 +65,7 @@ into temp tmp_pruef @@ -65,7 +65,7 @@ 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=L.matrikelnummer
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
@ -83,7 +83,7 @@ insert into tmp_pruef @@ -83,7 +83,7 @@ insert into tmp_pruef
SELECT
L.st_studium_nr,
S.st_studstamm_nr,
L.matrikelnummer::integer as matrikelnummer,
val(L.matrikelnummer) as matrikelnummer,
null::integer as st_studiengang_nr,
null::integer as studiengang_nr,
null::integer as fach_nr,
@ -134,7 +134,7 @@ FROM costage_st_semester E, costage_leistungen_typen T, costage_leistungen L, co @@ -134,7 +134,7 @@ FROM costage_st_semester E, costage_leistungen_typen T, costage_leistungen L, co
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=L.matrikelnummer
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

214
src-modules/module/costage/hilfstabellen/costage_st_pruef_aggr_fuellen.sql

@ -12,22 +12,20 @@ where param_id='COSTAGE_start_leistungen_sem'; @@ -12,22 +12,20 @@ where param_id='COSTAGE_start_leistungen_sem';
SELECT
L.st_studium_nr,
S.st_studstamm_nr,
L.matrikelnummer::integer as matrikelnummer,
null::integer as studiengang_tid,
val(L.matrikelnummer) as matrikelnummer,
null::integer as st_studiengang_nr,
null::integer as st_studiengang_nr_tsg,
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,
null::integer as fachsemester,
null::integer as fachsemester_tsg,
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,
@ -54,24 +52,17 @@ L.anerkannt_flag, @@ -54,24 +52,17 @@ L.anerkannt_flag,
L.zusatzleistung_flag,
L.leistungsstatus_nr,
L.leistungsstatus_map_kb,
null::char(10) as leistungsstatus_map_kb_msg,
null::float as note_msg,
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,
L.spov_abschluss as po_stp_stp_version_kb ,
null::char(10) as studiengangs_typ_kb
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=L.matrikelnummer
and S.matrikelnummer in (select ST.matrikelnummer
from costage_st_studierendenstammdaten ST
where ${COSTAGE_STUDENT_FILTER})
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
@ -89,22 +80,20 @@ insert into tmp_pruef @@ -89,22 +80,20 @@ insert into tmp_pruef
SELECT
L.st_studium_nr,
S.st_studstamm_nr,
L.matrikelnummer::integer as matrikelnummer,
null::integer as studiengang_tid,
val(L.matrikelnummer) as matrikelnummer,
null::integer as st_studiengang_nr,
null::integer as st_studiengang_nr_tsg,
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 fachsemester,
null::integer AS fachsemester_tsg,
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,
@ -131,24 +120,17 @@ L.anerkannt_flag, @@ -131,24 +120,17 @@ L.anerkannt_flag,
L.zusatzleistung_flag,
L.leistungsstatus_nr,
L.leistungsstatus_map_kb,
null::char(10) as leistungsstatus_map_kb_msg,
null::float as note_msg,
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,
L.spov_abschluss,
null::char(10) as studiengangs_typ_kb
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=L.matrikelnummer
and S.matrikelnummer in (select ST.matrikelnummer
from costage_st_studierendenstammdaten ST
where ${COSTAGE_STUDENT_FILTER})
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
@ -166,42 +148,6 @@ update tmp_pruef set st_studiengang_nr=S.st_studiengang_nr @@ -166,42 +148,6 @@ 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
and tmp_pruef.leistungsdetailtyp_kb!='TSAB'
;
update tmp_pruef set st_studiengang_nr_tsg=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
and tmp_pruef.leistungsdetailtyp_kb='TSAB'
;
--Studiengangs-TID ermitteln:
update tmp_pruef set studiengang_tid=D.tid
from costage_dim_studiengang D
where D.st_studiengang_nr=tmp_pruef.st_studiengang_nr
and tmp_pruef.leistungsdetailtyp_kb!='TSAB';
update tmp_pruef set studiengang_tid=D.tid
from costage_dim_studiengang D
where D.st_studiengang_nr=tmp_pruef.st_studiengang_nr_tsg
and tmp_pruef.leistungsdetailtyp_kb='TSAB';
--Fachsemester aus Sem. des Prüfungsdatums holen:
update tmp_pruef set
fachsemester = S.fachsemester
from costage_st_studien_aggr S
where S.semester=tmp_pruef.semester
and S.st_studium_nr=tmp_pruef.st_studium_nr
and S.matrikelnummer=tmp_pruef.matrikelnummer
;
update tmp_pruef set
fachsemester_tsg = S.fachsemester
from costage_st_studien_aggr S
where S.semester=tmp_pruef.semester
and S.st_studium_nr_tsg=tmp_pruef.st_studium_nr
and S.matrikelnummer=tmp_pruef.matrikelnummer
and leistungsdetailtyp_kb ='TSAB'
;
--Prüfung kann nach letztem eingeschr. Semester sein, daher zuerst letztes Sem. ermitteln:
@ -220,37 +166,19 @@ and S.matrikelnummer=P.matrikelnummer @@ -220,37 +166,19 @@ and S.matrikelnummer=P.matrikelnummer
group by 1,2
;
--Dann Studium vom letzten Semester in den Prüfungs-Datensatz schreiben:
--TODO langsam:
update tmp_pruef set
st_studienstatus_nr=S.st_studienstatus_nr,
--fachsemester = S.fachsemester, --wird oben ermittelt, ab 0.6 nicht mehr aus letztem Studiums-Semester
fachsemester = S.fachsemester,
studiengang_nr=S.studiengang_nr,
st_studiengang_nr=S.st_studiengang_nr,
st_studiengang_nr_tsg=S.st_studiengang_nr_tsg,
fach_nr=S.fach_nr,
unikey=S.unikey
from tmp_max_sem M, costage_st_studien_aggr S
where S.matrikelnummer=M.matrikelnummer
and S.st_studium_nr=M.st_studium_nr
and S.semester=M.semester
and S.st_studium_nr_tsg=tmp_pruef.st_studium_nr
and S.matrikelnummer=tmp_pruef.matrikelnummer
and leistungsdetailtyp_kb ='TSAB'
;
update tmp_pruef set
st_studienstatus_nr=S.st_studienstatus_nr,
--fachsemester = S.fachsemester, --wird oben ermittelt, ab 0.6 nicht mehr aus letztem Studiums-Semester
studiengang_nr=S.studiengang_nr,
st_studiengang_nr=S.st_studiengang_nr,
fach_nr=S.fach_nr,
unikey=S.unikey
unikey=S.unikey,
st_studiengang_nr_msg=S.st_studiengang_nr_msg
from tmp_max_sem M, costage_st_studien_aggr S
where S.matrikelnummer=M.matrikelnummer
and S.st_studium_nr=M.st_studium_nr
and S.semester=M.semester
and S.st_studium_nr=tmp_pruef.st_studium_nr
and S.matrikelnummer=tmp_pruef.matrikelnummer
and leistungsdetailtyp_kb !='TSAB'
;
drop table tmp_max_sem;
@ -262,14 +190,12 @@ from tmp_pruef @@ -262,14 +190,12 @@ from tmp_pruef
where leistungsdetailtyp_kb !='TSAB'
;
--Dann Nr., Datum, Note und Semester des MSG nachladen (TODO: ggf. noch Fachsemester?)
--Dann Nr., Datum und Semster des MSG nachladen (TODO: ggf. noch Fachsemester?)
update tmp_pruef set leistung_nr_msg=T.leistung_nr,
leistungsdatum_msg=T.leistungsdatum,
semester_msg=T.semester,
leistungsstatus_map_kb_msg=T.leistungsstatus_map_kb,
note_msg=(case when T.pv_notenskala_typ_kb in ('DE1','DE2','DE3','DE4','DE5','DE6','DE7') or T.pv_notenskala_typ_kb is null then T.note_zahl else null::float end)
semester_msg=T.semester
from tmp_pruef2 T
where tmp_pruef.st_studiengang_nr=T.st_studiengang_nr
where tmp_pruef.st_studiengang_nr_msg=T.st_studiengang_nr
and tmp_pruef.leistungsdetailtyp_kb ='TSAB'
and T.matrikelnummer=tmp_pruef.matrikelnummer
@ -284,36 +210,9 @@ and T.matrikelnummer=tmp_pruef.matrikelnummer @@ -284,36 +210,9 @@ and T.matrikelnummer=tmp_pruef.matrikelnummer
update tmp_pruef set leistung_nr_msg=leistung_nr,
leistungsdatum_msg=leistungsdatum,
semester_msg=semester,
leistungsstatus_map_kb_msg=leistungsstatus_map_kb
semester_msg=semester
where tmp_pruef.leistungsdetailtyp_kb !='TSAB'
;
--Fachsemester bei MSG gibt es in CO nicht. Daher die Regel:
--die Fachsemesterzahl sollte die höchste FS-Zahl aus allen TSG enthalten:
select matrikelnummer,st_studiengang_nr,max(semester) as semester_max,max(fachsemester_tsg) as fachsem_max
into temp tmp_fachsem_msg
from tmp_pruef
where leistungsdetailtyp_kb='TSAB'
and st_studiengang_nr is not null
group by 1,2;
update tmp_pruef set fachsemester=T.fachsem_max
from tmp_fachsem_msg T
where T.matrikelnummer=tmp_pruef.matrikelnummer
and T.st_studiengang_nr=tmp_pruef.st_studiengang_nr
and T.semester_max <=tmp_pruef.semester
and tmp_pruef.leistungsdetailtyp_kb='BAKN'
;
update tmp_pruef set fachsemester=T.fachsem_max
from tmp_fachsem_msg T
where T.matrikelnummer=tmp_pruef.matrikelnummer
and T.st_studiengang_nr=tmp_pruef.st_studiengang_nr
and T.semester_max >=tmp_pruef.semester
and tmp_pruef.leistungsdetailtyp_kb='TSAB'
;
drop table tmp_fachsem_msg;
--unikey setzen, wenn noch nicht vorhanden (z.B. bei MSG):
update tmp_pruef set unikey=K.unikey
@ -323,116 +222,69 @@ and K.st_skz_nr=G.st_skz_nr @@ -323,116 +222,69 @@ and K.st_skz_nr=G.st_skz_nr
and tmp_pruef.unikey is null
;
delete from costage_st_pruef_aggr
where semester >= ${beginn_semester}
or semester_tsg >= ${beginn_semester};
where semester >= ${beginn_semester};
insert into costage_st_pruef_aggr(st_studium_nr,
st_studstamm_nr,
matrikelnummer,
semester,
semester_tsg,
semester_veranst,
studiengang_tid,
st_studiengang_nr,
st_studiengang_nr_tsg,
st_studiengang_nr_msg,
studiengang_nr,
fach_nr,
unikey,
studienidentifikator,
fachsemester,
fachsemester_tsg,
leistung_nr,
leistungstyp_nr,
leistungsdetailtyp_kb,
pnr,
abschnitt,
stp_sp_nr,
po_stp_stp_version_kb,
note,
note_tsg,
credits,
leistungsdatum,
anerkannt_flag,
leistungsstatus_nr,
leistungsstatus_map_kb,
leistungsstatus_map_kb_tsg,
leistung_nr,
leistung_nr_tsg,
leistungsdatum,
leistungsdatum_tsg,
leistung_nr_msg,
leistungsdatum_msg,
semester_msg,
summe)
select
st_studium_nr,
st_studstamm_nr,
matrikelnummer,
(case when leistungsdetailtyp_kb='TSAB' then semester_msg
else semester end) as semester ,
(case when leistungsdetailtyp_kb='TSAB' then semester
else null::integer end) as semester_tsg ,
semester,
semester_veranst,
studiengang_tid,
st_studiengang_nr,
st_studiengang_nr_tsg,
st_studiengang_nr_msg,
studiengang_nr,
fach_nr,
unikey,
substring(studienidentifikator from 1 for 255),
fachsemester,
fachsemester_tsg,
leistung_nr,
leistungstyp_nr,
leistungsdetailtyp_kb,
pnr,
abschnitt,
stp_sp_nr,
po_stp_stp_version_kb,
(case when leistungsdetailtyp_kb='TSAB' then note_msg
else (
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) end) as note,
(case when leistungsdetailtyp_kb='TSAB' and (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_tsg,
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,
leistungsstatus_nr,
(case when leistungsdetailtyp_kb='TSAB' then leistungsstatus_map_kb_msg
else leistungsstatus_map_kb end) as leistungsstatus_map_kb,
(case when leistungsdetailtyp_kb='TSAB' then leistungsstatus_map_kb
else null::char(10) end) as leistungsstatus_map_kb_tsg,
(case when leistungsdetailtyp_kb='TSAB' then leistung_nr_msg
else leistung_nr end) as leistung_nr,
(case when leistungsdetailtyp_kb='TSAB' then leistung_nr
else null::integer end) as leistung_nr_tsg,
(case when leistungsdetailtyp_kb='TSAB' then leistungsdatum_msg
else leistungsdatum end) as leistungsdatum ,
(case when leistungsdetailtyp_kb='TSAB' then leistungsdatum
else null::date end) as leistungsdatum_tsg ,
1 as summe
leistungsstatus_map_kb,
leistung_nr_msg,
leistungsdatum_msg,
semester_msg,
count(*)
from tmp_pruef
--group by leistungsdatum,studiengangs_typ_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
;
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;
--TSG Daten nachtragen:
update costage_st_pruef_aggr set
studiengang_nr=S.studiengang_nr,
st_studiengang_nr=S.st_studiengang_nr,
st_studiengang_nr_tsg=S.st_studiengang_nr_tsg,
fach_nr=S.fach_nr,
unikey=S.unikey,
fachsemester_tsg=S.fachsemester
from costage_st_studien_aggr S
where 1=1
and S.st_studium_nr_tsg=costage_st_pruef_aggr.st_studium_nr
and S.matrikelnummer=costage_st_pruef_aggr.matrikelnummer
and costage_st_pruef_aggr.leistungsdetailtyp_kb ='TSAB'
and costage_st_pruef_aggr.semester_tsg=S.semester
;
drop table tmp_pruef;
drop table tmp_pruef2;

160
src-modules/module/costage/hilfstabellen/costage_st_studien_aggr_fuellen.sql

@ -34,8 +34,11 @@ S.ca12_staat, @@ -34,8 +34,11 @@ S.ca12_staat,
S.second_nationality,
SG.fachkennzeichen,
ST.studienform_statistik_code,
--(case when SG.studiengangs_typ_kb in ('MSG') then SG.st_studiengang_nr else null::integer end) as st_studiengang_nr_msg,
null::varchar(255) as studiengangs_identifikator_msg,
null::integer as st_studiengang_nr_msg_primaerflag,
--(case when SG.studiengangs_typ_kb in ('TSG') then SG.st_studiengang_nr else null::integer end) as st_studiengang_nr_tsg,
--null::integer as studienfach_sortierung,
null::char(10) as hrst,
null::integer as fachsemester,
null::integer as praxissemester,
@ -85,11 +88,8 @@ and (SA.studienstatustyp not in ('Z','X') or ( @@ -85,11 +88,8 @@ and (SA.studienstatustyp not in ('Z','X') or (
and SA.gueltig_ab <= today()
and date(SA.gueltig_ab) < date(SM.semester_ende)
)) --Studis außer erst/neueinschr/rückmeld/beurlaubt werden in der Semestermitte exmatr. zum Endedatum Semesterende, wenn dieses Datum in der Zukunft liegt soll der Studi mit dem vorherigen Status erscheinen
<#if COSTAGE_STUDIENSTATUS_FILTER?exists>
and ${COSTAGE_STUDIENSTATUS_FILTER}
<#else>
and SA.studienstatustyp not in ('a','o','z')
</#if>
--group by 1,2,3,4,5,6,7,8,9,10,11,12,13
and ${COSTAGE_STUDENT_FILTER}
and SM.semester_tid >= ${beginn_semester}
;
@ -131,6 +131,16 @@ and T.status_historie=1 @@ -131,6 +131,16 @@ and T.status_historie=1
select 10,timestamp_str(now()) from xdummy;
--Abmeldungsart studienbezogen:
update tmp_studien_msg set abm_art_s=P.st_abm_art_kurzbezeichnung
from costage_st_personen_abmeldungen P, costage_st_semester S, costage_st_abmeldungsarten A
where S.st_sem_nr=P.st_sem_nr
and S.semester_tid=tmp_studien_msg.semester
and P.st_studium_nr=tmp_studien_msg.st_studium_nr
and A.st_abm_art_kurzbezeichnung=P.st_abm_art_kurzbezeichnung
and A.bezug='S'
;
--wir machen den MSG von einer Zeile zu einer Spalte
--1. Prio TSG hat Primärflag:
drop table if exists tmp_studien_esg_tsg;
@ -245,11 +255,12 @@ select 50,timestamp_str(now()) from xdummy; @@ -245,11 +255,12 @@ select 50,timestamp_str(now()) from xdummy;
--Abmeldungsart studienbezogen:
update tmp_studien_esg_tsg set abm_art_s=P.st_abm_art_kurzbezeichnung
from costage_st_personen_abmeldungen P, costage_st_semester S
from costage_st_personen_abmeldungen P, costage_st_semester S, costage_st_abmeldungsarten A
where S.st_sem_nr=P.st_sem_nr
and S.semester_tid=tmp_studien_esg_tsg.semester
and P.st_studium_nr=tmp_studien_esg_tsg.st_studium_nr
and P.person_flag='N'
and A.st_abm_art_kurzbezeichnung=P.st_abm_art_kurzbezeichnung
and A.bezug='S'
;
select 55,timestamp_str(now()) from xdummy;
@ -415,7 +426,6 @@ null::timestamp as beginn_datum, @@ -415,7 +426,6 @@ null::timestamp as beginn_datum,
null::timestamp AS gueltig_ab,
null::integer as st_studienstatus_nr,
null::integer as primaerflag_studien_msg,
null::integer as st_studium_nr_msg,
max(T.semester) as letztes_tsg_semester,
max(T.fachsemester) as fachsemester,
max(T.praxissemester) as praxissemester,
@ -425,7 +435,7 @@ from tmp_studien_msg_tsg_fehlend F, tmp_studien_tsg T @@ -425,7 +435,7 @@ from tmp_studien_msg_tsg_fehlend F, tmp_studien_tsg T
where F.st_studstamm_nr=T.st_studstamm_nr
and F.st_studiengang_nr_tsg=T.st_studiengang_nr
and T.semester=F.endsemester_tsg
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,23,24,25,26,27,28,29 ,30 ,31,32 ,33 ,34,35,36,37,38
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,23,24,25,26,27,28,29 ,30 ,31,32 ,33 ,34,35,36,37
;
update tmp_studien_msg_tsg_fehlend2 set
@ -435,8 +445,7 @@ abm_art_s=S.abm_art_s, @@ -435,8 +445,7 @@ abm_art_s=S.abm_art_s,
abm_art_s_msg=S.abm_art_s_msg,
beginn_datum =S.beginn_datum,
gueltig_ab=S.gueltig_ab,
st_studienstatus_nr=S.st_studienstatus_nr,
st_studium_nr_msg=S.st_studium_nr_msg
st_studienstatus_nr=S.st_studienstatus_nr
from tmp_studien_tsg S
where S.st_studiengang_nr=tmp_studien_msg_tsg_fehlend2.st_studiengang_nr_tsg
and S.st_studstamm_nr=tmp_studien_msg_tsg_fehlend2.st_studstamm_nr
@ -494,8 +503,7 @@ praxissemester, @@ -494,8 +503,7 @@ praxissemester,
klinsem,
studienfach_sortierung,
letztes_tsg_semester,
primaerflag_studien_msg,
st_studium_nr_msg
primaerflag_studien_msg
)
select distinct semester,
semester_anfang,
@ -538,8 +546,7 @@ praxissemester, @@ -538,8 +546,7 @@ praxissemester,
klinsem,
studienfach_sortierung,
letztes_tsg_semester,
primaerflag_studien_msg,
st_studium_nr_msg
primaerflag_studien_msg
from tmp_studien_msg_tsg_fehlend2 F, costage_st_studiengaenge G
where G.st_studiengang_nr=F.st_studiengang_nr_msg
;
@ -590,7 +597,6 @@ studiengangs_identifikator, @@ -590,7 +597,6 @@ studiengangs_identifikator,
studiengangs_bezeichnung,
st_sem_nr,
st_studium_nr,
st_studium_nr_msg,
st_studstamm_nr,
studienstatustyp,
st_studienstatus_nr,
@ -787,28 +793,6 @@ and T.st_studiengang_nr_msg=tmp_studien2.st_studiengang_nr_msg @@ -787,28 +793,6 @@ and T.st_studiengang_nr_msg=tmp_studien2.st_studiengang_nr_msg
;
select 150,timestamp_str(now()) from xdummy;
--zweite Prio: TSG Primärflag
drop table if exists tmp_primaer_msg;
select st_studstamm_nr,semester,st_studiengang_nr_msg
into temp tmp_primaer_msg
from tmp_studien2
where studiengangs_typ_kb ='TSG'
and st_studiengang_nr_msg is not null
and primaerflag=1
;
update tmp_studien2 set studiengang_nr=1 where studiengang_nr is null
and studiengangs_typ_kb ='TSG'
and exists (select st_studiengang_nr_msg
from tmp_primaer_msg T
where T.st_studstamm_nr=tmp_studien2.st_studstamm_nr
and T.semester=tmp_studien2.semester
and T.st_studiengang_nr_msg=tmp_studien2.st_studiengang_nr_msg
)
;
drop table if exists tmp_studien3;
--SPO-Version (letzte im jew. Semester) ermitteln:
@ -822,7 +806,6 @@ studiengangs_identifikator, @@ -822,7 +806,6 @@ studiengangs_identifikator,
studiengangs_bezeichnung,
st_sem_nr,
T.st_studium_nr,
T.st_studium_nr_msg,
st_studstamm_nr,
studienstatustyp,
st_studienstatus_nr,
@ -870,7 +853,7 @@ into temp tmp_studien3 @@ -870,7 +853,7 @@ into temp tmp_studien3
from tmp_studien2 T left outer join costage_st_studien_spoversionen SPO
on (SPO.st_studium_nr=T.st_studium_nr
and SPO.gueltig_ab < T.semester_ende)
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,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45 ,46, 47,48,49 --,50,51,52
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,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45 ,46, 47,48 --,49,50,51,52
;
select 160,timestamp_str(now()) from xdummy;
@ -901,16 +884,14 @@ create index ix_tmp_studien2 on tmp_studien3(kz_rueck_beur_ein) @@ -901,16 +884,14 @@ create index ix_tmp_studien2 on tmp_studien3(kz_rueck_beur_ein)
;
insert into costage_st_studien_aggr(
st_studium_nr,
st_studium_nr_tsg,
st_studstamm_nr,
matrikelnummer,
st_studiengang_nr,
st_studiengang_nr_tsg,
st_studiengang_nr_msg,
st_studienstatus_nr,
statustyp,
statustyp_tsg,
tsg_generated,
studiengangs_typ_kb,
hrst,
semester,
fachsemester,
@ -935,29 +916,22 @@ st_studium_nr_tsg, @@ -935,29 +916,22 @@ st_studium_nr_tsg,
hzb_datum,
hzb_note,
abm_art_s,
abm_art_s_tsg,
abm_art_s_msg,
po_stp_stp_version_kb,
po_regelstudienzeit,
studiengangs_identifikator,
studiengangs_identifikator_tsg,
studiengangs_identifikator_msg,
summe
)
select (case when studiengangs_typ_kb='TSG' then st_studium_nr_msg
else st_studium_nr end) as st_studium_nr,
(case when studiengangs_typ_kb='TSG' then st_studium_nr
else null::integer end) as st_studium_nr_tsg,
select st_studium_nr,
st_studstamm_nr,
matrikelnummer,
(case when studiengangs_typ_kb='TSG' then st_studiengang_nr_msg
else st_studiengang_nr end) as st_studiengang_nr,
(case when studiengangs_typ_kb='TSG' then st_studiengang_nr
else null::integer end) as st_studiengang_nr_tsg,
st_studiengang_nr,
st_studiengang_nr_msg,
st_studienstatus_nr,
studienstatustyp,
statustyp_tsg,
tsg_generated,
studiengangs_typ_kb,
hrst,
semester,
fachsemester,
@ -996,16 +970,11 @@ select (case when studiengangs_typ_kb='TSG' then st_studium_nr_msg @@ -996,16 +970,11 @@ select (case when studiengangs_typ_kb='TSG' then st_studium_nr_msg
hzb_jahr,
hzb_datum,
hzb_note,
(case when studiengangs_typ_kb='TSG' then abm_art_s_msg
else abm_art_s end) as abm_art_s ,
(case when studiengangs_typ_kb='TSG' then abm_art_s
else null::char(10) end) as abm_art_s_tsg ,
abm_art_s,
abm_art_s_msg,
po_stp_stp_version_kb,
po_regelstudienzeit,
(case when studiengangs_typ_kb='TSG' then studiengangs_identifikator_msg
else studiengangs_identifikator end) as studiengangs_identifikator,
(case when studiengangs_typ_kb='TSG' then studiengangs_identifikator
else null::varchar(255) end) as studiengangs_identifikator_tsg,
studiengangs_identifikator_msg,
1 as summe
from tmp_studien3
where kz_rueck_beur_ein is not null
@ -1015,16 +984,14 @@ select (case when studiengangs_typ_kb='TSG' then st_studium_nr_msg @@ -1015,16 +984,14 @@ select (case when studiengangs_typ_kb='TSG' then st_studium_nr_msg
-- from above to accomodate ranking in studiengangNummer field
insert into costage_st_studien_aggr(
st_studium_nr,
st_studium_nr_tsg,
st_studstamm_nr,
matrikelnummer,
st_studiengang_nr,
st_studiengang_nr_tsg,
st_studiengang_nr_msg,
st_studienstatus_nr,
statustyp,
statustyp_tsg,
tsg_generated,
studiengangs_typ_kb,
hrst,
semester,
fachsemester,
@ -1049,29 +1016,22 @@ st_studium_nr_tsg, @@ -1049,29 +1016,22 @@ st_studium_nr_tsg,
hzb_datum,
hzb_note,
abm_art_s,
abm_art_s_tsg,
abm_art_s_msg,
po_stp_stp_version_kb,
po_regelstudienzeit,
studiengangs_identifikator,
studiengangs_identifikator_tsg,
studiengangs_identifikator_msg,
summe
)
select (case when studiengangs_typ_kb='TSG' then st_studium_nr_msg
else st_studium_nr end) as st_studium_nr,
(case when studiengangs_typ_kb='TSG' then st_studium_nr
else null::integer end) as st_studium_nr_tsg,
select st_studium_nr,
st_studstamm_nr,
matrikelnummer,
(case when studiengangs_typ_kb='TSG' then null::integer
else st_studiengang_nr end) as st_studiengang_nr,
(case when studiengangs_typ_kb='TSG' then st_studiengang_nr
else null::integer end) as st_studiengang_nr_tsg,
st_studiengang_nr,
st_studiengang_nr_msg,
st_studienstatus_nr,
studienstatustyp,
statustyp_tsg,
tsg_generated,
studiengangs_typ_kb,
hrst,
semester,
fachsemester,
@ -1111,16 +1071,11 @@ cast (NULL as int) as studiengang_nr2, @@ -1111,16 +1071,11 @@ cast (NULL as int) as studiengang_nr2,
hzb_jahr,
hzb_datum,
hzb_note,
(case when studiengangs_typ_kb='TSG' then abm_art_s_msg
else abm_art_s end) as abm_art_s ,
(case when studiengangs_typ_kb='TSG' then abm_art_s
else null::char(10) end) as abm_art_s_tsg ,
abm_art_s,
abm_art_s_msg,
po_stp_stp_version_kb,
po_regelstudienzeit,
(case when studiengangs_typ_kb='TSG' then studiengangs_identifikator_msg
else studiengangs_identifikator end) as studiengangs_identifikator,
(case when studiengangs_typ_kb='TSG' then studiengangs_identifikator
else null::varchar(255) end) as studiengangs_identifikator_tsg,
studiengangs_identifikator_msg,
1 as summe
from tmp_studien3
where kz_rueck_beur_ein is null
@ -1149,6 +1104,7 @@ drop table tmp_studien_ohne_studiengangnr_1; @@ -1149,6 +1104,7 @@ drop table tmp_studien_ohne_studiengangnr_1;
select 190,timestamp_str(now()) from xdummy;
--HZB Data:
--Abmeldungsart:
@ -1162,17 +1118,6 @@ and P.person_flag='J' @@ -1162,17 +1118,6 @@ and P.person_flag='J'
and costage_st_studien_aggr.semester >= ${beginn_semester}
;
--Abmeldungsart studienbezogen bei TSG:
update costage_st_studien_aggr set abm_art_s=P.st_abm_art_kurzbezeichnung
from costage_st_personen_abmeldungen P, costage_st_semester S
where S.st_sem_nr=P.st_sem_nr
and S.semester_tid=costage_st_studien_aggr.semester
and P.st_studium_nr=costage_st_studien_aggr.st_studium_nr
and P.person_flag='N'
and costage_st_studien_aggr.studiengangs_typ_kb='TSG'
and costage_st_studien_aggr.semester >= ${beginn_semester}
;
select 200,timestamp_str(now()) from xdummy;
--Beurlaubungs-Art:
@ -1215,32 +1160,9 @@ and A.st_adresse_typ='H' @@ -1215,32 +1160,9 @@ and A.st_adresse_typ='H'
and costage_st_studien_aggr.semester >= ${beginn_semester}
;
--Studiengangs-TID ermitteln:
update costage_st_studien_aggr set studiengang_tid=D.tid
from costage_dim_studiengang D
where D.st_studiengang_nr=costage_st_studien_aggr.st_studiengang_nr
and costage_st_studien_aggr.studiengangs_typ_kb='ESG';
update costage_st_studien_aggr set studiengang_tid= D.tid
from costage_dim_studiengang D
where D.st_studiengang_nr=costage_st_studien_aggr.st_studiengang_nr_tsg
and costage_st_studien_aggr.studiengangs_typ_kb='TSG';
select 300,timestamp_str(now()) from xdummy;
--Abmeldungsart personbezogen bei TSG:
-- update costage_st_studien_aggr set abm_art_p=P.st_abm_art_kurzbezeichnung
-- from costage_st_personen_abmeldungen P, costage_st_semester S, costage_st_abmeldungsarten A
-- where S.st_sem_nr=P.st_sem_nr
-- and S.semester_tid=costage_st_studien_aggr.semester
-- and P.st_studium_nr=costage_st_studien_aggr.st_studium_nr
-- and A.st_abm_art_kurzbezeichnung=P.st_abm_art_kurzbezeichnung
-- and A.bezug='P'
-- and costage_st_studien_aggr.studiengangs_typ_kb='TSG'
-- ;
drop table tmp_studien3;
drop table tmp_primaer_msg;

6
src-modules/module/costage/masken/43040_maskeninfo.unl

@ -69,8 +69,8 @@ SELECT name,\ @@ -69,8 +69,8 @@ SELECT name,\
/* and semester <= <<Bis Semester>> */\
/* AND fachsemester <= <<bis Fachsemester>> */\
/* and statustyp in(<<Status>>) */\
/* and costage_st_studien_aggr.studiengang_tid in (select G.tid from costage_dim_studiengang G where G.abschluss_code in (<<Abschluss>>)) */\
/* and costage_st_studien_aggr.studiengang_tid in (select G.tid from costage_dim_studiengang G where G.skz_key in (<<Fach>>)) */\
/* and costage_st_studien_aggr.st_studiengang_nr in (select G.st_studiengang_nr from costage_st_studiengaenge G where G.abschluss in (<<Abschluss>>)) */\
/* and costage_st_studien_aggr.st_studiengang_nr in (select G.st_studiengang_nr from costage_st_studiengaenge G where G.skz_key in (<<Fach>>)) */\
/* and studiengang_nr =<<Studiengang-Nr.>> */\
/* and fach_nr =<<Fach-Nr.>> */\
/* and costage_st_studien_aggr.st_studstamm_nr in (select S.st_studstamm_nr from costage_st_studierendenstammdaten S where S.st_land1_nr in (<<Staatsangehörigkeit>>) ) */\
@ -84,7 +84,7 @@ SELECT name,\ @@ -84,7 +84,7 @@ SELECT name,\
</#if>\
\
\
/* <#assign filter = filter + " and costage_st_studien_aggr.studiengang_tid in (select D.tid from costage_dim_studiengang D where 's_' ||D.st_studiengang_nr in "+Studiengang.allNeededKeysList +")" /> --<<Studiengang>> */ \
/* <#assign filter = filter + " and 's_' || costage_st_studien_aggr.st_studiengang_nr in "+Studiengang.allNeededKeysList /> --<<Studiengang>> */ \
\
\
<@generate_resultset_multitable tabellen=table_list\

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

@ -67,7 +67,7 @@ SELECT name,\ @@ -67,7 +67,7 @@ SELECT name,\
/* and hrst in (<<Hörerstatus>>) */\
/* AND leistungsdetailtyp_kb in (<<Leistungsdetailtyp>>) */\
/* and leistungsstatus_map_kb in(<<Prüfungsstatus>>) */\
/* and costage_st_pruef_aggr.studiengang_tid in (select G.tid from costage_dim_studiengang G where G.abschluss_code in (<<Abschluss>>)) */\
/* and costage_st_pruef_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_pruef_aggr.st_studstamm_nr in (select S.st_studstamm_nr from costage_st_studierendenstammdaten S where S.st_land1_nr in (<<Staatsangehörigkeit>>) ) */\
@ -75,12 +75,11 @@ SELECT name,\ @@ -75,12 +75,11 @@ SELECT name,\
/* and costage_st_pruef_aggr.unikey=<<Hochschule>> */\
" />\
\
/* <#assign filter = filter + " and costage_st_pruef_aggr.studiengang_tid in (select D.tid from costage_dim_studiengang D where 's_' ||D.st_studiengang_nr in "+Studiengang.allNeededKeysList +")" /> --<<Studiengang>> */ \
\
\
<#if "<<Matrikel-Nr.>>"!="">\
<#assign filter=filter+" and costage_st_pruef_aggr.matrikelnummer in (<<Matrikel-Nr.>>)"?replace("'","")/>\
</#if>\
/* <#assign filter = filter + " and 's_' || costage_st_pruef_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?\
@ -93,7 +92,7 @@ SELECT name,\ @@ -93,7 +92,7 @@ SELECT name,\
\
<#assign fach_filter="1=1" />\
--Default: \
/* <#assign fach_filter="costage_st_pruef_aggr.studiengang_tid in (select G.tid from costage_dim_studiengang G where G.skz_key in (<<Fach>>)) "/> \
/* <#assign fach_filter="costage_st_pruef_aggr.st_studiengang_nr in (select G.st_studiengang_nr from costage_st_studiengaenge G where G.skz_key in (<<Fach>>)) "/> \
*/\
\
\
@ -101,17 +100,16 @@ SELECT name,\ @@ -101,17 +100,16 @@ SELECT name,\
<#assign ldt_filter="1=1" />\
<#if <<Auswertungsebene Prüfungen>>=="G">\
<#assign ldt_filter="leistungsdetailtyp_kb in ('BAKN', 'MAGN', 'STEX', 'ERGAB')" />\
<#assign semester_feld="semester" />\
<#assign semester_feld="semester_msg" />\
\
\
</#if> \
<#if <<Auswertungsebene Prüfungen>>=="F">\
<#assign ldt_filter="leistungsdetailtyp_kb in ('TSAB')" />\
<#assign semester_feld="semester" />\
<#assign semester_feld="semester_msg" />\
</#if> \
<#if <<Auswertungsebene Prüfungen>>=="T">\
<#assign ldt_filter="leistungsdetailtyp_kb in ('TSAB')" />\
<#assign semester_feld="semester_tsg" />\
</#if> \
\
\

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

@ -1,6 +1,6 @@ @@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<superx-unload version="4.0">
<module id="costage" version="0.7b" systeminfo_id="310">COSTAGE-Modul</module>
<module id="costage" version="0.6" systeminfo_id="310">COSTAGE-Modul</module>
<parameters>
<param name="VERSION" defaultValue="2" description="Datenbank-Version"><comment>CO-Version, wird derzeit ignoriert</comment></param>
@ -932,22 +932,6 @@ FROM px_studienplankontexte_v @@ -932,22 +932,6 @@ FROM px_studienplankontexte_v
where 1=0
;
]]>
</extraction-sql>
</unload-job>
<unload-job id="px_bewerb_mzb_v" target-table="costage_bewerb_mzb" extraction-script="" transfer-unload-file="unl/costage_bewerb_mzb.unl" >
<comment>Bewerbungen zugeordnete MZB</comment>
<extraction-sql sourcesystem="co" database="" version="">
<![CDATA[
SELECT
bw_bewerbng_nr,
mzb_typ_kb,
abschluss_status_flag,
abschluss_note
FROM
px_bewerb_mzb_v
;
]]>
</extraction-sql>
</unload-job>

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

@ -197,7 +197,7 @@ and S.st_studstamm_nr=H.st_person_nr @@ -197,7 +197,7 @@ and S.st_studstamm_nr=H.st_person_nr
<![CDATA[
SELECT
F.matrikelnummer,
G.abschluss_code as abschluss,
G.abschluss,
G.skz_key as stg,
'' ,--vert,
'' ,--schwp,
@ -234,19 +234,23 @@ null::char(1),-- -- country.astat nur h1 @@ -234,19 +234,23 @@ null::char(1),-- -- country.astat nur h1
null::char(1) , --Art der Promotion
null::char(1) as field_of_study,
primaerflag as primaerfach,
F.unikey ,
unikey ,
po_regelstudienzeit ,-- individual_number_of_semesters
F.st_studium_nr as degree_program_id ,
null::char(10) as hssem_valid,
null::Char(10) as k_field_of_study_subj_id,
F.kz_rueck_beur_ein_tsg,
endedat_tsg,
abm_art_s as abmeldegrund,
abm_art_s_tsg as abmeldegrund_tsg,
G.studiengangs_identifikator as degree_program_uniquename
FROM costage_dim_studiengang G, costage_st_studien_aggr F
WHERE G.tid=F.studiengang_tid
(case when G.studiengangs_typ_kb='TSG' then abm_art_s_msg
else abm_art_s end) as abmeldegrund,
(case when G.studiengangs_typ_kb='TSG' then abm_art_s
else null::char(10)
end) as abmeldegrund_tsg,
(case when G.studiengangs_typ_kb='TSG' then F.studiengangs_identifikator_msg
else G.studiengangs_identifikator end) as degree_program_uniquename
FROM costage_st_studiengaenge G, costage_st_studien_aggr F
WHERE G.st_studiengang_nr=F.st_studiengang_nr
and F.statustyp is not null
and F.fachsemester is not null
and F.kz_rueck_beur_ein is not null
@ -277,67 +281,69 @@ select * from k_stg where 1=0; @@ -277,67 +281,69 @@ select * from k_stg where 1=0;
]]>
</extraction-sql>
</unload-job>
<unload-job id="sos_pruefungen" extraction-table="" extraction-script="" transfer-unload-file="unl/sos_pruefungen.unl" >
<comment>Verzeichnis der Prüfungen (HIS)</comment>
<extraction-sql sourcesystem="co" database="" version="">
<![CDATA[
select * from k_stg where 1=0;
]]>
</extraction-sql>
</unload-job>
<unload-job id="sos_abp" extraction-table="" extraction-script="" transfer-unload-file="unl/sos_abp.unl" >
<comment>Verzeichnis der Abschlussprüfungen (CO).</comment>
<unload-job id="sos_pruefungen" extraction-table="" extraction-script="" transfer-unload-file="unl/sos_pruefungen.unl" >
<comment>Verzeichnis der Prüfungen.</comment>
<extraction-sql sourcesystem="co" database="" version="">
<![CDATA[
SELECT
P.matrikelnummer,
P.studiengang_nr,
P.fach_nr,
G.abschluss_code as abschluss,
--(case when leistungsdetailtyp_kb='TSAB' then P.semester_tsg
--else P.semester end) as semester,
G.abschluss,
P.semester,
P.leistungsdatum,
G.skz_key as stg,
null::integer as vert,
null::integer as schwp,
string_not_null(G.fachkennzeichen),
P.note,
round(P.note::decimal(15,4),2) as note,
null::integer as vken1,
null::char(7), --pruefungsamt_nr
P.abschnitt as pnr,
P.po_stp_stp_version_kb as pversion,
val(G.pversion),
P.leistungsstatus_map_kb as pstatus,
P.fachsemester,
P.fachsemester ,
P.leistungsdetailtyp_kb as part,
(case when leistungsdetailtyp_kb='TSAB' then P.leistung_nr_tsg
else P.leistung_nr end) as leistung_nr,
P.leistung_nr,
null::integer as pversuch,
null::char(7)as ppruef1,
null::char(7) as ppruef2,
null::char(7) as malus,
P.credits as bonus,
stp_sp_nr as pordnr,
null::integer as psws,
null::char(1), --relation_id nur bei HIS1
null::integer as pvermerk,
0::integer as prueck,
G.studiengangs_typ_kb as zeitabschnitt, --term_segment
null::integer as prueck,
null::integer as ptermin, --term_segment
null::integer as pform,
null::char(1), --anger. fs insg.
null::char(1), --berufspraktische taetigkeit
null::char(1), --aus auslandsstudium
null::char(1), --aus anderem stg an einer deutschen hs
null::char(1), -- amtl. Schl. Art der Promotion
P.anerkannt_flag as panerk,
null::integer as pstatkennz,
null::integer as ppunkte,
null::CHAR(1), --stuart
G.stufrm,
null::CHAR(1), --stutyp
P.st_studium_nr as degree_program_id,
semester_tsg,
leistungsdatum_tsg,
leistungsstatus_map_kb_tsg as pstatus_tsg,
note_tsg,
fachsemester_tsg as fach_sem_zahl_tsg
FROM costage_st_pruef_aggr P, costage_dim_studiengang G
where G.tid=P.studiengang_tid
and ($EXTERNAL_SUBJECTS ='true'
or P.unikey=(select H.hs_nr::char(10) from hochschulinfo H)
)
AND (P.semester >= $start_pruef_sem or P.semester_tsg >= $start_pruef_sem)
st_studium_nr as degree_program_id,
null::char(1) as k_elementtype_id,
null::char(1) as ut_top_unit_id,
null::char(1) as ut_top_k_elementtype_id,
null::char(1) as child_ut_top_unit_id,
null::char(1) as child_ut_top_unit_stat,
null::char(1) as k_unit_purpose_id,
null::char(1) as sem_der_pruefung_exa,
null::char(1) as d_abg_pruefung_exa,
null::char(1) as pstatus_tsg,
null::char(1) as note_tsg,
null::char(1) as fach_sem_zahl_tsg
FROM costage_st_pruef_aggr P, costage_st_studiengaenge G
where G.st_studiengang_nr=P.st_studiengang_nr
AND P.semester >= $start_pruef_sem
;
@ -578,30 +584,6 @@ null as sortorder @@ -578,30 +584,6 @@ null as sortorder
FROM costage_land_subregionen S, costage_st_land_regionen R
where R.st_land_reg_nr=S.st_land_reg_nr
and R.st_land_nr=56
union
SELECT
90,
0,
fakultaet_key,--apnr,
substring(fakultaet_bezeichnung from 1 for 10) as ktxt,
fakultaet_name as dtxt,
fakultaet_name as ltxt ,
null::char(10) as astat,
null::char(10) as parent,
fakultaet_key, --sortc1
' ',
' ', --sprache
null::date as gueltig_von,
null::date as gueltig_bis,
st_fakultaeten_nr::varchar(255), --sourcesystem_id
null::char(10) , --hiskey_id
fakultaet_key::char(10) , --struktur_c
null as lid,
null as parent_lid,
null as sortorder
FROM costage_st_fakultaeten
where unikey=(select H.hs_nr::char(10) from hochschulinfo H)
union
SELECT distinct
612,
@ -898,31 +880,7 @@ null as lid, @@ -898,31 +880,7 @@ null as lid,
null as parent_lid,
null as sortorder
FROM xdummy
union
SELECT
9002,
-1,
leistungsdetailtyp_kb as apnr,
substring(name_de from 1 for 10),--ktxt,
substring(name_de from 1 for 255) as dtxt,
substring(name_de from 1 for 255) as ltxt,
null::char(10) as astat,
null::char(10) as parent,
leistungsdetailtyp_kb,--sortc1 wird später uniquename
' ',
null as sprache,
null::date as gueltig_von,
null::date as gueltig_bis,
leistungsdetailtyp_kb::varchar(255), --sourcesystem_id
(case when leistungsdetailtyp_kb in ('BAKN','MAGN','STEX','ERGAB','RIGZP','TSAB') then '99'
when leistungsdetailtyp_kb in ('AP1','AP2','ZVP','ZW1','SCHW') then '98' else null::char(1) end) as hiskey_id,
'A', --struktur_c
null as lid,
null as parent_lid,
null as sortorder
FROM costage_leistungen_detail_typen
WHERE leistungsdetailtyp_kb is not null
;
]]>
</extraction-sql>
@ -1083,18 +1041,8 @@ select * from k_stg where 1=0; @@ -1083,18 +1041,8 @@ select * from k_stg where 1=0;
</unload-job>
<unload-job id="sos_labzuord" extraction-table="" extraction-script="" transfer-unload-file="unl/sos_labzuord.unl" >
<extraction-sql sourcesystem="co" database="" version="">
<![CDATA[ select
matrikelnummer as mtknr,
leistung_nr_tsg as labnr,
null::char(1) as artzuordnung,
null::char(1) as pordnrzu,
leistung_nr as labnrzu,
null::char(1) as bonus,
null::char(1) as malus
from costage_st_pruef_aggr
where leistung_nr_tsg != leistung_nr
--AND semester >= $start_pruef_sem
;
<![CDATA[
select * from k_stg where 1=0;
]]>
</extraction-sql>
</unload-job>

3
src-modules/module/costage/rohdaten_zul/zul_costage_unload.xml

@ -180,7 +180,6 @@ SELECT A.st_studstamm_nr as bewnr, @@ -180,7 +180,6 @@ SELECT A.st_studstamm_nr as bewnr,
G.fachkennzeichen as kzfa,
G.skz_key as stg,
G.abschluss,
null, --schwerpunkt
null,--antr_vert,
null,--antr_stuart,
null,--antr_stutyp,
@ -238,7 +237,7 @@ null::date as zuldat, @@ -238,7 +237,7 @@ null::date as zuldat,
null,-- quotenr,
null,--annfrist,
A.annahme_kz,
case when A.bew_kz='J' then 'G' else 'U' end, --antrags_status
null, --antrags_status
null,--antrf1,
null,--antrf2,
null,--antrf3,

122
src-modules/module/costage/schluesseltabellen/costage_dim_studiengang_fuellen.sql

@ -1,40 +1,7 @@ @@ -1,40 +1,7 @@
create temp table tmp_costage_dim_studiengang (tid serial,
tid_orig integer,
st_studiengang_nr integer,
studiengangs_identifikator character varying(255),
studiengangs_bezeichnung character varying(255),
st_absz_nr integer,
st_skz_nr integer,
fachkennzeichen character varying(255),
st_std_art_nr integer,
studiengangs_typ_name character varying(255),
studiengangs_typ_kb character varying(255),
studientyp_name character varying(255),
studientyp_kb character varying(10),
stp_stp_nr integer,
stuart character(10),
stufrm character(10),
pversion character varying(255),
rsz integer,
skz_key character(10),
skz_name character varying(255),
unikey character varying(255),
fakultaet_key character varying(255),
abschluss_code character varying(255),
abschluss_name character varying(255),
fakultaet_kurztext character varying(255),
fakultaet_drucktext character varying(255),
stort_nr character varying(4),
stort_name character varying(255),
ist_neu smallint
);
truncate table costage_dim_studiengang;
insert into tmp_costage_dim_studiengang(
st_studiengang_nr,
insert into costage_dim_studiengang(st_studiengang_nr,
studiengangs_identifikator,
studiengangs_bezeichnung,
st_absz_nr,
@ -59,8 +26,7 @@ st_studiengang_nr, @@ -59,8 +26,7 @@ st_studiengang_nr,
fakultaet_kurztext,
fakultaet_drucktext,
stort_nr,
stort_name,
ist_neu)
stort_name)
SELECT G.st_studiengang_nr,
substring(G.studiengangs_identifikator from 1 for 255) as studiengangs_identifikator,
@ -88,89 +54,11 @@ A.name as abschluss_name, @@ -88,89 +54,11 @@ A.name as abschluss_name,
null::varchar(255) as fakultaet_kurztext,
null::varchar(255) as fakultaet_drucktext,
G.stort_nr,
G.stort_name,
0
FROM costage_st_studiengaenge G left outer join costage_st_studienkennzahlen SKZ
G.stort_name
FROM costage_st_studiengaenge G left outer join costage_st_studienkennzahlen SKZ
on ( SKZ.st_skz_nr=G.st_skz_nr)
left outer join costage_st_abschlussziele_lokal A on (A.st_absz_nr=G.st_absz_nr);
update tmp_costage_dim_studiengang set tid_orig=D.tid
from costage_dim_studiengang D
where D.st_studiengang_nr=tmp_costage_dim_studiengang.st_studiengang_nr;
update tmp_costage_dim_studiengang set ist_neu=1
where tid_orig is null;
create temp table tmp_hilf(
maxtid integer);
insert into tmp_hilf select max(tid) from costage_dim_studiengang;
update tmp_hilf set maxtid=0 where maxtid is null;
update tmp_costage_dim_studiengang set tid_orig=tid+(select maxtid from tmp_hilf)
where ist_neu=1;
drop table tmp_hilf;
truncate table costage_dim_studiengang;
insert into costage_dim_studiengang(tid,
st_studiengang_nr,
studiengangs_identifikator,
studiengangs_bezeichnung,
st_absz_nr,
st_skz_nr,
fachkennzeichen,
st_std_art_nr,
studiengangs_typ_name,
studiengangs_typ_kb,
studientyp_name,
studientyp_kb,
stp_stp_nr,
stuart,
stufrm,
pversion,
rsz,
skz_key,
skz_name,
unikey,
fakultaet_key,
abschluss_code,
abschluss_name,
fakultaet_kurztext,
fakultaet_drucktext,
stort_nr,
stort_name)
select tid_orig,
st_studiengang_nr,
studiengangs_identifikator,
studiengangs_bezeichnung,
st_absz_nr,
st_skz_nr,
fachkennzeichen,
st_std_art_nr,
studiengangs_typ_name,
studiengangs_typ_kb,
studientyp_name,
studientyp_kb,
stp_stp_nr,
stuart,
stufrm,
pversion,
rsz,
skz_key,
skz_name,
unikey,
fakultaet_key,
abschluss_code,
abschluss_name,
fakultaet_kurztext,
fakultaet_drucktext,
stort_nr,
stort_name
from tmp_costage_dim_studiengang;
update costage_dim_studiengang set fakultaet_kurztext=F.fakultaet_bezeichnung,
fakultaet_drucktext=F.fakultaet_name
from costage_st_fakultaeten F

3
src-modules/module/costage/schluesseltabellen/sx_repository.unl

@ -1,6 +1,6 @@ @@ -1,6 +1,6 @@
1^COSTAGE_STUDENT_FILTER^1=1^Filter Studierende für CO^Hier werden Studierende für Auswertungen aus CO gefiltert^^COSTAGE_STUD_FILTER^^^310^1^0^0^^1^01.01.1900^31.12.3000^
2^COSTAGE_STORT^^Standorte^Hier werden Standorte konfiguriert^^COSTAGE_STORT^^^310^1^0^0^^0^01.01.1900^31.12.3000^
3^COSTAGE_LEISTUNGSSTATUS_MAP^case when leistungstyp_nr=1 --reale Prüfung\
2^COSTAGE_LEISTUNGSSTATUS_MAP^case when leistungstyp_nr=1 --reale Prüfung\
and leistungsstatus_nr=1 --in Bearbeitung\
then 'AN' --angemeldet\
when leistungstyp_nr=1 --reale Prüfung\
@ -18,4 +18,3 @@ when note='Q' --keine Beurteilung\ @@ -18,4 +18,3 @@ when note='Q' --keine Beurteilung\
then 'NE' --nicht erschienen\
else 'BE' --bestanden\
end^Leistungsstatus-Gruppen (CO)^Hier werden Leistungsstatus-Gruppen (CO) konfiguriert. Beispiel der UZK für sx_leistungen_v^^COSTAGE_LEISTUNGSSTATUS^^^310^1^0^0^^1^01.01.1900^31.12.3000^
4^COSTAGE_STUDIENSTATUS_FILTER^studienstatustyp not in ('a','o','z')^Filter Studienstatus für CO^Hier werden Studienstatus-Typen für Auswertungen aus CO gefiltert^^COSTAGE_STUD_STATUS_FILTER^^^310^1^0^0^^1^01.01.1900^31.12.3000^

8
src-modules/module/costage/upgrade/costage_pre_upgrade_pg.sql

@ -1,8 +0,0 @@ @@ -1,8 +0,0 @@
--freemarker template
<#if TableFieldExists?exists && TableFieldExists('costage_dim_studiengang','tid')>
--do nothing
<#else>
drop table if exists costage_dim_studiengang cascade;
</#if>

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

@ -11,7 +11,6 @@ alter table costage_bw_bewerb_hzb alter column hzb_punkte_max type float; @@ -11,7 +11,6 @@ alter table costage_bw_bewerb_hzb alter column hzb_punkte_max type float;
alter table costage_leistungen alter column note_zahl type float;
alter table costage_leistungen alter column credits type float;
alter table costage_leistungen alter column semesterstunden type float;
alter table costage_leistungen alter column matrikelnummer type integer using val(matrikelnummer)::integer;
ALTER TABLE costage_st_studierendenstammdaten
ALTER COLUMN matrikelnummer drop not null;

Loading…
Cancel
Save