Browse Source

Bugfix Studierende ohne Primärflag, HZB-Orte bei Bewerbungen #24

master
Daniel Quathamer 3 weeks ago
parent
commit
4d45b63f2c
  1. 38
      src-modules/module/costage/hilfstabellen/costage_st_studien_aggr_fuellen_mit_primerflag.sql
  2. 64
      src-modules/module/costage/hilfstabellen/costage_st_studien_aggr_fuellen_ohne_primerflag.sql
  3. 26
      src-modules/module/costage/rohdaten_zul/zul_costage_unload.xml

38
src-modules/module/costage/hilfstabellen/costage_st_studien_aggr_fuellen_mit_primerflag.sql

@ -135,8 +135,6 @@ from tmp_studien T where T.studiengangs_typ_kb in ('MSG') @@ -135,8 +135,6 @@ from tmp_studien T where T.studiengangs_typ_kb in ('MSG')
and T.status_historie=1
;
select 10,timestamp_str(now()) from xdummy;
--wir machen den MSG von einer Zeile zu einer Spalte
@ -146,7 +144,8 @@ select *, @@ -146,7 +144,8 @@ select *,
1::integer as primaerflag,
null::integer as letztes_tsg_semester,
null::integer as st_studium_nr_msg,
null::date as abm_dat_s_tsg
null::date as abm_dat_s_tsg,
null::integer as abm_st_studienstatus_nr
into temp tmp_studien_esg_tsg from tmp_studien T
where T.studiengangs_typ_kb in ('ESG','TSG')
and T.status_historie=1
@ -158,7 +157,9 @@ insert into tmp_studien_esg_tsg @@ -158,7 +157,9 @@ insert into tmp_studien_esg_tsg
select T.*,
(case when H.st_studstamm_nr > 0 then 1::integer else 0::integer end) as primaerflag,
null::integer as letztes_tsg_semester,
null::integer as st_studium_nr_msg
null::integer as st_studium_nr_msg,
null::date as abm_dat_s_tsg,
null::integer as abm_st_studienstatus_nr
from tmp_studien T left outer join costage_st_hauptstudien H
on ( H.st_studstamm_nr=T.st_studstamm_nr
and H.st_studium_nr=T.st_studium_nr
@ -251,12 +252,14 @@ where tmp_studien_esg_tsg.st_studstamm_nr = H.st_person_nr @@ -251,12 +252,14 @@ where tmp_studien_esg_tsg.st_studstamm_nr = H.st_person_nr
select 50,timestamp_str(now()) from xdummy;
--Abmeldungsart studienbezogen:
update tmp_studien_esg_tsg set abm_art_s=P.st_abm_art_kurzbezeichnung
update tmp_studien_esg_tsg set abm_art_s=P.st_abm_art_kurzbezeichnung,
abm_st_studienstatus_nr=P.st_studienstatus_nr
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 P.person_flag='N'
and tmp_studien_esg_tsg.studiengangs_typ_kb in ('ESG')
;
select 55,timestamp_str(now()) from xdummy;
@ -264,9 +267,7 @@ select 55,timestamp_str(now()) from xdummy; @@ -264,9 +267,7 @@ select 55,timestamp_str(now()) from xdummy;
--Endedatum bei TSG nachladen bei Abmeldungen:
update tmp_studien_esg_tsg set abm_dat_s_tsg=SA.gueltig_ab
from costage_st_studienstatus SA
where SA.st_studium_nr=tmp_studien_esg_tsg.st_studium_nr
and SA.st_sem_nr=tmp_studien_esg_tsg.st_sem_nr
and SA.studienstatustyp in ('Z','X')
where SA.st_studienstatus_nr=tmp_studien_esg_tsg.abm_st_studienstatus_nr
and tmp_studien_esg_tsg.abm_art_s is not null
;
@ -274,9 +275,10 @@ select 57,timestamp_str(now()) from xdummy; @@ -274,9 +275,10 @@ select 57,timestamp_str(now()) from xdummy;
update tmp_studien_esg_tsg set abm_dat_s=SA.gueltig_ab
from costage_st_studienstatus SA
where SA.st_studium_nr=tmp_studien_esg_tsg.st_studium_nr
and SA.st_sem_nr=tmp_studien_esg_tsg.st_sem_nr
and SA.studienstatustyp in ('Z','X')
where --SA.st_studium_nr=tmp_studien_esg_tsg.st_studium_nr
--and SA.st_sem_nr=tmp_studien_esg_tsg.st_sem_nr
--and
SA.st_studienstatus_nr=tmp_studien_esg_tsg.abm_st_studienstatus_nr
and tmp_studien_esg_tsg.studiengangs_typ_kb='ESG' --TODO: auskommentieren, damit auch MSG gesetzt werden
and tmp_studien_esg_tsg.abm_art_s is not null
;
@ -1317,6 +1319,20 @@ and P.person_flag='N' @@ -1317,6 +1319,20 @@ and P.person_flag='N'
and costage_st_studien_aggr.studiengangs_typ_kb='TSG'
and costage_st_studien_aggr.semester >= ${beginn_semester}
;
--MSG abm_dat_s nachladen
update costage_st_studien_aggr S set abm_dat_s=SA.gueltig_ab
from costage_st_studienstatus SA, costage_st_personen_abmeldungen P , costage_st_semester E
where SA.st_studienstatus_nr=P.st_studienstatus_nr
and S.st_studium_nr=P.st_studium_nr
and S.semester=E.semester_tid
and E.st_sem_nr=SA.st_sem_nr
and P.st_sem_nr=SA.st_sem_nr
and S.abm_art_s is not null
and S.studiengangs_typ_kb in ('TSG')
and P.person_flag='N'
and S.semester >= ${beginn_semester}
;
select 200,timestamp_str(now()) from xdummy;
--Beurlaubungs-Art:

64
src-modules/module/costage/hilfstabellen/costage_st_studien_aggr_fuellen_ohne_primerflag.sql

@ -111,40 +111,40 @@ where tmp_studien.st_studstamm_nr = H.st_studstamm_nr @@ -111,40 +111,40 @@ where tmp_studien.st_studstamm_nr = H.st_studstamm_nr
and tmp_studien.st_sem_nr = H.st_sem_nr
and hoererstatus_kb != 'E' --der Hörerstatus "E - Exmatrikuliert" gilt eigentlich erst zum Studienende, hat aber kein "gültig ab" Datum. Der Hörerstatus "E" kann ignoriert werden.
;
--fachsemester:
update tmp_studien T
set fachsemester=F.fachsemester
from costage_st_fachsemester F
where F.st_studium_nr=T.st_studium_nr
and F.st_sem_nr=T.st_sem_nr
and F.fachsemestertyp='FS'
;
select 35,timestamp_str(now()) from xdummy;
--praxissemester:
update tmp_studien T
set praxissemester=F.fachsemester
from costage_st_fachsemester F
where F.st_studium_nr=T.st_studium_nr
and F.st_sem_nr=T.st_sem_nr
and F.fachsemestertyp='PS'
;
select 36,timestamp_str(now()) from xdummy;
<#if K_CO_interpret_primaerflag==2>
select 5,'studiengang_nr aus astat',timestamp_str(now()) from xdummy;
update tmp_studien T set stg_astat=(select F.statistik_code
from costage_st_studiengaenge G, costage_st_studienfaecher F,costage_st_studienkennzahlen SK
where T.st_studiengang_nr=G.st_studiengang_nr
and F.st_stdfach_nr=SK.st_stdfach_nr
and G.skz_key=SK.skz_key);
update tmp_studien T set abschluss_astat=(select A.statistik_code
from costage_st_studiengaenge G, costage_st_abschlussziele_amtstat A,costage_st_abschlussziele_lokal AL
where T.st_studiengang_nr=G.st_studiengang_nr
and A.st_absz_amtstat_nr=AL.st_absz_amtstat_nr
and G.st_absz_nr=AL.st_absz_nr);
update tmp_studien T set (studiengang_nr,fach_nr,studiengang_nr_aus_astat)=
(select A.studiengang_nr,A.fach_nr,1
FROM qa_sos_stg_aggr_astat A
where A.matrikel_nr=T.matrikelnummer
and A.sem_rueck_beur_ein=T.semester
and A.stg=T.stg_astat
and A.abschluss=T.abschluss_astat
and A.kz_rueck_beur_ein!=5)
where 1=(select count(*)
FROM qa_sos_stg_aggr_astat A
where A.matrikel_nr=T.matrikelnummer
and A.sem_rueck_beur_ein=T.semester
and A.stg=T.stg_astat
and A.abschluss=T.abschluss_astat
and A.kz_rueck_beur_ein!=5);
<#elseif K_CO_interpret_primaerflag==0>
--klinsem
update tmp_studien T
set klinsem=F.fachsemester
from costage_st_fachsemester F
where F.st_studium_nr=T.st_studium_nr
and F.st_sem_nr=T.st_sem_nr
and F.fachsemestertyp='KS'
;
<#if K_CO_interpret_primaerflag==0>
select 7,'studiengang_nr aus beginn_datum_s',timestamp_str(now()) from xdummy;

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

@ -409,7 +409,31 @@ select * from costage_st_studiengaenge where 1=0; @@ -409,7 +409,31 @@ select * from costage_st_studiengaenge where 1=0;
<comment>Schluesseltabelle cifx</comment>
<extraction-sql sourcesystem="co" database="" version="">
<![CDATA[
SELECT
11,
0,
SR.land_sub_reg_nr::char(10),--apnr,
substring(SR.name from 1 for 10) as ktxt,
SR.name as dtxt,
SR.name as ltxt ,
SR.statistik_code as astat,
null::char(10) as parent,
SR.land_sub_reg_nr::varchar(255) as uniquename,
null::integer as sortorder,
R.statistik_code as bland,
' ', --sprache
null::date as gueltig_von,
null::date as gueltig_bis,
SR.land_sub_reg_nr::varchar(255), --sourcesystem_id
null::char(10) , --hiskey_id
'A'::char(10), --struktur_c
null as lid,
null as parent_lid
FROM costage_land_subregionen SR, costage_st_land_regionen R, costage_st_laender L
where L.st_land_nr=R.st_land_nr
and R.st_land_reg_nr=SR.st_land_reg_nr
and L.statistik_code='000'
union
SELECT
30,
0,

Loading…
Cancel
Save