diff --git a/src-modules/module/costage/hilfstabellen/costage_st_studien_aggr_fuellen.sql b/src-modules/module/costage/hilfstabellen/costage_st_studien_aggr_fuellen.sql index de9e830..217b4c8 100644 --- a/src-modules/module/costage/hilfstabellen/costage_st_studien_aggr_fuellen.sql +++ b/src-modules/module/costage/hilfstabellen/costage_st_studien_aggr_fuellen.sql @@ -131,16 +131,6 @@ 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; @@ -255,12 +245,11 @@ 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, costage_st_abmeldungsarten A +from costage_st_personen_abmeldungen P, costage_st_semester S 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 A.st_abm_art_kurzbezeichnung=P.st_abm_art_kurzbezeichnung -and A.bezug='S' +and P.person_flag='N' ; select 55,timestamp_str(now()) from xdummy; @@ -798,6 +787,28 @@ 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: @@ -1138,7 +1149,6 @@ drop table tmp_studien_ohne_studiengangnr_1; select 190,timestamp_str(now()) from xdummy; ---HZB Data: --Abmeldungsart: @@ -1152,6 +1162,17 @@ 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: @@ -1209,6 +1230,17 @@ 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;