diff --git a/src-modules/module/costage/conf/costage.xml b/src-modules/module/costage/conf/costage.xml
index e122b6e..5cf7cde 100644
--- a/src-modules/module/costage/conf/costage.xml
+++ b/src-modules/module/costage/conf/costage.xml
@@ -25,7 +25,8 @@ rightname="CS_BIA_STANDARDREPORTS_ADMIN[CO]" />
-->
-
+
+Abschlüsse zur amtl. Statistik (CO)
@@ -40,7 +41,8 @@ rightname="CS_BIA_STANDARDREPORTS_ADMIN[CO]" />
-
+
+Abschlüsse (CO)
@@ -54,7 +56,8 @@ rightname="CS_BIA_STANDARDREPORTS_ADMIN[CO]" />
-
+
+Studierenden-Fach- und Hochschulsemester (CO)
@@ -68,7 +71,8 @@ rightname="CS_BIA_STANDARDREPORTS_ADMIN[CO]" />
-
+
+Fakultäten (CO)
@@ -86,7 +90,8 @@ rightname="CS_BIA_STANDARDREPORTS_ADMIN[CO]" />
-
+
+Studierenden-Primärfächer (CO)
@@ -99,7 +104,8 @@ rightname="CS_BIA_STANDARDREPORTS_ADMIN[CO]" />
-
+
+Studierenden-Hörerstatus (CO)
@@ -113,7 +119,8 @@ rightname="CS_BIA_STANDARDREPORTS_ADMIN[CO]" />
-
+
+Staaten (CO)
@@ -132,7 +139,8 @@ rightname="CS_BIA_STANDARDREPORTS_ADMIN[CO]" />
-
+
+Länder und Regionen (CO)
@@ -146,7 +154,8 @@ rightname="CS_BIA_STANDARDREPORTS_ADMIN[CO]" />
-
+
+Personstammdaten (CO)
@@ -162,7 +171,8 @@ rightname="CS_BIA_STANDARDREPORTS_ADMIN[CO]" />
-
+
+Semester (CO)
@@ -178,7 +188,7 @@ rightname="CS_BIA_STANDARDREPORTS_ADMIN[CO]" />
-
+
@@ -192,7 +202,8 @@ rightname="CS_BIA_STANDARDREPORTS_ADMIN[CO]" />
-
+
+Studienarten (CO)
@@ -205,7 +216,8 @@ rightname="CS_BIA_STANDARDREPORTS_ADMIN[CO]" />
-
+
+Studienfächer (CO)
@@ -219,7 +231,8 @@ rightname="CS_BIA_STANDARDREPORTS_ADMIN[CO]" />
-
+
+Studierengänge (mehrfach) (CO)
@@ -232,7 +245,7 @@ rightname="CS_BIA_STANDARDREPORTS_ADMIN[CO]" />
-
+
@@ -253,23 +266,26 @@ rightname="CS_BIA_STANDARDREPORTS_ADMIN[CO]" />
-
+
+Studiengänge (CO)
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -278,7 +294,8 @@ rightname="CS_BIA_STANDARDREPORTS_ADMIN[CO]" />
-
+
+Studienfächer (CO)
@@ -295,7 +312,8 @@ rightname="CS_BIA_STANDARDREPORTS_ADMIN[CO]" />
-
+
+Studienstatus pro Semester (CO)
@@ -312,7 +330,7 @@ rightname="CS_BIA_STANDARDREPORTS_ADMIN[CO]" />
-
+
@@ -330,7 +348,8 @@ rightname="CS_BIA_STANDARDREPORTS_ADMIN[CO]" />
-
+
+Studienverläufe (CO)
@@ -345,7 +364,7 @@ rightname="CS_BIA_STANDARDREPORTS_ADMIN[CO]" />
-
+
@@ -367,7 +386,8 @@ rightname="CS_BIA_STANDARDREPORTS_ADMIN[CO]" />
-
+
+Studierendenstammdaten (CO)
@@ -395,7 +415,7 @@ rightname="CS_BIA_STANDARDREPORTS_ADMIN[CO]" />
-
+
@@ -409,6 +429,12 @@ rightname="CS_BIA_STANDARDREPORTS_ADMIN[CO]" />
+
+
+
+
+
+
@@ -495,20 +521,23 @@ parent="CO Basisdaten">Abfragen zur Administration CO Basisdaten
displayType="select" visibleFields="semester_bezeichnung" format="%s">
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
@@ -527,6 +556,10 @@ parent="CO Basisdaten">Abfragen zur Administration CO Basisdaten
+
+
+
@@ -571,7 +604,9 @@ parent="CO Basisdaten">Abfragen zur Administration CO Basisdaten
-
+
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 2b3eb35..211a249 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
@@ -1,10 +1,5 @@
-
---Abfrage Maske Studierende (Zeitreihe) CO Basisdaten (43000) durchführen 14:54:12
---Abfrage
-
-
-
+--freemarker template
SELECT
@@ -27,6 +22,7 @@ S.geschlecht,
S.ca12_staat,
S.second_nationality,
SG.fachkennzeichen,
+ST.studienform_statistik_code,
null::integer as st_studiengang_nr_msg,
null::integer as st_studiengang_nr_tsg,
null::integer as studienfach_sortierung,
@@ -37,7 +33,12 @@ null::char(10) as statustyp,
0::smallint as primaerflag,
null::integer as studiengang_nr,
null::integer as fach_nr,
-rank () over (partition by SM.st_sem_nr, S.st_studstamm_nr, SG.studiengangs_identifikator order by gueltig_ab desc) as status_historie
+null::char(10) as unikey,
+null::date as anfdat,
+null::date as ruebeudat,
+null::date as endedat,
+null::smallint as kz_rueck_beur_ein,
+rank () over (partition by SM.st_sem_nr, S.st_studstamm_nr, SG.studiengangs_identifikator order by SA.gueltig_ab desc) as status_historie
into temp tmp_studien
FROM costage_st_studierendenstammdaten S,
costage_st_studien ST,
@@ -57,7 +58,7 @@ and SA.st_studium_nr=ST.st_studium_nr
and SA.st_sem_nr=SM.st_sem_nr
and SA.studienstatustyp not in ('a','o')
and ${COSTAGE_STUDENT_FILTER}
---group by 1,2,3,4,5,6,7,8,9,10,11,12,13,14
+--group by 1,2,3,4,5,6,7,8,9,10,11,12,13
;
-- select * from tmp_studien
-- update tmp_studien
@@ -89,7 +90,7 @@ where F.st_studium_nr=tmp_studien.st_studium_nr
and F.st_sem_nr=tmp_studien.st_sem_nr
and F.fachsemestertyp='HS'
;
-
+--todo: langsam:
update tmp_studien
set primaerflag=1
where exists (select st_studstamm_nr
@@ -109,6 +110,16 @@ update tmp_studien set fach_nr=1
where fach_nr is null;
+update tmp_studien set unikey=val(K.unikey)
+from costage_st_studiengaenge G, costage_st_studienkennzahlen K
+where G.st_studiengang_nr=tmp_studien.st_studiengang_nr
+and K.st_skz_nr=G.st_skz_nr
+;
+
+update tmp_studien set kz_rueck_beur_ein=(select val(astat)
+from cifx where key=400
+and apnr=tmp_studien.studienstatustyp
+);
delete from costage_st_studien_aggr;
@@ -125,7 +136,13 @@ st_studium_nr,
hssem,
primaerflag,
studiengang_nr,
- fach_nr
+ fach_nr,
+ unikey,
+ anfdat,
+ ruebeudat,
+ endedat,
+ stufrm,
+ kz_rueck_beur_ein
)
select st_studium_nr,
@@ -141,7 +158,15 @@ select st_studium_nr,
primaerflag,
rank () over (partition by semester, st_studstamm_nr order by primaerflag desc,st_studium_nr asc)
as studiengang_nr,
- fach_nr
+ fach_nr,
+ unikey,
+ beginn_datum as anfdat,
+ (case when studienstatustyp not in ('Z','X') then null::date
+ else gueltig_ab end) as ruebeudat,
+ (case when studienstatustyp in ('Z','X') then gueltig_ab
+ else null::date end) as endedat,
+ studienform_statistik_code as stufrm,
+ kz_rueck_beur_ein
from tmp_studien
where status_historie=1;
diff --git a/src-modules/module/costage/masken/43040_felderinfo.unl b/src-modules/module/costage/masken/43040_felderinfo.unl
index 2b5f8f0..afc431c 100644
--- a/src-modules/module/costage/masken/43040_felderinfo.unl
+++ b/src-modules/module/costage/masken/43040_felderinfo.unl
@@ -1,18 +1,28 @@
-43040^Köpfe oder Fälle ?^0^0^0^140^150^1^sql^70^0^1^<> select apnr, eintrag from koepfe_oder_faelle order by 2^apnr, eintrag^^
-43041^Seit Semester^3^0^0^140^80^1^integer^30^0^1^<> select tid, eintrag from semester order by tid DESC;^Eintrag^<> select tid,eintrag from semester where today() between sem_beginn and sem_ende;^
+43040^Studiengang-Nr.^110^0^0^140^150^1^integer^70^0^1^<> --Freemarker template\
+<#list 1..6 as i>\
+ select ${i},'${i}. Studiengang' from xdummy\
+ <#if i_has_next> union #if>\
+#list>\
+order by 1^ ^^
+43041^Seit Semester^3^0^0^140^80^1^integer^30^0^1^<> select semester_tid, semester_bezeichnung from costage_st_semester order by 1 DESC;^ ^<> select semester_tid, semester_bezeichnung from costage_st_semester where today()-(4*365) between date(semester_anfang) and date(semester_ende);^
43043^Staatsangehörigkeit^36^0^0^130^150^10^char^30^0^12^<> select tid,name,sortnr from sichten where art='SOS-Staaten-Sicht' order by 3,2;^^^
43044^Status^14^350^-1^140^180^1^sql^30^0^1^<> select apnr,druck from cifx where key=400 order by 2^^<> select apnr,eintrag from sos_status where eintrag='Alle ohne Beurl.';^
43045^Hörerstatus^33^0^0^140^170^1^sql^30^0^1^<> select apnr, druck from cifx where key=401 order by 2^ ^ ^
43046^Weitere Tabellen^123^0^0^140^140^10^char^30^0^1^<> \
--freemarker template\
-select name,string_not_null(caption) || ' - ' || name from sx_tables where name in ('costage_st_studierendenstammdaten')\
+select name,string_not_null(caption) || ' - ' || name from sx_tables where name in ('costage_st_studierendenstammdaten','costage_st_studiengaenge')\
<#if <>!='tabelle_html_datenblatt.xsl'>\
and name in (select distinct tablename from stylesheet_field where stylesheet_id in (select tid from sx_stylesheets where filename=<>)) \
#if>\
order by 2^^^
43047^bis Fachsemester^35^350^-1^140^100^1^integer^30^0^0^^^^
-43049^Bis Semester^4^350^-1^140^80^1^integer^30^0^1^<> select tid, eintrag from semester order by tid DESC;^Eintrag^<> select tid,eintrag from semester where today() between sem_beginn and sem_ende;^
-43050^Filter Studierende^119^0^0^140^150^1^sql^20^0^1^<> SELECT id,caption from sx_repository where aktiv =1 and today() between gueltig_seit and gueltig_bis and art='SOS_STUD_FILTER' order by 2;^hidden^^
+43049^Bis Semester^4^350^-1^140^80^1^integer^30^0^1^<> select semester_tid, semester_bezeichnung from costage_st_semester order by 1 DESC;;^ ^<> select semester_tid, semester_bezeichnung from costage_st_semester where today() between date(semester_anfang) and date(semester_ende);^
+43050^Fach-Nr.^119^0^0^140^150^1^integer^20^0^1^<> --Freemarker template\
+<#list 1..10 as i>\
+ select ${i},'${i}. Fach' from xdummy\
+ <#if i_has_next> union #if>\
+#list>\
+order by 1^ ^^
43051^Geschlecht^37^0^0^140^80^1^integer^30^0^1^<> select apnr,beschreibung from konstanten where tid=1 or tid=2;^^^
43052^Felder^125^0^0^150^190^10^char^30^0^1^<>\
--freemarker template\
@@ -45,7 +55,7 @@ order by 2\
where hs_nr::char(10) in (select distinct unikey from costage_st_studienkennzahlen)\
order by 2;^ ^<> select K.hs_nr,K.name from kenn_hochschulen K, hochschulinfo H\
where K.hs_nr=H.hs_nr^
-43060^##line##^30^0^0^100^100^1^char^5000^0^8^^^1^
+43060^##line##^10^0^0^100^100^1^char^5000^0^8^^^1^
43061^Abschluss^7^0^0^140^170^5^char^30^0^1^<> SELECT \
code,\
name\
diff --git a/src-modules/module/costage/masken/43040_maske_system_bez.unl b/src-modules/module/costage/masken/43040_maske_system_bez.unl
index 7f7a415..3c5522e 100644
--- a/src-modules/module/costage/masken/43040_maske_system_bez.unl
+++ b/src-modules/module/costage/masken/43040_maske_system_bez.unl
@@ -1 +1 @@
-43040^7^
+43040^310^
diff --git a/src-modules/module/costage/masken/43040_maskeninfo.unl b/src-modules/module/costage/masken/43040_maskeninfo.unl
index 2b902dc..4cd75f5 100644
--- a/src-modules/module/costage/masken/43040_maskeninfo.unl
+++ b/src-modules/module/costage/masken/43040_maskeninfo.unl
@@ -72,19 +72,13 @@ SELECT name,\
/* and geschlecht=<> */\
/* and st_studiengang_nr in (select G.st_studiengang_nr from costage_st_studiengaenge G where G.abschluss in (<>)) */\
/* and st_studiengang_nr in (select G.st_studiengang_nr from costage_st_studiengaenge G where G.stg in (<>)) */\
+/* and studiengang_nr =<> */\
+/* and fach_nr =<> */\
" />\
\
\
<#if "<>"!="">\
-<#assign filter=filter+" and " + basetable + ".matrikel_nr in (<>)"?replace("'","")/>\
-#if>\
-<#if "<>"?index_of("S.gewichtung_id=")!=-1>\
- <#assign filter=filter+" and "+.vars["Köpfe oder Fälle ?"]?replace('S.','sos_stud_gewichtung.')/>\
- <#if "<>"?index_of("dim_studiengang_gew")>-1>\
- <#assign filter=filter+" and (dim_studiengang_gew.gewichtid is null or "+.vars["Köpfe oder Fälle ?"]?replace('S.','dim_studiengang_gew.')?replace("gewichtung_id","gewichtid")+")"/>\
- #if>\
-<#elseif "<>"!="">\
-<#assign filter=filter+" and "+.vars["Köpfe oder Fälle ?"]/>\
+<#assign filter=filter+" and costage_st_studien_aggr.matrikelnummer in (<>)"?replace("'","")/>\
#if>\
\
/* <#assign filter = filter + " and st_studstamm_nr in (select st_studstamm_nr from costage_st_studierendenstammdaten where '' || ca12_staat in "+Staatsangehörigkeit.allNeededKeysList /> ) --<> */\
diff --git a/src-modules/module/costage/masken/43040_sachgeb_maske_bez.unl b/src-modules/module/costage/masken/43040_sachgeb_maske_bez.unl
index 0ea71a7..f036bb6 100644
--- a/src-modules/module/costage/masken/43040_sachgeb_maske_bez.unl
+++ b/src-modules/module/costage/masken/43040_sachgeb_maske_bez.unl
@@ -1 +1 @@
-16^43040^
+310^43040^
diff --git a/src-modules/module/costage/schluesseltabellen/cifx_fuellen.sql b/src-modules/module/costage/schluesseltabellen/cifx_fuellen.sql
index bedc215..8d04d8b 100644
--- a/src-modules/module/costage/schluesseltabellen/cifx_fuellen.sql
+++ b/src-modules/module/costage/schluesseltabellen/cifx_fuellen.sql
@@ -3,7 +3,8 @@
<#assign dimensions = [
{"key":"400", "name":"Statustyp (CO)"},
- {"key":"401", "name":"Hörerstatus (CO)"}
+ {"key":"401", "name":"Hörerstatus (CO)"},
+ {"key":"30", "name":"Studienfächer"}
] />
<#assign dimension_levels_man = [
@@ -21,8 +22,17 @@
] />
<#assign dimension_levels_dynamic = [
- {"key":"401","apnr":"hoererstatus_kb", "druck":"hoererstatus_name", "astat":"", "srctable":"costage_st_hoererstatus"}
- ] />
+ {"key":"401","apnr":"hoererstatus_kb", "druck":"hoererstatus_name", "astat":"", "srctable":"costage_st_hoererstatus", "astat":"", "hs":"", "struktur_c":""},
+ {"key":"30","apnr":"skz_key", "druck":"skz_name", "srctable":"costage_st_studienkennzahlen",
+ "astat":"(select distinct F.statistik_code from costage_st_studienfaecher F where F.st_stdfach_nr=costage_st_studienkennzahlen.st_stdfach_nr)",
+ "struktur_c":"fakultaet_key",
+ "hs":"val(unikey)"},
+ {"key":"35","apnr":"code", "druck":"name", "srctable":"costage_st_abschlussziele_lokal",
+ "astat":"(select distinct F.statistik_code from costage_st_abschlussziele_amtstat F where F.st_absz_amtstat_nr=costage_st_abschlussziele_lokal.costage_st_abschlussziele_lokal)",
+ "struktur_c":"(select A.kurzbezeichnung from costage_st_studienarten A where A.st_std_art_nr=costage_st_abschlussziele_lokal.st_std_art_nr)",
+ "hs":""}
+
+] />
create temp table tmp_cifx
(tid serial,
@@ -125,7 +135,11 @@ lid ,
)
select distinct
${dimension_level.key} ,
- 0 as hs,
+ <#if dimension_level.hs=="">
+ 0
+ <#else>
+ ${dimension_level.hs}
+ #if> as hs,
${dimension_level.apnr} ,
substring(${dimension_level.druck} from 1 for 10) as kurz ,
substring(${dimension_level.druck} from 1 for 200) as druck,
@@ -143,7 +157,11 @@ lid ,
${dimension_level.apnr} as lid ,
--parent_lid,
NULL::char(10) as hiskey_id ,
-NULL::char(10) as struktur_c
+<#if dimension_level.struktur_c=="">
+ NULL::char(10)
+ <#else>
+ ${dimension_level.struktur_c}
+ #if> as struktur_c
from ${dimension_level.srctable}
;
#if>
diff --git a/src-modules/module/costage/schluesseltabellen/semester_bereinigen.sql b/src-modules/module/costage/schluesseltabellen/semester_bereinigen.sql
index 22c3962..4a7282f 100644
--- a/src-modules/module/costage/schluesseltabellen/semester_bereinigen.sql
+++ b/src-modules/module/costage/schluesseltabellen/semester_bereinigen.sql
@@ -1,4 +1,9 @@
--unnötige Zeilen in Semestertabelle entfernen:
delete from costage_st_semester where semester_tid not in (
-select distinct semester from costage_st_studien_aggr);
+select distinct semester from costage_st_studien_aggr)
+--aktuelles und Semester+1 ist immer drin:
+and not(today() between date(semester_anfang) and date(semester_ende))
+and not(today()+185 between date(semester_anfang) and date(semester_ende))
+
+;
diff --git a/src-modules/module/costage/schluesseltabellen/trans_costage_st_studiengaenge.sql b/src-modules/module/costage/schluesseltabellen/trans_costage_st_studiengaenge.sql
index ea9379d..4d3206a 100644
--- a/src-modules/module/costage/schluesseltabellen/trans_costage_st_studiengaenge.sql
+++ b/src-modules/module/costage/schluesseltabellen/trans_costage_st_studiengaenge.sql
@@ -40,4 +40,11 @@ update costage_st_studiengaenge set abschluss=A.code
from costage_st_abschlussziele_lokal A
where A.st_absz_nr=costage_st_studiengaenge.st_absz_nr;
---
+--pversion/rsz
+update costage_st_studiengaenge set pversion=P.po_stp_stp_version_kb,
+rsz=P.po_regelstudienzeit
+from costage_st_studien_spoversionen P
+where P.stp_stp_nr=costage_st_studiengaenge.stp_stp_nr;
+
+
+
diff --git a/src-modules/module/sos/rohdaten/sos_costage_unload.x b/src-modules/module/sos/rohdaten/sos_costage_unload.x
new file mode 100755
index 0000000..728cc87
--- /dev/null
+++ b/src-modules/module/sos/rohdaten/sos_costage_unload.x
@@ -0,0 +1,15199 @@
+#!/bin/bash
+#Extraction Script for SuperX.
+#Bitte nicht ändern, diese Datei ist automatisch generiert.
+
+SRC_PFAD=$SOS_LOAD_PFAD
+. $SUPERX_DIR/db/bin/SQL_ENV
+if [ "$SRC_PFAD" = "" ]
+then
+SRC_PFAD=.
+fi
+
+SX_CLIENT=jdbc
+export SX_CLIENT
+
+SOURCESYSTEM=co
+export SOURCESYSTEM
+
+if [ "$outFormat" = "" ]
+then
+outFormat=txt
+fi
+
+DATUM=`cat $SRC_PFAD/superx.datum`
+ERR=sos_unload.err
+cp $SRC_PFAD/superx.datum $SRC_PFAD/superx.datum.alt
+
+##Löschen der alten Dateien
+rm $SRC_PFAD/unl/*unl >/dev/null 2>&1
+
+date +'%d.%m.%Y' > $SRC_PFAD/superx.datum ##neues Entladedatum
+
+HEUTE=`date +'%d.%m.%Y'`
+
+echo "Letztes Update-Datum: " $DATUM >$ERR
+echo "DATABASE: $DATABASE" >>$ERR
+echo "VERSION: $VERSION" >>$ERR
+echo "SX_CLIENT: $SX_CLIENT" >>$ERR
+echo "1.2b^"$HEUTE"^" >$SRC_PFAD/unl/superx_unload_version.unl
+
+cd $SRC_PFAD >>$ERR 2>&1
+
+CP=".:$JDBC_CLASSPATH:$XML_CLASSPATH"
+
+case "`uname`" in
+CYGWIN*)
+CP=".;$JDBC_CLASSPATH;$XML_CLASSPATH"
+;;
+esac
+
+cat /dev/null >unload_params.txt
+
+
+if [ "$SOS_UNL_COMPLETE" = "" ]
+then
+SOS_UNL_COMPLETE="true"
+export SOS_UNL_COMPLETE
+fi
+echo "Parameter SOS_UNL_COMPLETE: $SOS_UNL_COMPLETE" >>$ERR
+echo "\$SOS_UNL_COMPLETE=$SOS_UNL_COMPLETE" >>unload_params.txt
+
+
+if [ "$VERSION" = "" ]
+then
+VERSION="13"
+export VERSION
+fi
+echo "Parameter VERSION: $VERSION" >>$ERR
+echo "\$VERSION=$VERSION" >>unload_params.txt
+
+
+if [ "$start_stud_sem" = "" ]
+then
+start_stud_sem="19911"
+export start_stud_sem
+fi
+echo "Parameter start_stud_sem: $start_stud_sem" >>$ERR
+echo "\$start_stud_sem=$start_stud_sem" >>unload_params.txt
+
+
+if [ "$start_pruef_sem" = "" ]
+then
+start_pruef_sem="19911"
+export start_pruef_sem
+fi
+echo "Parameter start_pruef_sem: $start_pruef_sem" >>$ERR
+echo "\$start_pruef_sem=$start_pruef_sem" >>unload_params.txt
+
+
+if [ "$SOS_UNL_ANON" = "" ]
+then
+SOS_UNL_ANON="false"
+export SOS_UNL_ANON
+fi
+echo "Parameter SOS_UNL_ANON: $SOS_UNL_ANON" >>$ERR
+echo "\$SOS_UNL_ANON=$SOS_UNL_ANON" >>unload_params.txt
+
+
+if [ "$POS_PNR" = "" ]
+then
+POS_PNR="0"
+export POS_PNR
+fi
+echo "Parameter POS_PNR: $POS_PNR" >>$ERR
+echo "\$POS_PNR=$POS_PNR" >>unload_params.txt
+
+
+if [ "$LAB_FILTER" = "" ]
+then
+LAB_FILTER=" AND (lab.panerk is null or lab.panerk != 'J') "
+export LAB_FILTER
+fi
+echo "Parameter LAB_FILTER: $LAB_FILTER" >>$ERR
+echo "\$LAB_FILTER=$LAB_FILTER" >>unload_params.txt
+
+
+if [ "$STUDENT_FILTER" = "" ]
+then
+STUDENT_FILTER=" AND 1=1 "
+export STUDENT_FILTER
+fi
+echo "Parameter STUDENT_FILTER: $STUDENT_FILTER" >>$ERR
+echo "\$STUDENT_FILTER=$STUDENT_FILTER" >>unload_params.txt
+
+
+if [ "$STUDENT_SOSPOS_FILTER" = "" ]
+then
+STUDENT_SOSPOS_FILTER=" AND 1=1 "
+export STUDENT_SOSPOS_FILTER
+fi
+echo "Parameter STUDENT_SOSPOS_FILTER: $STUDENT_SOSPOS_FILTER" >>$ERR
+echo "\$STUDENT_SOSPOS_FILTER=$STUDENT_SOSPOS_FILTER" >>unload_params.txt
+
+
+if [ "$DATUM" = "" ]
+then
+DATUM="01.01.1900"
+export DATUM
+fi
+echo "Parameter DATUM: $DATUM" >>$ERR
+echo "\$DATUM=$DATUM" >>unload_params.txt
+
+
+if [ "$STUD_IDENT" = "" ]
+then
+STUD_IDENT="false"
+export STUD_IDENT
+fi
+echo "Parameter STUD_IDENT: $STUD_IDENT" >>$ERR
+echo "\$STUD_IDENT=$STUD_IDENT" >>unload_params.txt
+
+
+if [ "$PRUEFER_NAME" = "" ]
+then
+PRUEFER_NAME="false"
+export PRUEFER_NAME
+fi
+echo "Parameter PRUEFER_NAME: $PRUEFER_NAME" >>$ERR
+echo "\$PRUEFER_NAME=$PRUEFER_NAME" >>unload_params.txt
+
+
+if [ "$DIPL_THEMA" = "" ]
+then
+DIPL_THEMA="false"
+export DIPL_THEMA
+fi
+echo "Parameter DIPL_THEMA: $DIPL_THEMA" >>$ERR
+echo "\$DIPL_THEMA=$DIPL_THEMA" >>unload_params.txt
+
+
+if [ "$PERSONATTRIBUTE_IDS" = "" ]
+then
+PERSONATTRIBUTE_IDS="0"
+export PERSONATTRIBUTE_IDS
+fi
+echo "Parameter PERSONATTRIBUTE_IDS: $PERSONATTRIBUTE_IDS" >>$ERR
+echo "\$PERSONATTRIBUTE_IDS=$PERSONATTRIBUTE_IDS" >>unload_params.txt
+
+
+if [ "$stu_prot_maxid" = "" ]
+then
+stu_prot_maxid="0"
+export stu_prot_maxid
+fi
+echo "Parameter stu_prot_maxid: $stu_prot_maxid" >>$ERR
+echo "\$stu_prot_maxid=$stu_prot_maxid" >>unload_params.txt
+
+
+if [ "$stu_updated_at" = "" ]
+then
+stu_updated_at="1900-01-01"
+export stu_updated_at
+fi
+echo "Parameter stu_updated_at: $stu_updated_at" >>$ERR
+echo "\$stu_updated_at=$stu_updated_at" >>unload_params.txt
+
+
+if [ "$exa_prot_maxid" = "" ]
+then
+exa_prot_maxid="0"
+export exa_prot_maxid
+fi
+echo "Parameter exa_prot_maxid: $exa_prot_maxid" >>$ERR
+echo "\$exa_prot_maxid=$exa_prot_maxid" >>unload_params.txt
+
+
+if [ "$exa_updated_at" = "" ]
+then
+exa_updated_at="1900-01-01"
+export exa_updated_at
+fi
+echo "Parameter exa_updated_at: $exa_updated_at" >>$ERR
+echo "\$exa_updated_at=$exa_updated_at" >>unload_params.txt
+
+
+if [ "$sos_pord_pltxt1" = "" ]
+then
+sos_pord_pltxt1="null::char(1)"
+export sos_pord_pltxt1
+fi
+echo "Parameter sos_pord_pltxt1: $sos_pord_pltxt1" >>$ERR
+echo "\$sos_pord_pltxt1=$sos_pord_pltxt1" >>unload_params.txt
+
+
+if [ "$sos_pord_pltxt2" = "" ]
+then
+sos_pord_pltxt2="null::char(1)"
+export sos_pord_pltxt2
+fi
+echo "Parameter sos_pord_pltxt2: $sos_pord_pltxt2" >>$ERR
+echo "\$sos_pord_pltxt2=$sos_pord_pltxt2" >>unload_params.txt
+
+
+if [ "$sos_pord_pltxt3" = "" ]
+then
+sos_pord_pltxt3="null::char(1)"
+export sos_pord_pltxt3
+fi
+echo "Parameter sos_pord_pltxt3: $sos_pord_pltxt3" >>$ERR
+echo "\$sos_pord_pltxt3=$sos_pord_pltxt3" >>unload_params.txt
+
+
+if [ "$sos_pord_pltxt4" = "" ]
+then
+sos_pord_pltxt4="null::char(1)"
+export sos_pord_pltxt4
+fi
+echo "Parameter sos_pord_pltxt4: $sos_pord_pltxt4" >>$ERR
+echo "\$sos_pord_pltxt4=$sos_pord_pltxt4" >>unload_params.txt
+
+
+if [ "$SOURCESYSTEM" = "" ]
+then
+SOURCESYSTEM="hisinone"
+export SOURCESYSTEM
+
+fi
+echo "Parameter SOURCESYSTEM: $SOURCESYSTEM" >>$ERR
+echo "\$SOURCESYSTEM=$SOURCESYSTEM" >>unload_params.txt
+
+#jdbc zum Entladen
+if [ "$SX_CLIENT" = "jdbc" ]
+then
+java $JAVA_OPTS -cp $CP de.superx.bin.SxExtractor -logger:$LOGGER_PROPERTIES -dbproperties:$DB_PROPERTIES -xml:sos_costage_unload.xml -outFormat:$outFormat -delim:$DBDELIMITER -header:$header -database:$DATABASE -version:$VERSION -unload_params:unload_params.txt >>$ERR 2>&1
+
+exit 0
+
+fi
+
+
+#
+#Unload-Job preparation1
+#
+echo "--------------------------------------------------------------" >>$ERR
+echo "Unload-Job: preparation1" >>$ERR
+
+
+if [ "$SX_CLIENT" = "psql" ]
+then
+echo "Unload with jdbc for Postgres" >>$ERR 2>&1
+
+
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+
+create temp table tmp_mtknr_ldsg(mtknr integer);
+-- alle mtknr aus der Tabelle sos in die Tabelle mtknr_ldsg einfügen
+--Welche Matrikelnummern sind neu?
+insert into tmp_mtknr_ldsg
+select S.mtknr from sos S left outer join mtknr_ldsg L
+on (L.mtknr=S.mtknr)
+where L.mtknr is null
+and S.mtknr is not null
+ ;
+
+--Nur die neuen Matrikelnummern hinzufügen
+ insert into mtknr_ldsg(mtknr)
+ select distinct mtknr from tmp_mtknr_ldsg
+ where '$SOS_UNL_ANON' = 'true';
+
+ insert into mtknr_ldsg(mtknr,mtknr_ldsg)
+ select distinct mtknr,mtknr from tmp_mtknr_ldsg
+ where '$SOS_UNL_ANON' != 'true';
+
+
+
+drop table tmp_mtknr_ldsg;
+
+
+" "txt" "$DBDELIMITER" "false" "" >>$ERR 2>&1
+
+fi
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+DROP TABLE IF EXISTS tmp_xdummy;
+create table tmp_xdummy
+(
+c char(10)
+);
+
+" "txt" "$DBDELIMITER" "false" "" >>$ERR 2>&1
+
+fi
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+create table tmp_xdummy
+(
+c char(10)
+);
+
+" "txt" "$DBDELIMITER" "false" "" >>$ERR 2>&1
+
+fi
+
+fi
+
+if [ "$SX_CLIENT" = "dbaccess" ]
+then
+echo "Unload with dbaccess" >>$ERR 2>&1
+
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+
+
+create temp table tmp_mtknr_ldsg(mtknr integer);
+-- alle mtknr aus der Tabelle sos in die Tabelle mtknr_ldsg einfügen
+--Welche Matrikelnummern sind neu?
+insert into tmp_mtknr_ldsg
+select S.mtknr from sos S left outer join mtknr_ldsg L
+on (L.mtknr=S.mtknr)
+where L.mtknr is null
+and S.mtknr is not null
+ ;
+
+--Nur die neuen Matrikelnummern hinzufügen
+ insert into mtknr_ldsg(mtknr)
+ select distinct mtknr from tmp_mtknr_ldsg
+ where '$SOS_UNL_ANON' = 'true';
+
+ insert into mtknr_ldsg(mtknr,mtknr_ldsg)
+ select distinct mtknr,mtknr from tmp_mtknr_ldsg
+ where '$SOS_UNL_ANON' != 'true';
+
+
+
+drop table tmp_mtknr_ldsg;
+
+
+--Ende
+END_preparation1
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+
+DROP TABLE IF EXISTS tmp_xdummy;
+create table tmp_xdummy
+(
+c char(10)
+);
+
+--Ende
+END_preparation1
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+
+create table tmp_xdummy
+(
+c char(10)
+);
+
+--Ende
+END_preparation1
+fi
+
+fi
+
+#
+#Unload-Job preparation2
+#
+echo "--------------------------------------------------------------" >>$ERR
+echo "Unload-Job: preparation2" >>$ERR
+
+
+if [ "$SX_CLIENT" = "psql" ]
+then
+echo "Unload with jdbc for Postgres" >>$ERR 2>&1
+
+
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+-- DROP TABLE IF EXISTS superx_sos;
+create table superx_sos (mtknr integer, mtknr_ldsg integer);
+
+
+" "txt" "$DBDELIMITER" "false" "" >>$ERR 2>&1
+
+fi
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+DROP TABLE IF EXISTS superx_sos;
+create table superx_sos (id integer,
+mtknr_ldsg integer,
+semester_astat varchar(20),
+semester_country_astat varchar(20),
+person_id integer,
+semester_postcode varchar(50),
+semester_country_lid integer ,
+erhssembrd integer,
+discontinuationsemester integer,
+study_before_university_lid integer,
+study_before_country_lid integer,
+study_before_place_of_study char(10),
+study_before_country_of_study char(10),
+k_study_interruption_type_id integer,
+k_study_interruption_type_astat char(10),
+personinfo_country_id integer,
+second_nationality_country_lid integer,
+second_nationality_astat char(10),
+orgrole_valid_from date,
+orgrole_valid_to date,
+person_k_gender_id integer,
+person_birthdate date,
+person_birthcity varchar(255)
+);
+
+insert into tmp_xdummy values('1');
+
+
+" "txt" "$DBDELIMITER" "false" "" >>$ERR 2>&1
+
+fi
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+
+create table superx_sos (mtknr integer, mtknr_ldsg integer);
+
+insert into tmp_xdummy values('1');
+
+
+" "txt" "$DBDELIMITER" "false" "" >>$ERR 2>&1
+
+fi
+
+fi
+
+if [ "$SX_CLIENT" = "dbaccess" ]
+then
+echo "Unload with dbaccess" >>$ERR 2>&1
+
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+
+create table superx_sos (mtknr integer, mtknr_ldsg integer);
+
+
+--Ende
+END_preparation2
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+
+DROP TABLE IF EXISTS superx_sos;
+create table superx_sos (id integer,
+mtknr_ldsg integer,
+semester_astat varchar(20),
+semester_country_astat varchar(20),
+person_id integer,
+semester_postcode varchar(50),
+semester_country_lid integer ,
+erhssembrd integer,
+discontinuationsemester integer,
+study_before_university_lid integer,
+study_before_country_lid integer,
+study_before_place_of_study char(10),
+study_before_country_of_study char(10),
+k_study_interruption_type_id integer,
+k_study_interruption_type_astat char(10),
+personinfo_country_id integer,
+second_nationality_country_lid integer,
+second_nationality_astat char(10),
+orgrole_valid_from date,
+orgrole_valid_to date,
+person_k_gender_id integer,
+person_birthdate date,
+person_birthcity varchar(255)
+);
+
+insert into tmp_xdummy values('1');
+
+
+--Ende
+END_preparation2
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+
+
+create table superx_sos (mtknr integer, mtknr_ldsg integer);
+
+insert into tmp_xdummy values('1');
+
+
+--Ende
+END_preparation2
+fi
+
+fi
+
+#
+#Unload-Job preparation3
+#
+echo "--------------------------------------------------------------" >>$ERR
+echo "Unload-Job: preparation3" >>$ERR
+
+
+if [ "$SX_CLIENT" = "psql" ]
+then
+echo "Unload with jdbc for Postgres" >>$ERR 2>&1
+
+
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+DROP TABLE IF EXISTS tmp_hskonst;
+create table tmp_hskonst (pnr integer);
+
+
+" "txt" "$DBDELIMITER" "false" "" >>$ERR 2>&1
+
+fi
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+
+DROP TABLE IF EXISTS tmp_course_of_study;
+CREATE TABLE tmp_course_of_study (
+ id integer NOT NULL,
+ lid integer NOT NULL,
+ degree_lid integer,
+ degree_id integer,
+ subject_lid integer,
+ subject_id integer,
+ major_field_of_study_lid integer,
+ major_field_of_study_id integer,
+ course_specialization_lid integer,
+ course_specialization_id integer,
+ k_subject_indicator_id integer,
+ k_examinationversion_id integer,
+ k_place_of_studies_id integer,
+ k_enrollment_id integer,
+ k_type_of_study_id integer,
+ k_form_of_studies_id integer,
+ part_of_studies integer NOT NULL,
+ valid_from date,
+ valid_to date,
+ k_language_id integer NOT NULL,
+ shorttext character varying,
+ defaulttext character varying NOT NULL,
+ longtext character varying,
+ orgunit_lid integer,
+ orgunit_id integer,
+ regular_number_of_semesters integer,
+ uniquename character varying,
+ from_term_year integer,
+ from_term_type_id integer,
+ to_term_year integer,
+ to_term_type_id integer,
+ admission_to_study_id integer,
+ is_admission_to_study integer,
+ is_course_of_study_start integer,
+ k_course_of_study_type_id integer NOT NULL,
+ termcategory integer NOT NULL,
+ teachingunit_orgunit_lid integer,
+ teachingunit_orgunit_id integer,
+ k_field_of_study_id integer,
+ examination_office_no character varying,
+ is_historized smallint
+);
+
+" "txt" "$DBDELIMITER" "false" "" >>$ERR 2>&1
+
+fi
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+create table tmp_hskonst (pnr integer);
+
+
+" "txt" "$DBDELIMITER" "false" "" >>$ERR 2>&1
+
+fi
+
+fi
+
+if [ "$SX_CLIENT" = "dbaccess" ]
+then
+echo "Unload with dbaccess" >>$ERR 2>&1
+
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+
+create table tmp_hskonst (pnr integer);
+
+
+--Ende
+END_preparation3
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+
+
+DROP TABLE IF EXISTS tmp_course_of_study;
+CREATE TABLE tmp_course_of_study (
+ id integer NOT NULL,
+ lid integer NOT NULL,
+ degree_lid integer,
+ degree_id integer,
+ subject_lid integer,
+ subject_id integer,
+ major_field_of_study_lid integer,
+ major_field_of_study_id integer,
+ course_specialization_lid integer,
+ course_specialization_id integer,
+ k_subject_indicator_id integer,
+ k_examinationversion_id integer,
+ k_place_of_studies_id integer,
+ k_enrollment_id integer,
+ k_type_of_study_id integer,
+ k_form_of_studies_id integer,
+ part_of_studies integer NOT NULL,
+ valid_from date,
+ valid_to date,
+ k_language_id integer NOT NULL,
+ shorttext character varying,
+ defaulttext character varying NOT NULL,
+ longtext character varying,
+ orgunit_lid integer,
+ orgunit_id integer,
+ regular_number_of_semesters integer,
+ uniquename character varying,
+ from_term_year integer,
+ from_term_type_id integer,
+ to_term_year integer,
+ to_term_type_id integer,
+ admission_to_study_id integer,
+ is_admission_to_study integer,
+ is_course_of_study_start integer,
+ k_course_of_study_type_id integer NOT NULL,
+ termcategory integer NOT NULL,
+ teachingunit_orgunit_lid integer,
+ teachingunit_orgunit_id integer,
+ k_field_of_study_id integer,
+ examination_office_no character varying,
+ is_historized smallint
+);
+
+--Ende
+END_preparation3
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+
+create table tmp_hskonst (pnr integer);
+
+
+--Ende
+END_preparation3
+fi
+
+fi
+
+#
+#Unload-Job preparation4
+#
+echo "--------------------------------------------------------------" >>$ERR
+echo "Unload-Job: preparation4" >>$ERR
+
+
+if [ "$SX_CLIENT" = "psql" ]
+then
+echo "Unload with jdbc for Postgres" >>$ERR 2>&1
+
+
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+insert into tmp_hskonst
+select vpnr from hskonst
+union
+select hpnr from hskonst
+union
+select sonstpnr1 from hskonst
+union
+select sonstpnr2 from hskonst
+union
+select sonstpnr3 from hskonst;
+
+
+" "txt" "$DBDELIMITER" "false" "" >>$ERR 2>&1
+
+fi
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+
+
+insert into tmp_course_of_study( id,
+ lid,
+ degree_lid,
+ subject_lid,
+ major_field_of_study_lid,
+ course_specialization_lid,
+ k_subject_indicator_id,
+ k_examinationversion_id,
+ k_place_of_studies_id,
+ k_enrollment_id,
+ k_type_of_study_id,
+ k_form_of_studies_id,
+ part_of_studies,
+ valid_from,
+ valid_to,
+ k_language_id,
+ shorttext,
+ defaulttext,
+ longtext,
+ orgunit_lid,
+ regular_number_of_semesters,
+ uniquename,
+ from_term_year,
+ from_term_type_id,
+ to_term_year,
+ to_term_type_id,
+ admission_to_study_id,
+ is_admission_to_study,
+ is_course_of_study_start,
+ k_course_of_study_type_id,
+ termcategory,
+ teachingunit_orgunit_lid,
+ k_field_of_study_id,
+ examination_office_no,
+ is_historized)
+SELECT id,
+ lid,
+ degree_lid,
+ subject_lid,
+ major_field_of_study_lid,
+ course_specialization_lid,
+ k_subject_indicator_id,
+ k_examinationversion_id,
+ k_place_of_studies_id,
+ k_enrollment_id,
+ k_type_of_study_id,
+ k_form_of_studies_id,
+ part_of_studies,
+ valid_from,
+ valid_to,
+ k_language_id,
+ shorttext,
+ defaulttext,
+ longtext,
+ orgunit_lid,
+ regular_number_of_semesters,
+ uniquename,
+ from_term_year,
+ from_term_type_id,
+ to_term_year,
+ to_term_type_id,
+ admission_to_study_id,
+ is_admission_to_study,
+ is_course_of_study_start,
+ k_course_of_study_type_id,
+ termcategory,
+ teachingunit_orgunit_lid,
+ k_field_of_study_id,
+ examination_office_no,
+ 0 --is_historized
+FROM course_of_study;
+--ermitteln der historisierten IDs
+--degree
+update tmp_course_of_study set degree_id=(select D.id from degree D
+where D.lid=tmp_course_of_study.degree_lid
+and (D.valid_from <= tmp_course_of_study.valid_from
+or D.valid_from is null
+or ( D.valid_from is null and tmp_course_of_study.valid_from is null)
+)
+and (D.valid_to >= tmp_course_of_study.valid_to
+or D.valid_to is null
+or ( D.valid_from is null and tmp_course_of_study.valid_from is null)
+)
+);
+--wenn degree nicht ermittelt werden kann, dann ohne Historisierung
+update tmp_course_of_study set degree_id=(select min(D.id) from degree D
+where D.lid=tmp_course_of_study.degree_lid
+)
+where degree_id is null
+;
+--subject
+update tmp_course_of_study set subject_id=(select D.id from subject D
+where D.lid=tmp_course_of_study.subject_lid
+and (D.valid_from <= tmp_course_of_study.valid_from
+or D.valid_from is null
+or ( D.valid_from is null and tmp_course_of_study.valid_from is null)
+)
+and (D.valid_to >= tmp_course_of_study.valid_to
+or D.valid_to is null
+or ( D.valid_from is null and tmp_course_of_study.valid_from is null)
+)
+);
+--wenn subject nicht ermittelt werden kann, dann ohne Historisierung
+update tmp_course_of_study set subject_id=(select min(D.id) from subject D
+where D.lid=tmp_course_of_study.subject_lid
+)
+where subject_id is null
+;
+--major_field_of_study
+update tmp_course_of_study set major_field_of_study_id=(select D.id from major_field_of_study D
+where D.lid=tmp_course_of_study.major_field_of_study_lid
+and (D.valid_from <= tmp_course_of_study.valid_from
+or D.valid_from is null
+or ( D.valid_from is null and tmp_course_of_study.valid_from is null)
+)
+and (D.valid_to >= tmp_course_of_study.valid_to
+or D.valid_to is null
+or ( D.valid_from is null and tmp_course_of_study.valid_from is null)
+)
+);
+--course_specialization_lid
+update tmp_course_of_study set course_specialization_id=(select D.id from course_specialization D
+where D.lid=tmp_course_of_study.course_specialization_lid
+and (D.valid_from <= tmp_course_of_study.valid_from
+or D.valid_from is null
+or ( D.valid_from is null and tmp_course_of_study.valid_from is null)
+)
+and (D.valid_to >= tmp_course_of_study.valid_to
+or D.valid_to is null
+or ( D.valid_from is null and tmp_course_of_study.valid_from is null)
+)
+);
+--orgunit
+update tmp_course_of_study set orgunit_id=(select D.id from orgunit D
+where D.lid=tmp_course_of_study.orgunit_lid
+and (D.valid_from <= tmp_course_of_study.valid_from
+or D.valid_from is null
+or ( D.valid_from is null and tmp_course_of_study.valid_from is null)
+)
+and (D.valid_to >= tmp_course_of_study.valid_to
+or D.valid_to is null
+or ( D.valid_from is null and tmp_course_of_study.valid_from is null)
+)
+);
+--wenn Studiengang heute gültig ist und orgunit historisiert, nimmt er den aktuellen FB
+update tmp_course_of_study set orgunit_id=(select D.id from orgunit D
+where D.lid=tmp_course_of_study.orgunit_lid
+and current_date between D.valid_from and D.valid_to)
+where current_date between valid_from and valid_to
+and orgunit_id is null;
+
+
+--teachingunit_orgunit_lid
+
+update tmp_course_of_study set teachingunit_orgunit_id=(select D.id from orgunit D
+where D.lid=tmp_course_of_study.teachingunit_orgunit_lid
+and (D.valid_from <= tmp_course_of_study.valid_from
+or D.valid_from is null
+or ( D.valid_from is null and tmp_course_of_study.valid_from is null)
+)
+and (D.valid_to >= tmp_course_of_study.valid_to
+or D.valid_to is null
+or ( D.valid_from is null and tmp_course_of_study.valid_from is null)
+)
+)
+where teachingunit_orgunit_lid is not null;
+
+--wenn Studiengang heute gültig ist und orgunit historisiert, nimmt er aktuelle LE
+update tmp_course_of_study set teachingunit_orgunit_id=(select D.id from orgunit D
+where D.lid=tmp_course_of_study.teachingunit_orgunit_lid
+and current_date between D.valid_from and D.valid_to)
+where current_date between valid_from and valid_to
+and teachingunit_orgunit_id is null;
+
+
+--k_field_of_study
+update tmp_course_of_study set k_field_of_study_id=(select S.k_field_of_study_id
+from subject S
+where S.id=tmp_course_of_study.subject_id)
+where k_field_of_study_id is null;
+--hochprojizieren auf Fächergruppe
+update tmp_course_of_study set k_field_of_study_id=(select K.parent_id
+from k_field_of_study K
+where K.id=tmp_course_of_study.k_field_of_study_id);
+
+--is_historized=1 wenn es mehrere Studiengänge pro LID gibt
+update tmp_course_of_study set is_historized=1
+where 1 < (select count(*) from course_of_study C
+where C.lid=tmp_course_of_study.lid);
+
+create index i_tc1 on tmp_course_of_study(lid);
+
+
+" "txt" "$DBDELIMITER" "false" "" >>$ERR 2>&1
+
+fi
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+insert into tmp_hskonst
+select 1 from k_stg where 1=0;
+
+
+" "txt" "$DBDELIMITER" "false" "" >>$ERR 2>&1
+
+fi
+
+fi
+
+if [ "$SX_CLIENT" = "dbaccess" ]
+then
+echo "Unload with dbaccess" >>$ERR 2>&1
+
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+
+insert into tmp_hskonst
+select vpnr from hskonst;
+insert into tmp_hskonst
+select hpnr from hskonst;
+insert into tmp_hskonst
+select sonstpnr1 from hskonst;
+insert into tmp_hskonst
+select sonstpnr2 from hskonst;
+insert into tmp_hskonst
+select sonstpnr3 from hskonst;
+
+
+--Ende
+END_preparation4
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+
+
+
+insert into tmp_course_of_study( id,
+ lid,
+ degree_lid,
+ subject_lid,
+ major_field_of_study_lid,
+ course_specialization_lid,
+ k_subject_indicator_id,
+ k_examinationversion_id,
+ k_place_of_studies_id,
+ k_enrollment_id,
+ k_type_of_study_id,
+ k_form_of_studies_id,
+ part_of_studies,
+ valid_from,
+ valid_to,
+ k_language_id,
+ shorttext,
+ defaulttext,
+ longtext,
+ orgunit_lid,
+ regular_number_of_semesters,
+ uniquename,
+ from_term_year,
+ from_term_type_id,
+ to_term_year,
+ to_term_type_id,
+ admission_to_study_id,
+ is_admission_to_study,
+ is_course_of_study_start,
+ k_course_of_study_type_id,
+ termcategory,
+ teachingunit_orgunit_lid,
+ k_field_of_study_id,
+ examination_office_no,
+ is_historized)
+SELECT id,
+ lid,
+ degree_lid,
+ subject_lid,
+ major_field_of_study_lid,
+ course_specialization_lid,
+ k_subject_indicator_id,
+ k_examinationversion_id,
+ k_place_of_studies_id,
+ k_enrollment_id,
+ k_type_of_study_id,
+ k_form_of_studies_id,
+ part_of_studies,
+ valid_from,
+ valid_to,
+ k_language_id,
+ shorttext,
+ defaulttext,
+ longtext,
+ orgunit_lid,
+ regular_number_of_semesters,
+ uniquename,
+ from_term_year,
+ from_term_type_id,
+ to_term_year,
+ to_term_type_id,
+ admission_to_study_id,
+ is_admission_to_study,
+ is_course_of_study_start,
+ k_course_of_study_type_id,
+ termcategory,
+ teachingunit_orgunit_lid,
+ k_field_of_study_id,
+ examination_office_no,
+ 0 --is_historized
+FROM course_of_study;
+--ermitteln der historisierten IDs
+--degree
+update tmp_course_of_study set degree_id=(select D.id from degree D
+where D.lid=tmp_course_of_study.degree_lid
+and (D.valid_from <= tmp_course_of_study.valid_from
+or D.valid_from is null
+or ( D.valid_from is null and tmp_course_of_study.valid_from is null)
+)
+and (D.valid_to >= tmp_course_of_study.valid_to
+or D.valid_to is null
+or ( D.valid_from is null and tmp_course_of_study.valid_from is null)
+)
+);
+--wenn degree nicht ermittelt werden kann, dann ohne Historisierung
+update tmp_course_of_study set degree_id=(select min(D.id) from degree D
+where D.lid=tmp_course_of_study.degree_lid
+)
+where degree_id is null
+;
+--subject
+update tmp_course_of_study set subject_id=(select D.id from subject D
+where D.lid=tmp_course_of_study.subject_lid
+and (D.valid_from <= tmp_course_of_study.valid_from
+or D.valid_from is null
+or ( D.valid_from is null and tmp_course_of_study.valid_from is null)
+)
+and (D.valid_to >= tmp_course_of_study.valid_to
+or D.valid_to is null
+or ( D.valid_from is null and tmp_course_of_study.valid_from is null)
+)
+);
+--wenn subject nicht ermittelt werden kann, dann ohne Historisierung
+update tmp_course_of_study set subject_id=(select min(D.id) from subject D
+where D.lid=tmp_course_of_study.subject_lid
+)
+where subject_id is null
+;
+--major_field_of_study
+update tmp_course_of_study set major_field_of_study_id=(select D.id from major_field_of_study D
+where D.lid=tmp_course_of_study.major_field_of_study_lid
+and (D.valid_from <= tmp_course_of_study.valid_from
+or D.valid_from is null
+or ( D.valid_from is null and tmp_course_of_study.valid_from is null)
+)
+and (D.valid_to >= tmp_course_of_study.valid_to
+or D.valid_to is null
+or ( D.valid_from is null and tmp_course_of_study.valid_from is null)
+)
+);
+--course_specialization_lid
+update tmp_course_of_study set course_specialization_id=(select D.id from course_specialization D
+where D.lid=tmp_course_of_study.course_specialization_lid
+and (D.valid_from <= tmp_course_of_study.valid_from
+or D.valid_from is null
+or ( D.valid_from is null and tmp_course_of_study.valid_from is null)
+)
+and (D.valid_to >= tmp_course_of_study.valid_to
+or D.valid_to is null
+or ( D.valid_from is null and tmp_course_of_study.valid_from is null)
+)
+);
+--orgunit
+update tmp_course_of_study set orgunit_id=(select D.id from orgunit D
+where D.lid=tmp_course_of_study.orgunit_lid
+and (D.valid_from <= tmp_course_of_study.valid_from
+or D.valid_from is null
+or ( D.valid_from is null and tmp_course_of_study.valid_from is null)
+)
+and (D.valid_to >= tmp_course_of_study.valid_to
+or D.valid_to is null
+or ( D.valid_from is null and tmp_course_of_study.valid_from is null)
+)
+);
+--wenn Studiengang heute gültig ist und orgunit historisiert, nimmt er den aktuellen FB
+update tmp_course_of_study set orgunit_id=(select D.id from orgunit D
+where D.lid=tmp_course_of_study.orgunit_lid
+and current_date between D.valid_from and D.valid_to)
+where current_date between valid_from and valid_to
+and orgunit_id is null;
+
+
+--teachingunit_orgunit_lid
+
+update tmp_course_of_study set teachingunit_orgunit_id=(select D.id from orgunit D
+where D.lid=tmp_course_of_study.teachingunit_orgunit_lid
+and (D.valid_from <= tmp_course_of_study.valid_from
+or D.valid_from is null
+or ( D.valid_from is null and tmp_course_of_study.valid_from is null)
+)
+and (D.valid_to >= tmp_course_of_study.valid_to
+or D.valid_to is null
+or ( D.valid_from is null and tmp_course_of_study.valid_from is null)
+)
+)
+where teachingunit_orgunit_lid is not null;
+
+--wenn Studiengang heute gültig ist und orgunit historisiert, nimmt er aktuelle LE
+update tmp_course_of_study set teachingunit_orgunit_id=(select D.id from orgunit D
+where D.lid=tmp_course_of_study.teachingunit_orgunit_lid
+and current_date between D.valid_from and D.valid_to)
+where current_date between valid_from and valid_to
+and teachingunit_orgunit_id is null;
+
+
+--k_field_of_study
+update tmp_course_of_study set k_field_of_study_id=(select S.k_field_of_study_id
+from subject S
+where S.id=tmp_course_of_study.subject_id)
+where k_field_of_study_id is null;
+--hochprojizieren auf Fächergruppe
+update tmp_course_of_study set k_field_of_study_id=(select K.parent_id
+from k_field_of_study K
+where K.id=tmp_course_of_study.k_field_of_study_id);
+
+--is_historized=1 wenn es mehrere Studiengänge pro LID gibt
+update tmp_course_of_study set is_historized=1
+where 1 < (select count(*) from course_of_study C
+where C.lid=tmp_course_of_study.lid);
+
+create index i_tc1 on tmp_course_of_study(lid);
+
+
+--Ende
+END_preparation4
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+
+insert into tmp_hskonst
+select 1 from k_stg where 1=0;
+
+
+--Ende
+END_preparation4
+fi
+
+fi
+
+#
+#Unload-Job preparation5
+#
+echo "--------------------------------------------------------------" >>$ERR
+echo "Unload-Job: preparation5" >>$ERR
+
+
+if [ "$SX_CLIENT" = "psql" ]
+then
+echo "Unload with jdbc for Postgres" >>$ERR 2>&1
+
+
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+insert into superx_sos(mtknr, mtknr_ldsg)
+SELECT DISTINCT S.mtknr,M.mtknr_ldsg
+from sos S,mtknr_ldsg M
+ where S.mtknr=M.mtknr
+ AND (fehlerkz not in ('F', 'V')
+ or fehlerkz is null)
+$STUDENT_SOSPOS_FILTER
+ and (
+ --Entweder
+ '"$SOS_UNL_COMPLETE"'='"true"'
+ --oder DATLAE
+ or ((datlae >= date('"$DATUM"')
+ OR ruebeudat >= date('"$DATUM"')
+ OR exmdat >= date('"$DATUM"'))
+ )
+ --oder pro
+or (S.mtknr in (select mtknr
+FROM pro
+WHERE datum >= date('"$DATUM"')
+-- keine Berücksichtigung von archivierten Daten
+and fktkz not in ('ARC', 'REA', 'NER', 'AAE'))
+)
+--oder pprot
+or (S.mtknr in (select
+ DISTINCT mtknr
+FROM pprot
+WHERE datlae >= date('"$DATUM"')) )
+
+)
+
+
+ ;
+
+
+" "txt" "$DBDELIMITER" "false" "" >>$ERR 2>&1
+
+fi
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+insert into superx_sos(id, mtknr_ldsg,person_id,person_birthdate,person_birthcity,person_k_gender_id)
+SELECT DISTINCT S.id,
+S.registrationnumber,
+S.person_id,
+P.birthdate ,
+substring(P.birthcity from 1 for 255),
+P.k_gender_id
+from student S, person P
+where P.id=S.person_id
+and S.registrationnumber is not null
+$STUDENT_FILTER
+and '$SOS_UNL_ANON' != 'true'
+and ((S.updated_at > '$stu_updated_at') OR (S.updated_at IS NULL AND '$stu_updated_at' = '1900-01-01'))
+--keine vorläufigen Studierenden #118453
+--nur Rolle "Student" (hiskey_id=5)
+and 0<(select count(*) from orgrole O, role R
+where R.id=O.role_id
+and S.person_id=O.person_id
+and R.hiskey_id in (5, 8));
+--Promovierende 81
+--Gasthörer 8
+
+-- Ermittlung semesterwohnsitz
+-- alle Studierenden id-s aus Tabelle student
+-- die Postleitzahl der Hinterlegten Adresse des Studierendens (-> welcher Adresstype(n) ist richtig? Ein Studierenden kann verschiedene Adressarten hinterlegen...)
+-- und die country_lid ueber die der Staat ermittelt werden kann (superx_sos.country_lid->country.country_lid)
+update superx_sos
+set semester_postcode = A.postcode,
+semester_country_lid = A.country_lid
+FROM
+address A left join address_k_notificationcategory N on (A.id = N.address_id )
+left join k_notificationcategory O on (N.k_notificationcategory_id = O.id and O.hiskey_id = 2) , -- hiskey_id=2 -> STU
+person P, k_addresstag T
+WHERE superx_sos.person_id=P.id and A.person_id=P.id
+AND A.eaddresstype_id IS NULL -- -> address.addresstype = 'Postaddress'
+and T.id=A.k_addresstag_id
+and T.hiskey_id=2 --semesterwohnsitz
+;
+
+
+-- Semesterwohnsitz = Heimatwohnsitz falls Semesterwohnsitz nicht gesetzt ist
+update superx_sos
+set semester_postcode = SUBSTRING(A.postcode FOR 50),
+semester_country_lid = A.country_lid
+FROM
+address A left join address_k_notificationcategory N on (A.id = N.address_id )
+left join k_notificationcategory O on (N.k_notificationcategory_id = O.id and O.hiskey_id = 2) , -- hiskey_id=2 -> STU
+person P, k_addresstag T
+WHERE superx_sos.person_id=P.id and A.person_id=P.id
+AND A.eaddresstype_id IS NULL -- -> address.addresstype = 'Postaddress'
+and T.id=A.k_addresstag_id
+ -- Ab hier Anpassungen
+and T.hiskey_id=1 --heimatwohnsitz
+and semester_postcode is NULL
+and semester_country_lid is NULL
+;
+
+-- für jeden Studierenden mit Postleitzahl den astat-Schlüssel des Landkreises aus k_postcode holen
+update superx_sos
+set semester_astat=(select k_postcode.astat from k_postcode where superx_sos.semester_postcode=k_postcode.postcode limit 1);
+
+-- Astat-Schlüssel aus Country
+update superx_sos
+set semester_country_astat=(select country.astat from country where superx_sos.semester_country_lid=country.lid and current_date between valid_from and valid_to limit 1);
+
+create index i_ts1 on superx_sos(mtknr_ldsg);
+create index i_ts2 on superx_sos(person_id);
+
+--Erstes Studium (erhssembrd etc.) ermitteln
+update superx_sos set erhssembrd=to_number(('' || STUBE.first_term_year || TT1.termnumber),'99999'),
+discontinuationsemester=STUBE.discontinuationsemester,
+study_before_university_lid =STUBE.university_lid,
+study_before_country_lid=STUBE.country_lid,
+k_study_interruption_type_id=STUBE.k_study_interruption_type_id
+from term_type TT1, study_before STUBE
+where STUBE.person_id=superx_sos.person_id
+and STUBE.first_term_type_id = TT1.id;
+
+update superx_sos set study_before_place_of_study= (select UN.astat
+from university UN where UN.lid = superx_sos.study_before_university_lid)
+where study_before_university_lid is not null
+;
+update superx_sos set study_before_country_of_study= (select CN.astat
+from country CN where CN.lid = superx_sos.study_before_country_lid)
+where study_before_country_lid is not null
+;
+update superx_sos set k_study_interruption_type_astat=(select STINTY.astat
+from k_study_interruption_type STINTY
+where STINTY.id = superx_sos.k_study_interruption_type_id)
+where k_study_interruption_type_id is not null;
+
+update superx_sos set second_nationality_country_lid=I.second_nationality_country_lid,
+personinfo_country_id=C.id
+from personinfo I left outer join country C
+on (C.lid=I.country_lid
+and current_date between C.valid_from and C.valid_to)
+where I.person_id=superx_sos.person_id
+;
+update superx_sos set second_nationality_astat=(select CN.astat
+from country CN where CN.lid = superx_sos.second_nationality_country_lid
+and current_date between CN.valid_from and CN.valid_to)
+where second_nationality_country_lid is not null;
+
+update superx_sos set orgrole_valid_from =OrgR.valid_from,
+orgrole_valid_to =OrgR.valid_to
+from orgrole OrgR
+where OrgR.person_id=superx_sos.person_id
+and OrgR.role_id=5;
+
+create index tmp_i_ts99 on superx_sos(id);
+
+
+" "txt" "$DBDELIMITER" "false" "" >>$ERR 2>&1
+
+fi
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+insert into superx_sos(mtknr, mtknr_ldsg)
+SELECT DISTINCT S.mtknr,S.mtknr
+from sos S
+where S.semester >= $start_stud_sem
+
+ ;
+
+
+" "txt" "$DBDELIMITER" "false" "" >>$ERR 2>&1
+
+fi
+
+fi
+
+if [ "$SX_CLIENT" = "dbaccess" ]
+then
+echo "Unload with dbaccess" >>$ERR 2>&1
+
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+
+insert into superx_sos(mtknr, mtknr_ldsg)
+SELECT DISTINCT S.mtknr,M.mtknr_ldsg
+from sos S,mtknr_ldsg M
+ where S.mtknr=M.mtknr
+ and (fehlerkz not in ("F", "V")
+ or fehlerkz is null)
+$STUDENT_SOSPOS_FILTER
+ and (
+ --Entweder
+ "$SOS_UNL_COMPLETE"='true'
+ --oder DATLAE
+ or ((datlae >= date("$DATUM")
+ OR ruebeudat >= date("$DATUM")
+ OR exmdat >= date("$DATUM"))
+ )
+ --oder pro
+or (S.mtknr in (select mtknr
+FROM pro
+WHERE datum >= date("$DATUM")
+-- keine Berücksichtigung von archivierten Daten
+and fktkz not in ("ARC", "REA", "NER", "AAE"))
+)
+--oder pprot
+or (S.mtknr in (select
+ DISTINCT mtknr
+FROM pprot
+WHERE datlae >= date("$DATUM")) )
+
+);
+
+--Ende
+END_preparation5
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+
+insert into superx_sos(id, mtknr_ldsg,person_id,person_birthdate,person_birthcity,person_k_gender_id)
+SELECT DISTINCT S.id,
+S.registrationnumber,
+S.person_id,
+P.birthdate ,
+substring(P.birthcity from 1 for 255),
+P.k_gender_id
+from student S, person P
+where P.id=S.person_id
+and S.registrationnumber is not null
+$STUDENT_FILTER
+and '$SOS_UNL_ANON' != 'true'
+and ((S.updated_at > '$stu_updated_at') OR (S.updated_at IS NULL AND '$stu_updated_at' = '1900-01-01'))
+--keine vorläufigen Studierenden #118453
+--nur Rolle "Student" (hiskey_id=5)
+and 0<(select count(*) from orgrole O, role R
+where R.id=O.role_id
+and S.person_id=O.person_id
+and R.hiskey_id in (5, 8));
+--Promovierende 81
+--Gasthörer 8
+
+-- Ermittlung semesterwohnsitz
+-- alle Studierenden id-s aus Tabelle student
+-- die Postleitzahl der Hinterlegten Adresse des Studierendens (-> welcher Adresstype(n) ist richtig? Ein Studierenden kann verschiedene Adressarten hinterlegen...)
+-- und die country_lid ueber die der Staat ermittelt werden kann (superx_sos.country_lid->country.country_lid)
+update superx_sos
+set semester_postcode = A.postcode,
+semester_country_lid = A.country_lid
+FROM
+address A left join address_k_notificationcategory N on (A.id = N.address_id )
+left join k_notificationcategory O on (N.k_notificationcategory_id = O.id and O.hiskey_id = 2) , -- hiskey_id=2 -> STU
+person P, k_addresstag T
+WHERE superx_sos.person_id=P.id and A.person_id=P.id
+AND A.eaddresstype_id IS NULL -- -> address.addresstype = 'Postaddress'
+and T.id=A.k_addresstag_id
+and T.hiskey_id=2 --semesterwohnsitz
+;
+
+
+-- Semesterwohnsitz = Heimatwohnsitz falls Semesterwohnsitz nicht gesetzt ist
+update superx_sos
+set semester_postcode = SUBSTRING(A.postcode FOR 50),
+semester_country_lid = A.country_lid
+FROM
+address A left join address_k_notificationcategory N on (A.id = N.address_id )
+left join k_notificationcategory O on (N.k_notificationcategory_id = O.id and O.hiskey_id = 2) , -- hiskey_id=2 -> STU
+person P, k_addresstag T
+WHERE superx_sos.person_id=P.id and A.person_id=P.id
+AND A.eaddresstype_id IS NULL -- -> address.addresstype = 'Postaddress'
+and T.id=A.k_addresstag_id
+ -- Ab hier Anpassungen
+and T.hiskey_id=1 --heimatwohnsitz
+and semester_postcode is NULL
+and semester_country_lid is NULL
+;
+
+-- für jeden Studierenden mit Postleitzahl den astat-Schlüssel des Landkreises aus k_postcode holen
+update superx_sos
+set semester_astat=(select k_postcode.astat from k_postcode where superx_sos.semester_postcode=k_postcode.postcode limit 1);
+
+-- Astat-Schlüssel aus Country
+update superx_sos
+set semester_country_astat=(select country.astat from country where superx_sos.semester_country_lid=country.lid and current_date between valid_from and valid_to limit 1);
+
+create index i_ts1 on superx_sos(mtknr_ldsg);
+create index i_ts2 on superx_sos(person_id);
+
+--Erstes Studium (erhssembrd etc.) ermitteln
+update superx_sos set erhssembrd=to_number(('' || STUBE.first_term_year || TT1.termnumber),'99999'),
+discontinuationsemester=STUBE.discontinuationsemester,
+study_before_university_lid =STUBE.university_lid,
+study_before_country_lid=STUBE.country_lid,
+k_study_interruption_type_id=STUBE.k_study_interruption_type_id
+from term_type TT1, study_before STUBE
+where STUBE.person_id=superx_sos.person_id
+and STUBE.first_term_type_id = TT1.id;
+
+update superx_sos set study_before_place_of_study= (select UN.astat
+from university UN where UN.lid = superx_sos.study_before_university_lid)
+where study_before_university_lid is not null
+;
+update superx_sos set study_before_country_of_study= (select CN.astat
+from country CN where CN.lid = superx_sos.study_before_country_lid)
+where study_before_country_lid is not null
+;
+update superx_sos set k_study_interruption_type_astat=(select STINTY.astat
+from k_study_interruption_type STINTY
+where STINTY.id = superx_sos.k_study_interruption_type_id)
+where k_study_interruption_type_id is not null;
+
+update superx_sos set second_nationality_country_lid=I.second_nationality_country_lid,
+personinfo_country_id=C.id
+from personinfo I left outer join country C
+on (C.lid=I.country_lid
+and current_date between C.valid_from and C.valid_to)
+where I.person_id=superx_sos.person_id
+;
+update superx_sos set second_nationality_astat=(select CN.astat
+from country CN where CN.lid = superx_sos.second_nationality_country_lid
+and current_date between CN.valid_from and CN.valid_to)
+where second_nationality_country_lid is not null;
+
+update superx_sos set orgrole_valid_from =OrgR.valid_from,
+orgrole_valid_to =OrgR.valid_to
+from orgrole OrgR
+where OrgR.person_id=superx_sos.person_id
+and OrgR.role_id=5;
+
+create index tmp_i_ts99 on superx_sos(id);
+
+
+--Ende
+END_preparation5
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+
+insert into superx_sos(mtknr, mtknr_ldsg)
+SELECT DISTINCT S.mtknr,S.mtknr
+from sos S
+where S.semester >= $start_stud_sem
+
+ ;
+
+
+--Ende
+END_preparation5
+fi
+
+fi
+
+#
+#Unload-Job konstanten
+#
+echo "--------------------------------------------------------------" >>$ERR
+echo "Unload-Job: konstanten" >>$ERR
+
+
+if [ "$SX_CLIENT" = "psql" ]
+then
+echo "Unload with jdbc for Postgres" >>$ERR 2>&1
+
+
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+
+select 21,'' || trunc(to_number(dbversnr,'99')),'SOS-Version' from hskonst
+ union
+ select 22,'' || $start_stud_sem,'Start_SOS_Semester' from hskonst
+union
+ select 23,'' || $start_pruef_sem,'Start_POS_Semester' from hskonst
+ union
+select 24,'' || vpnr,'sos_pruef_vdpnr' from hskonst
+ union
+select 25,'' || hpnr,'sos_pruef_hdpnr' from hskonst
+ union
+select 26,'' || sonstpnr1,'sos_einz_pruef_pnr^1' from hskonst
+ union
+select 27,'' || sonstpnr2,'sos_einz_pruef_pnr2' from hskonst
+ union
+select 28,'' || sonstpnr3,'sos_einz_pruef_pnr3' from hskonst
+ union
+select 30,'1',beschr from k_s_var where beschr='Semester 5-stellig' and wert1='J'
+union
+select 31,'0',beschr from k_s_var where beschr='Semester 5-stellig' and wert1 <>'J'
+union
+select 32,'1','sos_unload_complete' from hskonst
+where '$SOS_UNL_COMPLETE'='true'
+union
+select 32,'0','sos_unload_complete' from hskonst
+where '$SOS_UNL_COMPLETE'!='true'
+union
+select 33,'5','SOS_Quellsystem' from hskonst
+union
+select 34,'0','SOS_Trimester' from hskonst
+;
+
+" "txt" "$DBDELIMITER" "false" "unl/konstanten.unl" >>$ERR 2>&1
+
+fi
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+
+select 21,'' || 2,'SOS-Version' as version from tmp_xdummy
+ union
+ select 22,'' || $start_stud_sem,'Start_SOS_Semester' from tmp_xdummy
+union
+ select 23,'' || $start_pruef_sem,'Start_POS_Semester' from tmp_xdummy
+ union
+select 32,'1','sos_unload_complete' from tmp_xdummy
+where '$SOS_UNL_COMPLETE'='true'
+and $stu_prot_maxid=0
+union
+select 32,'0','sos_unload_complete' from tmp_xdummy
+where '$SOS_UNL_COMPLETE'!='true'
+or $stu_prot_maxid>0
+union
+select 33,'6','SOS_Quellsystem' from tmp_xdummy
+union
+select 34,'0','SOS_Trimester' from tmp_xdummy
+where 0=(SELECT count(*)
+FROM k_period_usage K,period_usage U,period P,term_type T
+where K.id=U.k_period_usage_id
+and K.hiskey_id=7 --Semesterzeitraum
+and U.period_id=P.id
+and T.id=P.term_type_id
+and T.termcategory=3 --Trimester
+)
+union
+select 34,'1','SOS_Trimester' from tmp_xdummy
+where 0< (SELECT count(*)
+FROM k_period_usage K,period_usage U,period P,term_type T
+where K.id=U.k_period_usage_id
+and K.hiskey_id=7 --Semesterzeitraum
+and U.period_id=P.id
+and T.id=P.term_type_id
+and T.termcategory=3 --Trimester
+)
+;
+
+" "txt" "$DBDELIMITER" "false" "unl/konstanten.unl" >>$ERR 2>&1
+
+fi
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+
+select 21,'' || 2,'SOS-Version' as version from tmp_xdummy
+ union
+ select 22,'' || $start_stud_sem,'Start_SOS_Semester' from tmp_xdummy
+union
+ select 23,'' || $start_pruef_sem,'Start_POS_Semester' from tmp_xdummy
+ union
+select 32,'1','sos_unload_complete' from tmp_xdummy
+where '$SOS_UNL_COMPLETE'='true'
+union
+select 32,'0','sos_unload_complete' from tmp_xdummy
+where '$SOS_UNL_COMPLETE'!='true'
+union
+select 33,'15','SOS_Quellsystem' from tmp_xdummy
+union
+select 34,'0','SOS_Trimester' from tmp_xdummy
+;
+
+" "txt" "$DBDELIMITER" "false" "unl/konstanten.unl" >>$ERR 2>&1
+
+fi
+
+fi
+
+if [ "$SX_CLIENT" = "dbaccess" ]
+then
+echo "Unload with dbaccess" >>$ERR 2>&1
+
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/konstanten.unl"
+
+
+
+select 21,"" || trunc(substring(dbversnr from 1 for 2)),"SOS-Version" from hskonst
+ union
+ select 22,"" || $start_stud_sem,"Start_SOS_Semester" from hskonst
+union
+ select 23,"" || $start_pruef_sem,"Start_POS_Semester" from hskonst
+ union
+select 24,"" || vpnr,"sos_pruef_vdpnr" from hskonst
+ union
+select 25,"" || hpnr,"sos_pruef_hdpnr" from hskonst
+ union
+select 26,"" || sonstpnr1,"sos_einz_pruef_pnr1" from hskonst
+ union
+select 27,"" || sonstpnr2,"sos_einz_pruef_pnr2" from hskonst
+ union
+select 28,"" || sonstpnr3,"sos_einz_pruef_pnr3" from hskonst
+ union
+select 30,"1",beschr from k_s_var where beschr="Semester 5-stellig" and wert1='J'
+union
+select 31,"0",beschr from k_s_var where beschr="Semester 5-stellig" and wert1 !='J'
+union
+select 32,"1","sos_unload_complete" from hskonst
+where "$SOS_UNL_COMPLETE"="true"
+union
+select 32,"0","sos_unload_complete" from hskonst
+where "$SOS_UNL_COMPLETE"!="true"
+union
+select 33,"5","SOS_Quellsystem" from hskonst
+union
+select 34,"0","SOS_Trimester" from hskonst
+;
+
+--Ende
+END_konstanten
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/konstanten.unl"
+
+
+
+select 21,'' || 2,'SOS-Version' as version from tmp_xdummy
+ union
+ select 22,'' || $start_stud_sem,'Start_SOS_Semester' from tmp_xdummy
+union
+ select 23,'' || $start_pruef_sem,'Start_POS_Semester' from tmp_xdummy
+ union
+select 32,'1','sos_unload_complete' from tmp_xdummy
+where '$SOS_UNL_COMPLETE'='true'
+and $stu_prot_maxid=0
+union
+select 32,'0','sos_unload_complete' from tmp_xdummy
+where '$SOS_UNL_COMPLETE'!='true'
+or $stu_prot_maxid>0
+union
+select 33,'6','SOS_Quellsystem' from tmp_xdummy
+union
+select 34,'0','SOS_Trimester' from tmp_xdummy
+where 0=(SELECT count(*)
+FROM k_period_usage K,period_usage U,period P,term_type T
+where K.id=U.k_period_usage_id
+and K.hiskey_id=7 --Semesterzeitraum
+and U.period_id=P.id
+and T.id=P.term_type_id
+and T.termcategory=3 --Trimester
+)
+union
+select 34,'1','SOS_Trimester' from tmp_xdummy
+where 0< (SELECT count(*)
+FROM k_period_usage K,period_usage U,period P,term_type T
+where K.id=U.k_period_usage_id
+and K.hiskey_id=7 --Semesterzeitraum
+and U.period_id=P.id
+and T.id=P.term_type_id
+and T.termcategory=3 --Trimester
+)
+;
+
+--Ende
+END_konstanten
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/konstanten.unl"
+
+
+
+select 21,'' || 2,'SOS-Version' as version from tmp_xdummy
+ union
+ select 22,'' || $start_stud_sem,'Start_SOS_Semester' from tmp_xdummy
+union
+ select 23,'' || $start_pruef_sem,'Start_POS_Semester' from tmp_xdummy
+ union
+select 32,'1','sos_unload_complete' from tmp_xdummy
+where '$SOS_UNL_COMPLETE'='true'
+union
+select 32,'0','sos_unload_complete' from tmp_xdummy
+where '$SOS_UNL_COMPLETE'!='true'
+union
+select 33,'15','SOS_Quellsystem' from tmp_xdummy
+union
+select 34,'0','SOS_Trimester' from tmp_xdummy
+;
+
+--Ende
+END_konstanten
+fi
+
+fi
+
+#
+#Unload-Job sos_studenten
+#
+echo "--------------------------------------------------------------" >>$ERR
+echo "Unload-Job: sos_studenten" >>$ERR
+
+
+if [ "$SX_CLIENT" = "psql" ]
+then
+echo "Unload with jdbc for Postgres" >>$ERR 2>&1
+
+if [ $VERSION = "6" -o $VERSION = "7" -o $VERSION = "8" -o $VERSION = "9" -o $VERSION = "10" -o $VERSION = "11" -o $VERSION = "12" -o $VERSION = "13" ]
+then
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+
+select superx_sos.mtknr_ldsg,
+extract(day from gebdat)::varchar(2) || '.' || extract(month from gebdat)::varchar(2) || '.' || extract(year from gebdat)::varchar(4),
+gebort,
+k_geschl.astat as geschl,
+extract(day from exmdat)::varchar(2) || '.' || extract(month from exmdat)::varchar(2) || '.' || extract(year from exmdat)::varchar(4),
+status,
+semester,
+poplz,
+poort,
+extract(day from immdat)::varchar(2) || '.' || extract(month from immdat)::varchar(2) || '.' || extract(year from immdat)::varchar(4),
+ beugrund as gdbu,
+exmgrund as gdex,
+staat,
+null::char(1) as bland,
+hssem,
+urlsem,
+hmkfzkz,
+hmkfz,
+semkfzkz,
+semkfz,
+hzbart,
+hzbjahr,
+hzbkfzkz,
+hzbkfz,
+extract(day from hzbdatum)::varchar(2) || '.' || extract(month from hzbdatum)::varchar(2) || '.' || extract(year from hzbdatum)::varchar(4),
+null::char(1) as hzbnote ,
+hssemgewicht,
+null::char(1) as urlsemgewicht,
+erhskfz,
+erhsart,
+erhssembrd,
+erstsemhs,
+sperrart1,
+sperrart2,
+staatkez,
+ersthzbkfz,
+ersthzbkfzkz ,
+ersthzbart,
+NULL::char(1) AS second_nationality,
+praxsem AS practicalsemester,
+kolsem AS kollegsemester,
+NULL::char(1) AS discontinuationsemester ,
+NULL::char(1) AS studyrelatedjob ,
+NULL::char(1) AS studyrelatedinternship,
+NULL::char(1) AS interruptiontype,
+NULL::char(1) AS study_before_place_of_study,
+NULL::char(1) AS study_before_country_of_study,
+NULL::date AS org_role_valid_from,
+NULL::date AS org_role_valid_to,
+sema,
+gebasoll,
+geba,
+geba_sws,
+ersthzbjahr,
+ersthzbnote
+FROM superx_sos,sos
+left outer join k_geschl on (sos.geschl = k_geschl.geschl)
+where
+sos.mtknr = superx_sos.mtknr
+and (fehlerkz not in ('F', 'V') or fehlerkz is null)
+--and sos.semester >= $start_stud_sem
+;
+
+
+" "txt" "$DBDELIMITER" "false" "unl/sos_studenten.unl" >>$ERR 2>&1
+
+fi
+
+fi
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+
+select distinct
+S.mtknr_ldsg,
+S.person_birthdate,
+S.person_birthcity, --gebort,
+G.astat as geschl,
+case when RRT.k_statement_of_fact_id is not null
+ then RD.disenrollment_date end as exmdat, --exmdat
+U.k_studystatus_id, --status
+'' || U.term_year || TT.termnumber,--semester, TODO muss auf SuperX-Seite auf max(degree_program_progress) gesetzt werden
+null::char(1), --poplz,
+null::char(1), --poort,
+U.enrollmentdate, --immdat 10
+null::char(1), -- beugrund as gdbu,
+(select STMT.uniquename from k_statement_of_fact STMT where RRT.k_statement_of_fact_id=STMT.id) as gdex, -- #118735
+S.personinfo_country_id as staat,
+null::char(1) as bland,
+round(U.universitysemester,0)::int, --hssem, TODO muss ermittelt werden
+U.leavesemester::int,--urlsem,
+U.home_country_lid, --hmkfzkz, Heimatwohnsitz 17,
+U.home_district_lid, --hmkfz,
+S.semester_country_astat,--semkfzkz,
+S.semester_astat, --semkfz
+--wird aus sos_hzb ermittelt:
+null::char(1), --hzbart,
+null::char(1), --hzbjahr,
+null::char(1), --hzbkfzkz,
+null::char(1), --hzbkfz,
+null::char(1), --extract(day from hzbdatum)::varchar(2) || '.' || extract(month from hzbdatum)::varchar(2) || '.' || extract(year from hzbdatum)::varchar(4),
+null::char(1), --hzbnote ,
+--TODO:
+null::char(1), --hssemgewicht,
+null::char(1) as urlsemgewicht,
+null::char(1), --erhskfz,
+null::char(1), --erhsart,
+S.erhssembrd,
+null::char(1), --erstsemhs
+null::char(1), --sperrart1,
+null::char(1), --sperrart2,
+null::char(1), --staatkez,
+null::char(1), --ersthzbkfz,
+null::char(1), --ersthzbkfzkz
+null::char(1), --ersthzbart
+S.second_nationality_astat,
+U.practicalsemester::int,
+U.kollegsemester::int,
+S.discontinuationsemester,
+U.study_related_job,
+U.study_related_internship,
+S.k_study_interruption_type_astat,
+S.study_before_place_of_study,
+S.study_before_country_of_study,
+S.orgrole_valid_from,
+S.orgrole_valid_to,
+NULL::char(1) AS sema,
+NULL::char(1) AS gebasoll,
+NULL::char(1) AS geba,
+NULL::char(1) AS geba_sws,
+NULL::integer as ersthzbjahr,
+NULL::integer as ersthzbnote
+FROM k_gender G, (student U left outer join request_for_disenrollment RD
+on (RD.id = U.request_for_disenrollment_id)
+left outer join request_base RB on (RB.id = RD.id and 0< (select count(*) from k_status
+ where k_status.id=RB.approval_k_status_id
+and k_status.hiskey_id=4001
+and k_status.uniquename='G'))
+left outer join reasonable_request_type RRT on RB.reasonable_request_type_id = RRT.id
+left outer join term_type TT on TT.id = U.term_type_id
+ ),
+superx_sos S
+where S.person_k_gender_id=G.id
+and U.id=S.id
+and (U.term_year * 10 + TT.termnumber >= $start_stud_sem)
+;
+
+
+
+" "txt" "$DBDELIMITER" "false" "unl/sos_studenten.unl" >>$ERR 2>&1
+
+fi
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+
+select superx_sos.mtknr_ldsg,
+gebdat,
+'',--gebort,
+ (CASE WHEN geschl='M' THEN '1'
+ when geschl='W' then '2'
+ else ''
+ end) as geschl,
+exmdat,
+status,
+semester,
+'' ,--poplz,
+'' ,--poort,
+immdat,
+'' ,--beugrund as gdbu,
+exmgrund as gdex,
+staat,
+'' as bland,
+'' ,--hssem,
+'' ,--urlsem,
+hmkfzkz,
+hmkfz,
+semkfzkz,
+semkfz,
+hzbart,
+hzbjahr,
+hzbkfzkz,
+hzbkfz,
+hzbdatum,
+hzbnote ,
+'' ,--hssemgewicht,
+'' as urlsemgewicht,
+erhskfz,
+'' ,--erhsart,
+erhssembrd,
+erstsemhs,
+'' ,--sperrart1,
+'' ,--sperrart2,
+'' ,--staatkez,
+'' ,--ersthzbkfz,
+'' ,--ersthzbkfzkz ,
+'',--ersthzbart
+'',-- second_nationality,
+'',-- practicalsemester,
+'',-- kollegsemester,
+'',-- discontinuation_sem_zahl,
+'',-- studyrelatedjob,
+'',-- studyrelatedinternship,
+'',-- interruptiontype,
+erhskfz,-- study_before_place_of_study,
+'', -- study_before_country_of_study
+'', --date AS org_role_valid_from,
+'', -- date AS org_role_valid_to
+'' AS sema,
+'' AS gebasoll,
+'' AS geba,
+'' AS geba_sws,
+'' AS ersthzbjahr,
+'' AS ersthzbnote
+FROM superx_sos,sos
+where
+sos.mtknr = superx_sos.mtknr
+and sos.semester >= $start_stud_sem
+;
+
+
+" "txt" "$DBDELIMITER" "false" "unl/sos_studenten.unl" >>$ERR 2>&1
+
+fi
+
+fi
+
+if [ "$SX_CLIENT" = "dbaccess" ]
+then
+echo "Unload with dbaccess" >>$ERR 2>&1
+
+#Unload sql-Statement
+if [ $VERSION = "5" ]
+then
+
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/sos_studenten.unl"
+
+
+
+SELECT
+superx_sos.mtknr_ldsg mtknr, {matrikel_nr}
+gebdat, {d_geburt}
+gebort, {geburtsort}
+k_geschl.astat geschl, {geschlecht}
+exmdat, {d_exmatr}
+status, {kz_rueck_beur_ein}
+semester, {sem_rueck_beur_ein}
+poplz, {plz}
+poort, {ort}
+immdat, {d_immatr}
+beugrund as gdbu,
+exmgrund as gdex,
+staat,
+k_ikfz.bland bland, {bundesland}
+hssem, {hs_sem_zahl}
+urlsem,{url_sem_zahl}
+hmkfzkz, {Kennz. Heimatkfz}
+hmkfz, {Heimatkfz}
+semkfzkz, {Kennz. Semesterkfz}
+semkfz, {Semesterkfz}
+hzbart, {Art der Hochschulzugangsberechtigung}
+hzbjahr,
+hzbkfzkz,
+hzbkfz,
+hzbdatum,
+null::char(1) as hzbnote ,
+hssemgewicht,
+null::char(1) as urlsemgewicht ,
+erhskfz,
+erhsart,
+erhssembrd,
+erstsemhs,
+sperrart1,
+sperrart2,
+staatkez,
+ersthzbkfz,
+ersthzbkfzkz,
+ersthzbart,
+NULL::char(1) AS second_nationality,
+NULL::char(1) AS practicalsemester,
+NULL::char(1) AS kollegsemester,
+NULL::char(1) AS job,
+NULL::char(1) AS studyrelatedjob,
+NULL::char(1) AS studyrelatedinternship,
+NULL::char(1) AS interruptiontype,
+NULL::char(1) AS study_before_place_of_study,
+NULL::char(1) AS study_before_country_of_study,
+NULL::date AS org_role_valid_from,
+NULL::date AS org_role_valid_to,
+NULL::char(1) AS sema,
+NULL::char(1) AS gebasoll,
+NULL::char(1) AS geba,
+NULL::char(1) AS geba_sws,
+NULL::integer as ersthzbjahr,
+NULL::integer as ersthzbnote
+FROM sos
+, superx_sos
+, outer k_geschl
+, outer k_ikfz
+
+WHERE sos.mtknr = superx_sos.mtknr
+AND sos.geschl = k_geschl.geschl
+AND sos.hmkfz = k_ikfz.ikfz
+--and sos.semester >= $start_stud_sem;
+
+--Ende
+END_sos_studenten5
+fi
+
+fi
+#Unload sql-Statement
+if [ $VERSION = "6" -o $VERSION = "7" -o $VERSION = "8" -o $VERSION = "9" -o $VERSION = "10" -o $VERSION = "11" -o $VERSION = "12" -o $VERSION = "13" ]
+then
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/sos_studenten.unl"
+
+
+
+SELECT
+superx_sos.mtknr_ldsg mtknr, {matrikel_nr}
+gebdat, {d_geburt}
+gebort, {geburtsort}
+k_geschl.astat geschl, {geschlecht}
+exmdat, {d_exmatr}
+status, {kz_rueck_beur_ein}
+semester, {sem_rueck_beur_ein}
+poplz, {plz}
+poort, {ort}
+immdat, {d_immatr}
+beugrund as gdbu,
+exmgrund as gdex,
+staat,
+k_ikfz.bland bland, {bundesland}
+hssem, {hs_sem_zahl}
+urlsem,{url_sem_zahl}
+hmkfzkz, {Kennz. Heimatkfz}
+hmkfz, {Heimatkfz}
+semkfzkz, {Kennz. Semesterkfz}
+semkfz, {Semesterkfz}
+hzbart, {Art der Hochschulzugangsberechtigung}
+hzbjahr,
+hzbkfzkz,
+hzbkfz,
+hzbdatum,
+null::char(1) as hzbnote ,
+hssemgewicht,
+urlsemgewicht ,
+erhskfz,
+erhsart,
+erhssembrd,
+erstsemhs,
+sperrart1,
+sperrart2,
+staatkez,
+ersthzbkfz,
+ersthzbkfzkz,
+ersthzbart,
+NULL::char(1) AS second_nationality,
+praxsem AS practicalsemester,
+kolsem AS kollegsemester,
+NULL::char(1) AS discontinuationsemester ,
+NULL::char(1) AS studyrelatedjob ,
+NULL::char(1) AS studyrelatedinternship,
+NULL::char(1) AS interruptiontype,
+NULL::char(1) AS study_before_place_of_study,
+NULL::char(1) AS study_before_country_of_study,
+NULL::date AS org_role_valid_from,
+NULL::date AS org_role_valid_to,
+sema,
+gebasoll,
+geba,
+geba_sws,
+ersthzbjahr,
+ersthzbnote
+FROM sos
+, superx_sos
+, outer k_geschl
+, outer k_ikfz
+
+WHERE sos.mtknr = superx_sos.mtknr
+AND sos.geschl = k_geschl.geschl
+AND sos.hmkfz = k_ikfz.ikfz
+--and sos.semester >= $start_stud_sem;
+
+--Ende
+END_sos_studenten678910111213
+fi
+
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/sos_studenten.unl"
+
+
+
+select distinct
+S.mtknr_ldsg,
+S.person_birthdate,
+S.person_birthcity, --gebort,
+G.astat as geschl,
+case when RRT.k_statement_of_fact_id is not null
+ then RD.disenrollment_date end as exmdat, --exmdat
+U.k_studystatus_id, --status
+'' || U.term_year || TT.termnumber,--semester, TODO muss auf SuperX-Seite auf max(degree_program_progress) gesetzt werden
+null::char(1), --poplz,
+null::char(1), --poort,
+U.enrollmentdate, --immdat 10
+null::char(1), -- beugrund as gdbu,
+(select STMT.uniquename from k_statement_of_fact STMT where RRT.k_statement_of_fact_id=STMT.id) as gdex, -- #118735
+S.personinfo_country_id as staat,
+null::char(1) as bland,
+round(U.universitysemester,0)::int, --hssem, TODO muss ermittelt werden
+U.leavesemester::int,--urlsem,
+U.home_country_lid, --hmkfzkz, Heimatwohnsitz 17,
+U.home_district_lid, --hmkfz,
+S.semester_country_astat,--semkfzkz,
+S.semester_astat, --semkfz
+--wird aus sos_hzb ermittelt:
+null::char(1), --hzbart,
+null::char(1), --hzbjahr,
+null::char(1), --hzbkfzkz,
+null::char(1), --hzbkfz,
+null::char(1), --extract(day from hzbdatum)::varchar(2) || '.' || extract(month from hzbdatum)::varchar(2) || '.' || extract(year from hzbdatum)::varchar(4),
+null::char(1), --hzbnote ,
+--TODO:
+null::char(1), --hssemgewicht,
+null::char(1) as urlsemgewicht,
+null::char(1), --erhskfz,
+null::char(1), --erhsart,
+S.erhssembrd,
+null::char(1), --erstsemhs
+null::char(1), --sperrart1,
+null::char(1), --sperrart2,
+null::char(1), --staatkez,
+null::char(1), --ersthzbkfz,
+null::char(1), --ersthzbkfzkz
+null::char(1), --ersthzbart
+S.second_nationality_astat,
+U.practicalsemester::int,
+U.kollegsemester::int,
+S.discontinuationsemester,
+U.study_related_job,
+U.study_related_internship,
+S.k_study_interruption_type_astat,
+S.study_before_place_of_study,
+S.study_before_country_of_study,
+S.orgrole_valid_from,
+S.orgrole_valid_to,
+NULL::char(1) AS sema,
+NULL::char(1) AS gebasoll,
+NULL::char(1) AS geba,
+NULL::char(1) AS geba_sws,
+NULL::integer as ersthzbjahr,
+NULL::integer as ersthzbnote
+FROM k_gender G, (student U left outer join request_for_disenrollment RD
+on (RD.id = U.request_for_disenrollment_id)
+left outer join request_base RB on (RB.id = RD.id and 0< (select count(*) from k_status
+ where k_status.id=RB.approval_k_status_id
+and k_status.hiskey_id=4001
+and k_status.uniquename='G'))
+left outer join reasonable_request_type RRT on RB.reasonable_request_type_id = RRT.id
+left outer join term_type TT on TT.id = U.term_type_id
+ ),
+superx_sos S
+where S.person_k_gender_id=G.id
+and U.id=S.id
+and (U.term_year * 10 + TT.termnumber >= $start_stud_sem)
+;
+
+
+
+--Ende
+END_sos_studenten
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/sos_studenten.unl"
+
+
+
+select superx_sos.mtknr_ldsg,
+gebdat,
+'',--gebort,
+ (CASE WHEN geschl='M' THEN '1'
+ when geschl='W' then '2'
+ else ''
+ end) as geschl,
+exmdat,
+status,
+semester,
+'' ,--poplz,
+'' ,--poort,
+immdat,
+'' ,--beugrund as gdbu,
+exmgrund as gdex,
+staat,
+'' as bland,
+'' ,--hssem,
+'' ,--urlsem,
+hmkfzkz,
+hmkfz,
+semkfzkz,
+semkfz,
+hzbart,
+hzbjahr,
+hzbkfzkz,
+hzbkfz,
+hzbdatum,
+hzbnote ,
+'' ,--hssemgewicht,
+'' as urlsemgewicht,
+erhskfz,
+'' ,--erhsart,
+erhssembrd,
+erstsemhs,
+'' ,--sperrart1,
+'' ,--sperrart2,
+'' ,--staatkez,
+'' ,--ersthzbkfz,
+'' ,--ersthzbkfzkz ,
+'',--ersthzbart
+'',-- second_nationality,
+'',-- practicalsemester,
+'',-- kollegsemester,
+'',-- discontinuation_sem_zahl,
+'',-- studyrelatedjob,
+'',-- studyrelatedinternship,
+'',-- interruptiontype,
+erhskfz,-- study_before_place_of_study,
+'', -- study_before_country_of_study
+'', --date AS org_role_valid_from,
+'', -- date AS org_role_valid_to
+'' AS sema,
+'' AS gebasoll,
+'' AS geba,
+'' AS geba_sws,
+'' AS ersthzbjahr,
+'' AS ersthzbnote
+FROM superx_sos,sos
+where
+sos.mtknr = superx_sos.mtknr
+and sos.semester >= $start_stud_sem
+;
+
+
+--Ende
+END_sos_studenten
+fi
+
+fi
+
+#
+#Unload-Job sos_hzb
+#
+echo "--------------------------------------------------------------" >>$ERR
+echo "Unload-Job: sos_hzb" >>$ERR
+
+
+if [ "$SX_CLIENT" = "psql" ]
+then
+echo "Unload with jdbc for Postgres" >>$ERR 2>&1
+
+
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+
+select superx_sos.mtknr_ldsg,
+hzbart,
+hzbjahr,
+hzbkfzkz,
+hzbkfz,
+extract(day from hzbdatum)::varchar(2) || '.' || extract(month from hzbdatum)::varchar(2) || '.' || extract(year from hzbdatum)::varchar(4),
+hzbnote,
+null:: char(255), --.hzbart,
+null:: smallint, --hzbjahr,
+null:: varchar(255), --hzbkfzkz,
+null:: varchar(255),--hzbkzf,
+null:: date, --hzbdate,
+null:: char(10) --hzbnote
+FROM superx_sos,sos
+where
+sos.mtknr = superx_sos.mtknr
+and (fehlerkz not in ('F', 'V') or fehlerkz is null)
+
+;
+
+
+" "txt" "$DBDELIMITER" "false" "unl/sos_hzb.unl" >>$ERR 2>&1
+
+fi
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+
+select distinct O.mtknr_ldsg,
+H.entrance_qualification_type_id,--.hzbart,
+extract(year from E.date_of_work)::smallint,--hzbjahr,
+(select C.astat from country C
+where C.lid=I.country_lid
+and E.date_of_work between C.valid_from and C.valid_to) as hzbkfzkz,
+(select D.astat from district D
+where D.lid=I.district_lid
+and E.date_of_work between D.valid_from and D.valid_to) as hzbfz,
+extract(day from E.date_of_work)::varchar(2) || '.' || extract(month from E.date_of_work)::varchar(2) || '.' || extract(year from E.date_of_work)::varchar(4),
+I.foreign_grade, --hzbnote,
+null:: char(255), --.hzbart,
+null:: smallint, --hzbjahr,
+null:: varchar(255), --hzbkfzkz,
+null:: varchar(255),--hzbkzf,
+null:: date, --hzbdate,
+null:: char(10) --hzbnote
+FROM superx_sos O, student S, person P, examplan E, unit U, k_elementtype Y,
+entrance_qualification H,
+examimport I
+where
+S.id=O.id
+and P.id=S.person_id
+and P.id=E.person_id
+and H.examplan_id=E.id
+and I.examplan_id=E.id
+and U.id=E.unit_id
+and U.k_elementtype_id=Y.id
+and Y.hiskey_id=7 --nur HZB
+;
+
+" "txt" "$DBDELIMITER" "false" "unl/sos_hzb.unl" >>$ERR 2>&1
+
+fi
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+
+select superx_sos.mtknr_ldsg,
+hzbart,
+hzbjahr,
+hzbkfzkz,
+hzbkfz,
+hzbdatum,
+hzbnote,
+null as hzbart,
+null as hzbjahr,
+null as hzbkfzkz,
+null as hzbkzf,
+null as hzbdate,
+null as hzbnote
+FROM superx_sos,sos
+where
+sos.mtknr = superx_sos.mtknr
+and sos.semester >= $start_stud_sem
+
+;
+
+
+" "txt" "$DBDELIMITER" "false" "unl/sos_hzb.unl" >>$ERR 2>&1
+
+fi
+
+fi
+
+if [ "$SX_CLIENT" = "dbaccess" ]
+then
+echo "Unload with dbaccess" >>$ERR 2>&1
+
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/sos_hzb.unl"
+
+
+
+select superx_sos.mtknr_ldsg,
+hzbart,
+hzbjahr,
+hzbkfzkz,
+hzbkfz,
+day(hzbdatum)::varchar(2) || '.' || month(hzbdatum)::varchar(2) || '.' || year(hzbdatum)::varchar(4),
+hzbnote,
+null:: char(255), --.hzbart,
+null:: smallint, --hzbjahr,
+null:: varchar(255), --hzbkfzkz,
+null:: varchar(255),--hzbkzf,
+null:: date, --hzbdate,
+null:: char(10) --hzbnote
+FROM superx_sos,sos
+where
+sos.mtknr = superx_sos.mtknr
+and (fehlerkz not in ('F', 'V') or fehlerkz is null)
+
+;
+
+
+--Ende
+END_sos_hzb
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/sos_hzb.unl"
+
+
+
+select distinct O.mtknr_ldsg,
+H.entrance_qualification_type_id,--.hzbart,
+extract(year from E.date_of_work)::smallint,--hzbjahr,
+(select C.astat from country C
+where C.lid=I.country_lid
+and E.date_of_work between C.valid_from and C.valid_to) as hzbkfzkz,
+(select D.astat from district D
+where D.lid=I.district_lid
+and E.date_of_work between D.valid_from and D.valid_to) as hzbfz,
+extract(day from E.date_of_work)::varchar(2) || '.' || extract(month from E.date_of_work)::varchar(2) || '.' || extract(year from E.date_of_work)::varchar(4),
+I.foreign_grade, --hzbnote,
+null:: char(255), --.hzbart,
+null:: smallint, --hzbjahr,
+null:: varchar(255), --hzbkfzkz,
+null:: varchar(255),--hzbkzf,
+null:: date, --hzbdate,
+null:: char(10) --hzbnote
+FROM superx_sos O, student S, person P, examplan E, unit U, k_elementtype Y,
+entrance_qualification H,
+examimport I
+where
+S.id=O.id
+and P.id=S.person_id
+and P.id=E.person_id
+and H.examplan_id=E.id
+and I.examplan_id=E.id
+and U.id=E.unit_id
+and U.k_elementtype_id=Y.id
+and Y.hiskey_id=7 --nur HZB
+;
+
+--Ende
+END_sos_hzb
+fi
+
+fi
+
+#
+#Unload-Job sos_faecher
+#
+echo "--------------------------------------------------------------" >>$ERR
+echo "Unload-Job: sos_faecher" >>$ERR
+
+
+if [ "$SX_CLIENT" = "psql" ]
+then
+echo "Unload with jdbc for Postgres" >>$ERR 2>&1
+
+if [ $VERSION = "6" -o $VERSION = "7" -o $VERSION = "8" -o $VERSION = "9" -o $VERSION = "10" -o $VERSION = "11" -o $VERSION = "12" -o $VERSION = "13" ]
+then
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+SELECT
+S.mtknr_ldsg,
+abschl,
+stg,
+vert,
+schwp,
+kzfa,
+fb,
+pversion,
+F.semester,
+substr(F.stgnr,1,1),
+substr(F.stgnr,length(F.stgnr),1),
+F.status,
+F.beugrund as gdbu,
+F.endegrd as gdex,
+F.stgsem,
+F.hrst,
+F.klinsem,
+F.hssem,
+stuart,
+stutyp,
+stufrm,
+stort,
+extract(day from F.ruebeudat)::varchar(2) || '.' || extract(month from F.ruebeudat)::varchar(2) || '.' || extract(year from F.ruebeudat)::varchar(4),
+semgewicht,
+stggewicht,
+stgsemgewicht,
+null::char(1) as hssemgewicht,
+null::char(1) as urlsemgewicht,
+kohsem,
+lfdnr,
+extract(day from F.endedat)::varchar(2) || '.' || extract(month from F.endedat)::varchar(2) || '.' || extract(year from F.endedat)::varchar(4),
+extract(day from F.anfdat)::varchar(2) || '.' || extract(month from F.anfdat)::varchar(2) || '.' || extract(year from F.anfdat)::varchar(4),
+lepsem,
+NULL::char(1), -- district.astat nur h1
+NULL::char(1), -- country.astat nur h1
+null::int, --Art der Promotion
+null::char(1) as field_of_study,
+null::Char(10),--primaerfach,
+null::Char(10) --unikey
+
+FROM stg F, superx_sos S
+WHERE F.mtknr = S.mtknr
+and (lfdnr=0 or lfdnr is null)
+AND F.semester >= $start_stud_sem
+;
+
+" "txt" "$DBDELIMITER" "false" "unl/sos_faecher.unl" >>$ERR 2>&1
+
+fi
+
+fi
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+SELECT DISTINCT
+ S.mtknr_ldsg,
+ C.degree_id,--abschl
+ C.subject_id,--stg,
+ C.major_field_of_study_id, --vert,
+ C.course_specialization_id, --schwp,
+ C.k_subject_indicator_id,--kzfa,
+ null::char(1),--fb,
+ C.k_examinationversion_id,--pversion,
+ '' || P.term_year || T.termnumber,--F.semester,
+ DP.studynumber, --substr(F.stgnr,1,1),
+ DP.subjectnumber,--substr(F.stgnr,length(F.stgnr),1),
+ DP.k_studystatus_id, --F.status,
+ DP.k_reason_of_leave_id, --Beurlaubungsgrund
+DP.k_reason_of_finishing_id, --Exmatrikulationsgrund
+trunc(DP.studysemester),--F.stgsem,
+DP.k_studentstatus_id, --F.hrst,
+trunc(DP.clinical_semester),--F.klinsem,
+trunc(U.universitysemester),--F.hssem,
+C.k_type_of_study_id ,--stuart,
+C.k_enrollment_id,--stutyp,
+C.k_form_of_studies_id,--stufrm,
+C.k_place_of_studies_id,--stort,
+extract(day from DP.reregistration_date)::varchar(2) || '.' || extract(month from DP.reregistration_date)::varchar(2) || '.' || extract(year from DP.reregistration_date)::varchar(4), --ruebeudat
+DP.part_time_percentage, --semgewicht,
+null::char(1),--stggewicht,
+null::char(1),--stgsemgewicht,
+null::char(1) as urlsemgewicht,
+null::char(1) as hssemgewicht,
+null::char(1),--kohsem,
+0, --lfdnr,
+extract(day from DP.finished)::varchar(2) || '.' || extract(month from DP.finished)::varchar(2) || '.' || extract(year from DP.finished)::varchar(4) ,--endedat
+extract(day from DP.startdate)::varchar(2) || '.' || extract(month from DP.startdate)::varchar(2) || '.' || extract(year from DP.startdate)::varchar(4), --anfdat
+null::char(1),--lepsem
+D.dastat, --district.astat
+D.castat, --country.astat
+-- DIS.astat, --district.astat
+-- CNT.astat, --country.astat
+D.k_type_of_doctorate_id --Art der Promotion
+,SUB.fosid, --field_of_study
+null::Char(10),--primaerfach,
+null::Char(10) --unikey
+FROM period P,
+term_type T,
+degree_program_progress DP,
+-- degree_program D,
+(select DegP.*, DIS.astat as dastat, CNT.astat as castat from
+degree_program DegP
+left outer join district DIS on DIS.id = DegP.final_exam_district_id
+left outer join country CNT on CNT.lid = DegP.final_exam_country_lid
+where CNT.valid_from <= current_date and CNT.valid_to >= current_date) D,
+superx_sos S,
+student U,
+tmp_course_of_study C,
+(select tmpSUB.*, tmpFOS.id as fosid
+from subject as tmpSUB
+left outer join k_field_of_study as tmpFOS
+on tmpSUB.k_field_of_study_id = tmpFOS.id) SUB
+-- district DIS,
+-- country CNT
+WHERE T.id=P.term_type_id
+and D.id=DP.degree_program_id
+and DP.course_of_study_id=C.id
+and DP.period_id=P.id
+and S.person_id = U.person_id
+and S.person_id = D.person_id
+and U.id=S.id
+and SUB.id = C.subject_id
+-- and DIS.id = D.final_exam_district_id
+-- and CNT.id = D.final_exam_country_lid
+-- and CNT.valid_from <= current_date and CNT.valid_to >= current_date
+AND to_number('' || P.term_year || T.termnumber,'99999') >= $start_stud_sem
+;
+
+" "txt" "$DBDELIMITER" "false" "unl/sos_faecher.unl" >>$ERR 2>&1
+
+fi
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+SELECT
+S.mtknr_ldsg,
+abschl,
+stg,
+'' ,--vert,
+'' ,--schwp,
+kzfa,
+'' ,--fb,
+pversion,
+F.semester,
+substr(F.stgnr,1,1),
+substr(F.stgnr,length(F.stgnr),1),
+F.status,
+F.beugrund as gdbu,
+F.endegrd as gdex,
+F.stgsem,
+F.hrst,
+F.klinsem,
+F.hssem,
+'' ,--stuart,
+'' ,--stutyp,
+stufrm,
+'' ,--stort,
+F.ruebeudat,
+'' ,--semgewicht,
+'' ,--stggewicht,
+'' ,--stgsemgewicht,
+'' as hssemgewicht,
+'' as urlsemgewicht,
+'' ,--kohsem,
+'' ,--lfdnr,
+F.endedat,
+F.anfdat,
+'', --lepsem
+'',-- -- district.astat nur h1
+'',-- -- country.astat nur h1
+'' , --Art der Promotion
+'' as field_of_study,
+primaerfach,
+unikey
+
+FROM stg F, superx_sos S
+WHERE F.mtknr = S.mtknr
+and F.status is not null
+AND F.semester >= $start_stud_sem
+;
+
+" "txt" "$DBDELIMITER" "false" "unl/sos_faecher.unl" >>$ERR 2>&1
+
+fi
+
+fi
+
+if [ "$SX_CLIENT" = "dbaccess" ]
+then
+echo "Unload with dbaccess" >>$ERR 2>&1
+
+#Unload sql-Statement
+if [ $VERSION = "5" ]
+then
+
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/sos_faecher.unl"
+
+
+SELECT
+superx_sos.mtknr_ldsg, {matrikel_nr}
+abschl,{ch35_ang_abschluss}
+stg, {ch30_fach}
+vert, {ch39_vertief}
+schwp, {schwerpunkt}
+kzfa,{kz_fach}
+fb,
+pversion, {pversion}
+stg.semester, {sem_rueck_beur_ein}
+stg.stgnr[1,1], {studiengang_nr}
+stg.stgnr[2,2], {fach_nr}
+status, {kz_rueck_beur_ein}
+beugrund as gdbu,
+endegrd as gdex,
+stg.stgsem,{fach_sem_zahl}
+stg.hrst, {Hörerstatus}
+stg.klinsem,{klinische Semester}
+stg.hssem,
+stuart,
+stutyp,
+stufrm,
+stort,
+ruebeudat,
+semgewicht,
+stggewicht,
+stgsemgewicht,
+null::char(1) as hssemgewicht,
+null::char(1) as urlsemgewicht,
+kohsem,
+lfdnr,
+endedat ,
+anfdat ,
+lepsem,
+NULL::char(1), -- district.astat nur h1
+NULL::char(1), -- country.astat nur h1
+null::int, --Art der Promotion
+null::char(1), --field_of_study
+null::char(1) as field_of_study,
+null::Char(10),--primaerfach,
+null::Char(10) --unikey
+FROM stg
+, superx_sos
+WHERE stg.mtknr = superx_sos.mtknr
+and (lfdnr=0 or lfdnr is null)
+AND stg.semester >= $start_stud_sem {ab hier werden Daten ausgewertet}
+;
+
+--Ende
+END_sos_faecher5
+fi
+
+fi
+#Unload sql-Statement
+if [ $VERSION = "6" -o $VERSION = "7" -o $VERSION = "8" -o $VERSION = "9" -o $VERSION = "10" -o $VERSION = "11" -o $VERSION = "12" -o $VERSION = "13" ]
+then
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/sos_faecher.unl"
+
+
+SELECT
+superx_sos.mtknr_ldsg, {matrikel_nr}
+abschl,{ch35_ang_abschluss}
+stg, {ch30_fach}
+vert, {ch39_vertief}
+schwp, {schwerpunkt}
+kzfa,{kz_fach}
+fb,
+pversion, {pversion}
+stg.semester, {sem_rueck_beur_ein}
+stg.stgnr[1,1], {studiengang_nr}
+stg.stgnr[2,2], {fach_nr}
+status, {kz_rueck_beur_ein}
+beugrund as gdbu,
+endegrd as gdex,
+stg.stgsem,{fach_sem_zahl}
+stg.hrst, {Hörerstatus}
+stg.klinsem,{klinische Semester}
+stg.hssem,
+stuart,
+stutyp,
+stufrm,
+stort,
+ruebeudat,
+semgewicht,
+stggewicht,
+stgsemgewicht,
+hssemgewicht,
+urlsemgewicht,
+kohsem,
+lfdnr,
+endedat ,
+anfdat ,
+lepsem,
+NULL::char(1), -- district.astat nur h1
+NULL::char(1), -- country.astat nur h1
+null::int, --Art der Promotion
+null::char(1) as field_of_study,
+null::Char(10),--primaerfach,
+null::Char(10) --unikey
+FROM stg
+, superx_sos
+WHERE stg.mtknr = superx_sos.mtknr
+and (lfdnr=0 or lfdnr is null)
+AND stg.semester >= $start_stud_sem {ab hier werden Daten ausgewertet}
+;
+
+--Ende
+END_sos_faecher678910111213
+fi
+
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/sos_faecher.unl"
+
+
+SELECT DISTINCT
+ S.mtknr_ldsg,
+ C.degree_id,--abschl
+ C.subject_id,--stg,
+ C.major_field_of_study_id, --vert,
+ C.course_specialization_id, --schwp,
+ C.k_subject_indicator_id,--kzfa,
+ null::char(1),--fb,
+ C.k_examinationversion_id,--pversion,
+ '' || P.term_year || T.termnumber,--F.semester,
+ DP.studynumber, --substr(F.stgnr,1,1),
+ DP.subjectnumber,--substr(F.stgnr,length(F.stgnr),1),
+ DP.k_studystatus_id, --F.status,
+ DP.k_reason_of_leave_id, --Beurlaubungsgrund
+DP.k_reason_of_finishing_id, --Exmatrikulationsgrund
+trunc(DP.studysemester),--F.stgsem,
+DP.k_studentstatus_id, --F.hrst,
+trunc(DP.clinical_semester),--F.klinsem,
+trunc(U.universitysemester),--F.hssem,
+C.k_type_of_study_id ,--stuart,
+C.k_enrollment_id,--stutyp,
+C.k_form_of_studies_id,--stufrm,
+C.k_place_of_studies_id,--stort,
+extract(day from DP.reregistration_date)::varchar(2) || '.' || extract(month from DP.reregistration_date)::varchar(2) || '.' || extract(year from DP.reregistration_date)::varchar(4), --ruebeudat
+DP.part_time_percentage, --semgewicht,
+null::char(1),--stggewicht,
+null::char(1),--stgsemgewicht,
+null::char(1) as urlsemgewicht,
+null::char(1) as hssemgewicht,
+null::char(1),--kohsem,
+0, --lfdnr,
+extract(day from DP.finished)::varchar(2) || '.' || extract(month from DP.finished)::varchar(2) || '.' || extract(year from DP.finished)::varchar(4) ,--endedat
+extract(day from DP.startdate)::varchar(2) || '.' || extract(month from DP.startdate)::varchar(2) || '.' || extract(year from DP.startdate)::varchar(4), --anfdat
+null::char(1),--lepsem
+D.dastat, --district.astat
+D.castat, --country.astat
+-- DIS.astat, --district.astat
+-- CNT.astat, --country.astat
+D.k_type_of_doctorate_id --Art der Promotion
+,SUB.fosid, --field_of_study
+null::Char(10),--primaerfach,
+null::Char(10) --unikey
+FROM period P,
+term_type T,
+degree_program_progress DP,
+-- degree_program D,
+(select DegP.*, DIS.astat as dastat, CNT.astat as castat from
+degree_program DegP
+left outer join district DIS on DIS.id = DegP.final_exam_district_id
+left outer join country CNT on CNT.lid = DegP.final_exam_country_lid
+where CNT.valid_from <= current_date and CNT.valid_to >= current_date) D,
+superx_sos S,
+student U,
+tmp_course_of_study C,
+(select tmpSUB.*, tmpFOS.id as fosid
+from subject as tmpSUB
+left outer join k_field_of_study as tmpFOS
+on tmpSUB.k_field_of_study_id = tmpFOS.id) SUB
+-- district DIS,
+-- country CNT
+WHERE T.id=P.term_type_id
+and D.id=DP.degree_program_id
+and DP.course_of_study_id=C.id
+and DP.period_id=P.id
+and S.person_id = U.person_id
+and S.person_id = D.person_id
+and U.id=S.id
+and SUB.id = C.subject_id
+-- and DIS.id = D.final_exam_district_id
+-- and CNT.id = D.final_exam_country_lid
+-- and CNT.valid_from <= current_date and CNT.valid_to >= current_date
+AND to_number('' || P.term_year || T.termnumber,'99999') >= $start_stud_sem
+;
+
+--Ende
+END_sos_faecher
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/sos_faecher.unl"
+
+
+SELECT
+S.mtknr_ldsg,
+abschl,
+stg,
+'' ,--vert,
+'' ,--schwp,
+kzfa,
+'' ,--fb,
+pversion,
+F.semester,
+substr(F.stgnr,1,1),
+substr(F.stgnr,length(F.stgnr),1),
+F.status,
+F.beugrund as gdbu,
+F.endegrd as gdex,
+F.stgsem,
+F.hrst,
+F.klinsem,
+F.hssem,
+'' ,--stuart,
+'' ,--stutyp,
+stufrm,
+'' ,--stort,
+F.ruebeudat,
+'' ,--semgewicht,
+'' ,--stggewicht,
+'' ,--stgsemgewicht,
+'' as hssemgewicht,
+'' as urlsemgewicht,
+'' ,--kohsem,
+'' ,--lfdnr,
+F.endedat,
+F.anfdat,
+'', --lepsem
+'',-- -- district.astat nur h1
+'',-- -- country.astat nur h1
+'' , --Art der Promotion
+'' as field_of_study,
+primaerfach,
+unikey
+
+FROM stg F, superx_sos S
+WHERE F.mtknr = S.mtknr
+and F.status is not null
+AND F.semester >= $start_stud_sem
+;
+
+--Ende
+END_sos_faecher
+fi
+
+fi
+
+#
+#Unload-Job preparation_sos_pruefungen
+#
+echo "--------------------------------------------------------------" >>$ERR
+echo "Unload-Job: preparation_sos_pruefungen" >>$ERR
+
+
+if [ "$SX_CLIENT" = "psql" ]
+then
+echo "Unload with jdbc for Postgres" >>$ERR 2>&1
+
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+DROP TABLE IF EXISTS tmp_lab;
+create table tmp_lab(student_id integer,
+mtknr_ldsg integer,
+examplan_id integer,
+date_of_work date,
+term_year integer,
+termnumber integer,
+term_type_id integer,
+term_segment integer,
+default_examrelation_id integer,
+unit_id integer,
+examrelation_id integer,
+k_remark_on_exam_id integer,
+k_examform_id integer,
+cancelation smallint,
+person_id integer,
+official_statistics integer,
+grade decimal(9,5),
+degree_program_id integer,
+type_of_doctorate_id integer,
+type_of_doctorate_astat integer,
+degree_program_progress_id integer,
+degree_program_progress_studynumber integer,
+degree_program_progress_subjectnumber integer,
+degree_program_progress_studysemester integer,
+studysemester_acknowledgement_id integer,
+studysemester_acknowledgement_semester_overall decimal(19,6) ,
+studysemester_acknowledgement_former_degree_program decimal(19,6) ,
+studysemester_acknowledgement_practice_semester decimal(19,6) ,
+studysemester_acknowledgement_semester_abroad decimal(19,6) ,
+course_of_study_id integer,
+examrelation_k_workstatus_id integer,
+examrelation_malus decimal(9,5),
+examrelation_bonus decimal(9,5),
+examrelation_parent_examplan_id integer,
+panerk char(10),
+type_of_grading smallint
+);
+
+insert into tmp_lab(student_id,
+mtknr_ldsg,
+examplan_id,
+date_of_work,
+term_year,
+termnumber,
+term_type_id,
+term_segment,
+default_examrelation_id ,
+unit_id,
+k_remark_on_exam_id,
+k_examform_id,
+cancelation,
+person_id
+)
+select S.id,
+O.mtknr_ldsg,
+E.id as examplan_id,
+E.date_of_work,
+E.term_year,
+T.termnumber,
+T.id,
+E.term_segment,
+E.default_examrelation_id ,
+E.unit_id,
+E.k_remark_on_exam_id,
+E.k_examform_id,
+E.cancelation,
+S.person_id
+FROM superx_sos O, student S,
+examplan E,term_type T,unit U
+where S.person_id=E.person_id
+ and S.id=O.id
+ and T.id=E.term_type_id
+ and U.id=E.unit_id
+ and (U.uniquename != 'AP-EXT' or U.uniquename is null) --ext.Pruefungnen ausschliessen
+ and 0=(select count(*) from k_elementtype K where K.id=U.k_elementtype_id and K.hiskey_id=7) --keine HZB-Leistungen
+ and (E.updated_at > '${exa_updated_at}' OR (E.updated_at IS NULL AND '${exa_updated_at}' = '1900-01-01'))
+ and (to_number('' || E.term_year || T.termnumber,'99999') ) >= $start_pruef_sem
+ ;
+
+update tmp_lab
+set examrelation_id=default_examrelation_id
+where examrelation_id is null;
+
+update tmp_lab set examrelation_k_workstatus_id=R.k_workstatus_id,
+examrelation_malus=R.malus,
+examrelation_bonus=R.bonus,
+examrelation_parent_examplan_id=R.parent_examplan_id
+from examrelation R
+where R.id=tmp_lab.examrelation_id;
+
+update tmp_lab set type_of_grading=gt.type_of_grading
+from exampath exp, unitrelation unr, grading_type gt
+where
+ exp.examrelation_id = tmp_lab.examrelation_id
+ and exp.unitrelation_id = unr.id
+ and unr.grading_type_id = gt.id;
+
+update tmp_lab set official_statistics = (select official_statistics from unit U where U.id = tmp_lab.unit_id)
+;
+update tmp_lab set official_statistics = 3 where exists (select unit_id from examination X where X.unit_id = tmp_lab.unit_id and k_examination_type_id in (select id from k_examination_type where hiskey_id =99))
+;
+update tmp_lab set grade=(select R.grade
+from examresult R
+where R.examrelation_id=tmp_lab.examrelation_id);
+
+--Studienverlauf ermitteln
+update tmp_lab set degree_program_progress_id=DP.id,
+degree_program_progress_studynumber =DP.studynumber,
+degree_program_progress_subjectnumber =DP.subjectnumber,
+degree_program_progress_studysemester =DP.studysemester,
+degree_program_id=D.id,
+course_of_study_id=C.id,
+studysemester_acknowledgement_id=DP.studysemester_acknowledgement_id,
+type_of_doctorate_id=D.k_type_of_doctorate_id
+from
+degree_program D,
+degree_program_progress DP ,
+period P,
+unit_studies US,
+tmp_course_of_study C
+where D.id=DP.degree_program_id
+and P.id=DP.period_id
+and C.lid=US.course_of_study_lid
+and DP.course_of_study_id=C.id
+and (tmp_lab.date_of_work between C.valid_from and C.valid_to
+ or tmp_lab.date_of_work is null
+ or C.is_historized=0
+ or (C.valid_from is null and tmp_lab.date_of_work <= C.valid_to)
+ or (C.valid_to is null and tmp_lab.date_of_work >= C.valid_from)
+ )
+and tmp_lab.unit_id=US.unit_id
+and tmp_lab.person_id=D.person_id
+and tmp_lab.term_type_id=P.term_type_id
+and tmp_lab.term_year=P.term_year
+;
+
+-- Sonderbehandlung Umrechnung Punkte bei Staatsexamen Jura in Noten
+update tmp_lab set grade =
+ case
+ when grade between 14 and 18 then 1
+ when grade between 11.5 and 13.99 then 2
+ when grade between 9 and 11.49 then 7
+ when grade between 6.5 and 8.99 then 3
+ when grade between 4 and 6.49 then 4
+ when grade between 0 and 3.99 then 5
+ else
+ grade
+ end
+where course_of_study_id in
+ (select cos.id
+ from course_of_study cos, subject s, degree d
+ where cos.subject_lid = s.lid and cos.degree_lid = d.lid
+ and coalesce(d.astat_bund, d.astat_land) in ('08','09') -- Staatsexamen
+ and coalesce(s.astat_bund, s.astat_land) = '0135' -- Jura (Rechtswissenschaft)
+ )
+ and type_of_grading is null or type_of_grading = 1 -- unbekannt oder Punkte
+ ;
+
+update tmp_lab set type_of_doctorate_astat=(select to_number(D.astat,'99999')
+from k_type_of_doctorate D
+where D.id=tmp_lab.type_of_doctorate_id)
+where type_of_doctorate_id is not null;
+--Anerkennung
+update tmp_lab set studysemester_acknowledgement_semester_overall =S.semester_overall,
+studysemester_acknowledgement_former_degree_program =S.former_degree_program,
+studysemester_acknowledgement_practice_semester =S.practice_semester,
+studysemester_acknowledgement_semester_abroad =S.semester_abroad
+from studysemester_acknowledgement S
+where S.id=tmp_lab.studysemester_acknowledgement_id
+;
+
+update tmp_lab set panerk = 'J'
+where examplan_id in
+(select examplan_id from accreditation);
+
+create index i_tl1 on tmp_lab(student_id);
+
+
+" "txt" "$DBDELIMITER" "false" "" >>$ERR 2>&1
+
+fi
+
+fi
+
+if [ "$SX_CLIENT" = "dbaccess" ]
+then
+echo "Unload with dbaccess" >>$ERR 2>&1
+
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+
+DROP TABLE IF EXISTS tmp_lab;
+create table tmp_lab(student_id integer,
+mtknr_ldsg integer,
+examplan_id integer,
+date_of_work date,
+term_year integer,
+termnumber integer,
+term_type_id integer,
+term_segment integer,
+default_examrelation_id integer,
+unit_id integer,
+examrelation_id integer,
+k_remark_on_exam_id integer,
+k_examform_id integer,
+cancelation smallint,
+person_id integer,
+official_statistics integer,
+grade decimal(9,5),
+degree_program_id integer,
+type_of_doctorate_id integer,
+type_of_doctorate_astat integer,
+degree_program_progress_id integer,
+degree_program_progress_studynumber integer,
+degree_program_progress_subjectnumber integer,
+degree_program_progress_studysemester integer,
+studysemester_acknowledgement_id integer,
+studysemester_acknowledgement_semester_overall decimal(19,6) ,
+studysemester_acknowledgement_former_degree_program decimal(19,6) ,
+studysemester_acknowledgement_practice_semester decimal(19,6) ,
+studysemester_acknowledgement_semester_abroad decimal(19,6) ,
+course_of_study_id integer,
+examrelation_k_workstatus_id integer,
+examrelation_malus decimal(9,5),
+examrelation_bonus decimal(9,5),
+examrelation_parent_examplan_id integer,
+panerk char(10),
+type_of_grading smallint
+);
+
+insert into tmp_lab(student_id,
+mtknr_ldsg,
+examplan_id,
+date_of_work,
+term_year,
+termnumber,
+term_type_id,
+term_segment,
+default_examrelation_id ,
+unit_id,
+k_remark_on_exam_id,
+k_examform_id,
+cancelation,
+person_id
+)
+select S.id,
+O.mtknr_ldsg,
+E.id as examplan_id,
+E.date_of_work,
+E.term_year,
+T.termnumber,
+T.id,
+E.term_segment,
+E.default_examrelation_id ,
+E.unit_id,
+E.k_remark_on_exam_id,
+E.k_examform_id,
+E.cancelation,
+S.person_id
+FROM superx_sos O, student S,
+examplan E,term_type T,unit U
+where S.person_id=E.person_id
+ and S.id=O.id
+ and T.id=E.term_type_id
+ and U.id=E.unit_id
+ and (U.uniquename != 'AP-EXT' or U.uniquename is null) --ext.Pruefungnen ausschliessen
+ and 0=(select count(*) from k_elementtype K where K.id=U.k_elementtype_id and K.hiskey_id=7) --keine HZB-Leistungen
+ and (E.updated_at > '${exa_updated_at}' OR (E.updated_at IS NULL AND '${exa_updated_at}' = '1900-01-01'))
+ and (to_number('' || E.term_year || T.termnumber,'99999') ) >= $start_pruef_sem
+ ;
+
+update tmp_lab
+set examrelation_id=default_examrelation_id
+where examrelation_id is null;
+
+update tmp_lab set examrelation_k_workstatus_id=R.k_workstatus_id,
+examrelation_malus=R.malus,
+examrelation_bonus=R.bonus,
+examrelation_parent_examplan_id=R.parent_examplan_id
+from examrelation R
+where R.id=tmp_lab.examrelation_id;
+
+update tmp_lab set type_of_grading=gt.type_of_grading
+from exampath exp, unitrelation unr, grading_type gt
+where
+ exp.examrelation_id = tmp_lab.examrelation_id
+ and exp.unitrelation_id = unr.id
+ and unr.grading_type_id = gt.id;
+
+update tmp_lab set official_statistics = (select official_statistics from unit U where U.id = tmp_lab.unit_id)
+;
+update tmp_lab set official_statistics = 3 where exists (select unit_id from examination X where X.unit_id = tmp_lab.unit_id and k_examination_type_id in (select id from k_examination_type where hiskey_id =99))
+;
+update tmp_lab set grade=(select R.grade
+from examresult R
+where R.examrelation_id=tmp_lab.examrelation_id);
+
+--Studienverlauf ermitteln
+update tmp_lab set degree_program_progress_id=DP.id,
+degree_program_progress_studynumber =DP.studynumber,
+degree_program_progress_subjectnumber =DP.subjectnumber,
+degree_program_progress_studysemester =DP.studysemester,
+degree_program_id=D.id,
+course_of_study_id=C.id,
+studysemester_acknowledgement_id=DP.studysemester_acknowledgement_id,
+type_of_doctorate_id=D.k_type_of_doctorate_id
+from
+degree_program D,
+degree_program_progress DP ,
+period P,
+unit_studies US,
+tmp_course_of_study C
+where D.id=DP.degree_program_id
+and P.id=DP.period_id
+and C.lid=US.course_of_study_lid
+and DP.course_of_study_id=C.id
+and (tmp_lab.date_of_work between C.valid_from and C.valid_to
+ or tmp_lab.date_of_work is null
+ or C.is_historized=0
+ or (C.valid_from is null and tmp_lab.date_of_work <= C.valid_to)
+ or (C.valid_to is null and tmp_lab.date_of_work >= C.valid_from)
+ )
+and tmp_lab.unit_id=US.unit_id
+and tmp_lab.person_id=D.person_id
+and tmp_lab.term_type_id=P.term_type_id
+and tmp_lab.term_year=P.term_year
+;
+
+-- Sonderbehandlung Umrechnung Punkte bei Staatsexamen Jura in Noten
+update tmp_lab set grade =
+ case
+ when grade between 14 and 18 then 1
+ when grade between 11.5 and 13.99 then 2
+ when grade between 9 and 11.49 then 7
+ when grade between 6.5 and 8.99 then 3
+ when grade between 4 and 6.49 then 4
+ when grade between 0 and 3.99 then 5
+ else
+ grade
+ end
+where course_of_study_id in
+ (select cos.id
+ from course_of_study cos, subject s, degree d
+ where cos.subject_lid = s.lid and cos.degree_lid = d.lid
+ and coalesce(d.astat_bund, d.astat_land) in ('08','09') -- Staatsexamen
+ and coalesce(s.astat_bund, s.astat_land) = '0135' -- Jura (Rechtswissenschaft)
+ )
+ and type_of_grading is null or type_of_grading = 1 -- unbekannt oder Punkte
+ ;
+
+update tmp_lab set type_of_doctorate_astat=(select to_number(D.astat,'99999')
+from k_type_of_doctorate D
+where D.id=tmp_lab.type_of_doctorate_id)
+where type_of_doctorate_id is not null;
+--Anerkennung
+update tmp_lab set studysemester_acknowledgement_semester_overall =S.semester_overall,
+studysemester_acknowledgement_former_degree_program =S.former_degree_program,
+studysemester_acknowledgement_practice_semester =S.practice_semester,
+studysemester_acknowledgement_semester_abroad =S.semester_abroad
+from studysemester_acknowledgement S
+where S.id=tmp_lab.studysemester_acknowledgement_id
+;
+
+update tmp_lab set panerk = 'J'
+where examplan_id in
+(select examplan_id from accreditation);
+
+create index i_tl1 on tmp_lab(student_id);
+
+
+--Ende
+END_preparation_sos_pruefungen
+fi
+
+fi
+
+#
+#Unload-Job sos_pord_to_stg
+#
+echo "--------------------------------------------------------------" >>$ERR
+echo "Unload-Job: sos_pord_to_stg" >>$ERR
+
+
+if [ "$SX_CLIENT" = "psql" ]
+then
+echo "Unload with jdbc for Postgres" >>$ERR 2>&1
+
+
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+SELECT distinct
+ pord.stg,
+ pord.vert,
+ pord.abschl,
+ pord.kzfa,
+ null::char(1),--tid_stg,
+ null::char(1),--sto,
+ pord.pversion,
+ pord.schwp,
+ pord.pnr ,
+ pord.pordnr,
+ pord.pdtxt,
+ pord.pnr,
+ pord.modulart
+FROM pord
+;
+
+" "txt" "$DBDELIMITER" "false" "unl/sos_pord_to_stg.unl" >>$ERR 2>&1
+
+fi
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+
+ SELECT distinct
+ C.subject_id,--stg,
+ C.major_field_of_study_id, --vert,
+ C.degree_id,--abschl,
+ C.k_subject_indicator_id,--kzfa,
+ null::char(1),--tid_stg,
+ null::char(1),--sto,
+ C.k_examinationversion_id,--pversion,
+ C.course_specialization_id,--schwp,
+ U.official_statistics ,
+ U.id,
+ substring(U.defaulttext from 1 for 255),
+ U.elementnr,
+ U.k_elementtype_id
+ FROM unit_studies US,
+ tmp_course_of_study C,
+ unit U
+ WHERE U.id=US.unit_id
+ and C.lid=US.course_of_study_lid
+
+;
+
+
+" "txt" "$DBDELIMITER" "false" "unl/sos_pord_to_stg.unl" >>$ERR 2>&1
+
+fi
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+select * from k_stg where 1=0;
+
+" "txt" "$DBDELIMITER" "false" "unl/sos_pord_to_stg.unl" >>$ERR 2>&1
+
+fi
+
+fi
+
+if [ "$SX_CLIENT" = "dbaccess" ]
+then
+echo "Unload with dbaccess" >>$ERR 2>&1
+
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/sos_pord_to_stg.unl"
+
+
+SELECT distinct
+ pord.stg,
+ pord.vert,
+ pord.abschl,
+ pord.kzfa,
+ null::char(1),--tid_stg,
+ null::char(1),--sto,
+ pord.pversion,
+ pord.schwp,
+ pord.pnr ,
+ pord.pordnr,
+ pord.pdtxt,
+ pord.pnr,
+ pord.modulart
+FROM pord
+;
+
+--Ende
+END_sos_pord_to_stg
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/sos_pord_to_stg.unl"
+
+
+select * from k_stg where 1=0;
+
+--Ende
+END_sos_pord_to_stg
+fi
+
+fi
+
+#
+#Unload-Job sos_pruefungenext
+#
+echo "--------------------------------------------------------------" >>$ERR
+echo "Unload-Job: sos_pruefungenext" >>$ERR
+
+
+if [ "$SX_CLIENT" = "psql" ]
+then
+echo "Unload with jdbc for Postgres" >>$ERR 2>&1
+
+
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+-- Externe Abschlussprüfungen
+SELECT S.mtknr_ldsg AS matrikel_nr,
+null::integer AS studentexternal_id,
+CASE WHEN E.stgnr ~ '^[0-9]*$' THEN to_number(substring(E.stgnr from 1 for 1),'99')
+ELSE NULL::int END AS studiengang_nr,
+CASE WHEN E.stgnr ~ '^[0-9]*$' THEN to_number(substring(E.stgnr from 2 for 1),'9')
+ELSE NULL::int END AS fach_nr,
+E.abschl AS ang_abschl,
+E.stgsem AS fachsem_zahl,
+E.semester AS p_sem,
+extract(day from E.lzabdat)::varchar(2) || '.' || extract(month from E.lzabdat)::varchar(2) || '.' || extract(year from E.lzabdat)::varchar(4) AS d_abg_pruefung,
+extract(month from E.lzabdat)::integer AS p_monat,
+extract(year from E.lzabdat)::integer AS p_jahr,
+E.stg AS fach,
+CASE WHEN E.pnote ~ '^[0-9]*$' THEN
+substring(replace(replace(E.pnote,',',''),'.','') from 1 for 1) || '.' || substring(replace(replace(E.pnote,',',''),'.','') from 2 for 2)
+ELSE NULL END,
+E.pstatus,
+E.stufrm as p_art,
+E.hskfzkz,
+E.hskfz,
+K.astat AS hs,
+E.hsart,
+null::char(1), -- country astat wird in trans_sos_pruefungenext.sql ermittelt
+null::int as examplan_id
+from stgext E, superx_sos S, sos O left outer join k_ikfzha K
+on (K.ikfzha=trim(O.erhskfz) || trim(O.erhsart))
+WHERE E.mtknr = S.mtknr
+and E.mtknr=O.mtknr
+and E.extart in ('AP')
+;
+
+" "txt" "$DBDELIMITER" "false" "unl/sos_pruefungenext.unl" >>$ERR 2>&1
+
+fi
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+-- Externe Abschlussprüfungen
+SELECT SS.mtknr_ldsg AS matrikel_nr
+,SE.id AS studentexternal_id
+--, 'AP' AS extart -- Abschlussprüfungen
+,DP.studynumber AS studiengang_nr
+,DP.subjectnumber AS fach_nr
+,DE.astat_land AS ang_abschl
+,DP.number_of_studysemester::INT AS fachsem_zahl
+, '' || EP.term_year || TT.termnumber AS p_sem
+,EP.date_of_work AS d_abg_pruefung
+,EXTRACT(MONTH FROM EP.date_of_work)::int AS p_monat
+,EXTRACT(YEAR FROM EP.date_of_work)::int AS p_jahr
+,SU.astat_land AS fach
+,EI.foreign_grade AS p_note
+,KWS.id AS p_status
+--,KEF.uniquename AS p_art
+, D.k_form_of_studies_id as p_art
+, CASE WHEN C.uniquename = 'D' THEN 'I' ELSE 'A' END AS hskfzkz
+, CASE WHEN C.uniquename = 'D' THEN UNI.vehicle_registration_plate ELSE C.uniquename END AS hskfz
+,UNI.astat AS hs
+,UNI.universitytype AS hsart
+,C.astat as country_astat
+,EP.id as examplan_id
+FROM person P
+JOIN student S ON S.person_id = P.id AND S.registrationnumber IS NOT NULL
+JOIN superx_sos SS on SS.id=S.id
+JOIN examplan EP ON EP.person_id = P.id
+JOIN unit U ON U.id = EP.unit_id
+JOIN examimport EI ON EP.id = EI.examplan_id
+JOIN degree_program_before D ON D.examimport_id = EI.id
+JOIN studentexternal SE ON SE.id = D.studentexternal_id
+JOIN degree_program_progress_before DP ON DP.degree_program_before_id = D.id
+JOIN degree DE ON DE.lid = D.degree_lid AND now() BETWEEN DE.valid_from AND DE.valid_to
+JOIN examrelation ER ON EP.default_examrelation_id = ER.id
+JOIN subject SU ON SU.lid = DP.subject_lid AND now() BETWEEN SU.valid_from AND SU.valid_to
+LEFT JOIN term_type TT ON EP.term_type_id = TT.id
+--left join university UNI on EI.university_lid = UNI.lid and now() between UNI.valid_from and UNI.valid_to
+LEFT JOIN university UNI ON SE.university_lid = UNI.lid AND now() BETWEEN UNI.valid_from AND UNI.valid_to
+LEFT JOIN country C ON C.lid = SE.country_lid
+LEFT JOIN k_workstatus KWS ON KWS.id = ER.k_workstatus_id
+LEFT JOIN k_examform KEF ON KEF.id = EP.k_examform_id
+WHERE U.uniquename = 'AP-EXT'
+ORDER BY matrikel_nr,studiengang_nr,fach_nr
+;
+
+" "txt" "$DBDELIMITER" "false" "unl/sos_pruefungenext.unl" >>$ERR 2>&1
+
+fi
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+SELECT S.mtknr_ldsg AS matrikel_nr,
+null AS studentexternal_id,
+substr(E.stgnr,1,1),
+substr(E.stgnr,length(E.stgnr),1),
+E.abschl AS ang_abschl,
+E.stgsem AS fachsem_zahl,
+E.semester AS p_sem,
+'' AS d_abg_pruefung,
+'' AS p_monat,
+'' AS p_jahr,
+E.stg AS fach,
+'' as p_note,
+'' as p_status,
+E.stufrm ,--p_art
+E.hskfzkz,
+E.hskfz,
+ext_hochschule AS hs,
+E.hsart,
+'', -- country astat wird in trans_sos_pruefungenext.sql ermittelt
+null as examplan_id
+from stgext E, superx_sos S, sos O
+WHERE E.mtknr = S.mtknr
+and E.mtknr=O.mtknr
+and E.extart in ('AP')
+;
+
+" "txt" "$DBDELIMITER" "false" "unl/sos_pruefungenext.unl" >>$ERR 2>&1
+
+fi
+
+fi
+
+if [ "$SX_CLIENT" = "dbaccess" ]
+then
+echo "Unload with dbaccess" >>$ERR 2>&1
+
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/sos_pruefungenext.unl"
+
+
+
+SELECT S.mtknr_ldsg AS matrikel_nr,
+null::integer AS studentexternal_id,
+substring(E.stgnr from 1 for 1) AS studiengang_nr,
+substring(E.stgnr from 2 for 1) AS fach_nr,
+E.abschl AS ang_abschl,
+E.stgsem AS fachsem_zahl,
+E.semester AS p_sem,
+E.lzabdat AS d_abg_pruefung,
+month(E.lzabdat) AS p_monat,
+year(E.lzabdat) AS p_jahr,
+E.stg AS fach,
+CASE WHEN E.pnote MATCHES '[0-9][0-9][0-9]' THEN
+substring(replace(replace(E.pnote,',',''),'.','') from 1 for 1) || '.' || substring(replace(replace(E.pnote,',',''),'.','') from 2 for 2)
+ELSE NULL::char(1) END,
+E.pstatus,
+E.stufrm as p_art,
+E.hskfzkz,
+E.hskfz,
+K.astat AS hs,
+E.hsart,
+null::char(1), -- country astat wird in trans_sos_pruefungenext.sql ermittelt
+null::int as examplan_id
+from stgext E, superx_sos S, sos O left outer join k_ikfzha K
+on (K.ikfzha=(trim(O.erhskfz) || trim(O.erhsart)))
+WHERE E.mtknr = S.mtknr
+and E.mtknr=O.mtknr
+and E.extart in ('AP') -- Externe Abschlussprüfungen
+;
+
+--Ende
+END_sos_pruefungenext
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/sos_pruefungenext.unl"
+
+
+-- Externe Abschlussprüfungen
+SELECT SS.mtknr_ldsg AS matrikel_nr
+,SE.id AS studentexternal_id
+--, 'AP' AS extart -- Abschlussprüfungen
+,DP.studynumber AS studiengang_nr
+,DP.subjectnumber AS fach_nr
+,DE.astat_land AS ang_abschl
+,DP.number_of_studysemester::INT AS fachsem_zahl
+, '' || EP.term_year || TT.termnumber AS p_sem
+,EP.date_of_work AS d_abg_pruefung
+,EXTRACT(MONTH FROM EP.date_of_work)::int AS p_monat
+,EXTRACT(YEAR FROM EP.date_of_work)::int AS p_jahr
+,SU.astat_land AS fach
+,EI.foreign_grade AS p_note
+,KWS.id AS p_status
+--,KEF.uniquename AS p_art
+, D.k_form_of_studies_id as p_art
+, CASE WHEN C.uniquename = 'D' THEN 'I' ELSE 'A' END AS hskfzkz
+, CASE WHEN C.uniquename = 'D' THEN UNI.vehicle_registration_plate ELSE C.uniquename END AS hskfz
+,UNI.astat AS hs
+,UNI.universitytype AS hsart
+,C.astat as country_astat
+,EP.id as examplan_id
+FROM person P
+JOIN student S ON S.person_id = P.id AND S.registrationnumber IS NOT NULL
+JOIN superx_sos SS on SS.id=S.id
+JOIN examplan EP ON EP.person_id = P.id
+JOIN unit U ON U.id = EP.unit_id
+JOIN examimport EI ON EP.id = EI.examplan_id
+JOIN degree_program_before D ON D.examimport_id = EI.id
+JOIN studentexternal SE ON SE.id = D.studentexternal_id
+JOIN degree_program_progress_before DP ON DP.degree_program_before_id = D.id
+JOIN degree DE ON DE.lid = D.degree_lid AND now() BETWEEN DE.valid_from AND DE.valid_to
+JOIN examrelation ER ON EP.default_examrelation_id = ER.id
+JOIN subject SU ON SU.lid = DP.subject_lid AND now() BETWEEN SU.valid_from AND SU.valid_to
+LEFT JOIN term_type TT ON EP.term_type_id = TT.id
+--left join university UNI on EI.university_lid = UNI.lid and now() between UNI.valid_from and UNI.valid_to
+LEFT JOIN university UNI ON SE.university_lid = UNI.lid AND now() BETWEEN UNI.valid_from AND UNI.valid_to
+LEFT JOIN country C ON C.lid = SE.country_lid
+LEFT JOIN k_workstatus KWS ON KWS.id = ER.k_workstatus_id
+LEFT JOIN k_examform KEF ON KEF.id = EP.k_examform_id
+WHERE U.uniquename = 'AP-EXT'
+ORDER BY matrikel_nr,studiengang_nr,fach_nr
+;
+
+--Ende
+END_sos_pruefungenext
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/sos_pruefungenext.unl"
+
+
+SELECT S.mtknr_ldsg AS matrikel_nr,
+null AS studentexternal_id,
+substr(E.stgnr,1,1),
+substr(E.stgnr,length(E.stgnr),1),
+E.abschl AS ang_abschl,
+E.stgsem AS fachsem_zahl,
+E.semester AS p_sem,
+'' AS d_abg_pruefung,
+'' AS p_monat,
+'' AS p_jahr,
+E.stg AS fach,
+'' as p_note,
+'' as p_status,
+E.stufrm ,--p_art
+E.hskfzkz,
+E.hskfz,
+ext_hochschule AS hs,
+E.hsart,
+'', -- country astat wird in trans_sos_pruefungenext.sql ermittelt
+null as examplan_id
+from stgext E, superx_sos S, sos O
+WHERE E.mtknr = S.mtknr
+and E.mtknr=O.mtknr
+and E.extart in ('AP')
+;
+
+--Ende
+END_sos_pruefungenext
+fi
+
+fi
+
+#
+#Unload-Job sos_pruefungen
+#
+echo "--------------------------------------------------------------" >>$ERR
+echo "Unload-Job: sos_pruefungen" >>$ERR
+
+
+if [ "$SX_CLIENT" = "psql" ]
+then
+echo "Unload with jdbc for Postgres" >>$ERR 2>&1
+
+
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+SELECT
+S.mtknr_ldsg,
+substr(stgnr,1,1),
+substr(stgnr,length(stgnr),1),
+abschl,
+psem,
+extract(day from pdatum)::varchar(2) || '.' || extract(month from pdatum)::varchar(2) || '.' || extract(year from pdatum)::varchar(4),
+stg,
+vert,
+schwp,
+kzfa,
+pnote,
+vken1,
+null::char(7), --pruefungsamt_nr
+lab.pnr,
+pversion,
+pstatus,
+stgsem ,
+part,
+labnr,
+pversuch,
+ppruef1,
+ppruef2,
+malus,
+bonus,
+pordnr,
+psws,
+null::char(1), --relation_id nur bei HIS1
+pvermerk,
+prueck,
+ptermin, --term_segment
+pform,
+null::char(1), --anger. fs insg.
+null::char(1), --aus anderem stg an einer deutschen hs
+null::char(1), --berufspraktische taetigkeit
+null::char(1), --aus auslandsstudium
+null::char(1), -- amtl. Schl. Art der Promotion
+panerk,
+pstatkennz,
+ppunkte
+
+FROM lab , superx_sos S
+WHERE lab.mtknr = S.mtknr
+$LAB_FILTER
+AND (lab.pstatus is null or lab.pstatus != 'SO')
+AND lab.psem >= $start_pruef_sem
+and
+((lab.pnr in ($POS_PNR) or '"0"'='"$POS_PNR"')
+or lab.pnr in
+ (
+select distinct pnr from tmp_hskonst
+)
+)
+;
+
+
+" "txt" "$DBDELIMITER" "false" "unl/sos_pruefungen.unl" >>$ERR 2>&1
+
+fi
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+
+ SELECT distinct
+ L.mtknr_ldsg,
+degree_program_progress_studynumber,--substr(stgnr,1,1),
+degree_program_progress_subjectnumber,--substr(stgnr,length(stgnr),1),
+'' || C.degree_id,--abschl,
+'' || L.term_year || L.termnumber,--psem,
+extract(day from L.date_of_work)::varchar(2) || '.' || extract(month from L.date_of_work)::varchar(2) || '.' || extract(year from L.date_of_work)::varchar(4),
+'' || C.subject_id,--stg,
+'' || C.major_field_of_study_id, --vert,
+'' || C.course_specialization_id,--schwp,
+'' || C.k_subject_indicator_id,--kzfa,
+substring('' || L.grade from 1 for 1) || coalesce(substring('' || L.grade from 3 for 2),'') ,--pnote, TODO: examvaluation.grade
+null::char(1),--vken1,
+c.examination_office_no, --pruefungsamt
+L.official_statistics, --lab.pnr,
+'' || C.k_examinationversion_id,--pversion,
+L.examrelation_k_workstatus_id,--pstatus,
+L.degree_program_progress_studysemester,--stgsem , provisorisch s. Ticket https://hiszilla.his.de/hiszilla/show_bug.cgi?id=88788#c4
+(select X.k_examination_type_id from examination X where X.unit_id=L.unit_id),--part,
+L.examplan_id,--labnr,
+null::char(1),--pversuch,
+null::char(1),--ppruef1,
+null::char(1),--ppruef2,
+L.examrelation_malus,
+L.examrelation_bonus,
+L.unit_id,--pordnr,
+null::char(1),--psws
+L.examrelation_parent_examplan_id,
+L.k_remark_on_exam_id,
+L.cancelation ,
+L.term_segment,--ptermin
+L.k_examform_id, --pform
+trunc(L.studysemester_acknowledgement_semester_overall)::integer, --anger. fs insg.
+trunc(L.studysemester_acknowledgement_former_degree_program)::integer, --aus anderem stg an einer deutschen hs
+trunc(L.studysemester_acknowledgement_practice_semester)::integer, -- berufspraktische taetigkeit
+trunc(L.studysemester_acknowledgement_semester_abroad)::integer, -- aus Auslandsstudium
+L.type_of_doctorate_astat, -- amtl. Schl. Art der Promotion
+L.panerk,
+null::integer, --pstatkennz
+null::integer --ppunkte
+FROM tmp_lab L left outer join tmp_course_of_study C
+on (C.id=L.course_of_study_id)
+;
+
+
+" "txt" "$DBDELIMITER" "false" "unl/sos_pruefungen.unl" >>$ERR 2>&1
+
+fi
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+SELECT distinct
+S.mtknr_ldsg,
+substr(stgnr,1,1),
+substr(stgnr,length(stgnr),1),
+abschl,
+psem,
+pdatum,
+stg,
+'' ,--vert,
+'' ,--schwp,
+'' ,--kzfa,
+pnote,
+'' ,--vken1,
+'',--pruefungsamt_nr
+lab.pnr,
+'' ,--pversion,
+pstatus,
+stgsem ,
+'' ,--part,
+labnr,
+pversuch,
+ppruef1,
+ppruef2,
+malus,
+bonus,
+'',--pordnr bei CO ein Bigint, der Probleme macht
+'' ,--psws,
+'', --relation_id nur bei HIS1
+'' ,--pvermerk,
+case when prueck ='N' then '0'
+when prueck='J' then '1'
+else '' end as prueck,
+'' ,--ptermin, --term_segment
+'', --pform,
+'', --anger. fs insg.
+'', --aus anderem stg an einer deutschen hs
+'', --berufspraktische taetigkeit
+'', --aus auslandsstudium
+'' ,-- amtl. Schl. Art der Promotion
+'', --panerk
+'', --pstatkennz
+'' --ppunkte
+FROM lab , superx_sos S
+WHERE lab.mtknr = S.mtknr
+AND lab.psem >= $start_pruef_sem
+;
+
+
+" "txt" "$DBDELIMITER" "false" "unl/sos_pruefungen.unl" >>$ERR 2>&1
+
+fi
+
+fi
+
+if [ "$SX_CLIENT" = "dbaccess" ]
+then
+echo "Unload with dbaccess" >>$ERR 2>&1
+
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/sos_pruefungen.unl"
+
+
+SELECT
+superx_sos.mtknr_ldsg, {matrikel_nr}
+stgnr[1,1], {studiengang_nr}
+stgnr[2,2], {fach_nr}
+abschl, {ch35_ang_abschluss}
+psem, {sem_der_pruefung}
+pdatum, {d_abg_pruefung}
+stg, {ch30_fach}
+vert, {ch39_vertief}
+schwp, {schwerpunkt}
+kzfa, {kzfa}
+pnote, {haupt_pruef_note}
+vken1, {lief_amtl_statist}
+null::char(7), --pruefungsamt_nr
+lab.pnr, {pnr}
+pversion, {pversion}
+pstatus,{pstatus ist char(2)}
+stgsem {fach_sem_zahl} ,
+part,
+labnr,
+pversuch,
+ppruef1,
+ppruef2,
+malus,
+bonus,
+pordnr,
+psws,
+null::char(1), --relation_id nur bei HIS1
+pvermerk,
+prueck,
+ptermin,
+pform,
+null::char(1), --anger. fs insg.
+null::char(1), --aus anderem stg an einer deutschen hs
+null::char(1), --berufspraktische taetigkeit
+null::char(1), --aus auslandsstudium
+null::char(1), -- amtl. Schl. Art der Promotion
+panerk,
+pstatkennz,
+ppunkte
+FROM lab
+, superx_sos
+WHERE lab.mtknr = superx_sos.mtknr
+AND (lab.pstatus is null or lab.pstatus != "SO")
+$LAB_FILTER
+AND lab.prueck = 0 { ab 8.99 }
+AND lab.psem >= $start_pruef_sem {ab hier werden Daten ausgewertet}
+and
+((lab.pnr in ($POS_PNR) or "0"="$POS_PNR")
+or lab.pnr in
+ (
+select distinct pnr from tmp_hskonst
+)
+)
+;
+
+
+--Ende
+END_sos_pruefungen
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/sos_pruefungen.unl"
+
+
+
+ SELECT distinct
+ L.mtknr_ldsg,
+degree_program_progress_studynumber,--substr(stgnr,1,1),
+degree_program_progress_subjectnumber,--substr(stgnr,length(stgnr),1),
+'' || C.degree_id,--abschl,
+'' || L.term_year || L.termnumber,--psem,
+extract(day from L.date_of_work)::varchar(2) || '.' || extract(month from L.date_of_work)::varchar(2) || '.' || extract(year from L.date_of_work)::varchar(4),
+'' || C.subject_id,--stg,
+'' || C.major_field_of_study_id, --vert,
+'' || C.course_specialization_id,--schwp,
+'' || C.k_subject_indicator_id,--kzfa,
+substring('' || L.grade from 1 for 1) || coalesce(substring('' || L.grade from 3 for 2),'') ,--pnote, TODO: examvaluation.grade
+null::char(1),--vken1,
+c.examination_office_no, --pruefungsamt
+L.official_statistics, --lab.pnr,
+'' || C.k_examinationversion_id,--pversion,
+L.examrelation_k_workstatus_id,--pstatus,
+L.degree_program_progress_studysemester,--stgsem , provisorisch s. Ticket https://hiszilla.his.de/hiszilla/show_bug.cgi?id=88788#c4
+(select X.k_examination_type_id from examination X where X.unit_id=L.unit_id),--part,
+L.examplan_id,--labnr,
+null::char(1),--pversuch,
+null::char(1),--ppruef1,
+null::char(1),--ppruef2,
+L.examrelation_malus,
+L.examrelation_bonus,
+L.unit_id,--pordnr,
+null::char(1),--psws
+L.examrelation_parent_examplan_id,
+L.k_remark_on_exam_id,
+L.cancelation ,
+L.term_segment,--ptermin
+L.k_examform_id, --pform
+trunc(L.studysemester_acknowledgement_semester_overall)::integer, --anger. fs insg.
+trunc(L.studysemester_acknowledgement_former_degree_program)::integer, --aus anderem stg an einer deutschen hs
+trunc(L.studysemester_acknowledgement_practice_semester)::integer, -- berufspraktische taetigkeit
+trunc(L.studysemester_acknowledgement_semester_abroad)::integer, -- aus Auslandsstudium
+L.type_of_doctorate_astat, -- amtl. Schl. Art der Promotion
+L.panerk,
+null::integer, --pstatkennz
+null::integer --ppunkte
+FROM tmp_lab L left outer join tmp_course_of_study C
+on (C.id=L.course_of_study_id)
+;
+
+
+--Ende
+END_sos_pruefungen
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/sos_pruefungen.unl"
+
+
+SELECT distinct
+S.mtknr_ldsg,
+substr(stgnr,1,1),
+substr(stgnr,length(stgnr),1),
+abschl,
+psem,
+pdatum,
+stg,
+'' ,--vert,
+'' ,--schwp,
+'' ,--kzfa,
+pnote,
+'' ,--vken1,
+'',--pruefungsamt_nr
+lab.pnr,
+'' ,--pversion,
+pstatus,
+stgsem ,
+'' ,--part,
+labnr,
+pversuch,
+ppruef1,
+ppruef2,
+malus,
+bonus,
+'',--pordnr bei CO ein Bigint, der Probleme macht
+'' ,--psws,
+'', --relation_id nur bei HIS1
+'' ,--pvermerk,
+case when prueck ='N' then '0'
+when prueck='J' then '1'
+else '' end as prueck,
+'' ,--ptermin, --term_segment
+'', --pform,
+'', --anger. fs insg.
+'', --aus anderem stg an einer deutschen hs
+'', --berufspraktische taetigkeit
+'', --aus auslandsstudium
+'' ,-- amtl. Schl. Art der Promotion
+'', --panerk
+'', --pstatkennz
+'' --ppunkte
+FROM lab , superx_sos S
+WHERE lab.mtknr = S.mtknr
+AND lab.psem >= $start_pruef_sem
+;
+
+
+--Ende
+END_sos_pruefungen
+fi
+
+fi
+
+#
+#Unload-Job sos_lab_astat_attributes
+#
+echo "--------------------------------------------------------------" >>$ERR
+echo "Unload-Job: sos_lab_astat_attributes" >>$ERR
+
+
+if [ "$SX_CLIENT" = "psql" ]
+then
+echo "Unload with jdbc for Postgres" >>$ERR 2>&1
+
+
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+
+select
+null::integer AS labnr, -- Pruefungsnummer: labnr
+null::integer AS st_abr_id, --Auslandsaufenthalte: stay_abroad.id
+null::integer AS sourcesystem, -- Quellsystem
+null::integer AS st_abr_country_astat, -- Staat des Auslandsaufenthaltes: country.astat
+null::smallint AS st_abr_month, -- Dauer Auslandsaufenthalt in Monaten: stay_abroad.number_of_month
+null::integer AS st_abr_type, -- Typ des Auslandsaufenthaltes: stay_abroad.stayabroad_type
+null::integer AS st_abr_program, -- Mobilitätsprogramm: k_mobility_program.mobility_program
+null::integer AS matrikel_nr,
+null::integer AS sem_der_pruefung,
+null::integer as d_abg_pruefung --Prüfungsdatum
+from hskonst where 1=0
+
+
+" "txt" "$DBDELIMITER" "false" "unl/sos_lab_astat_attributes.unl" >>$ERR 2>&1
+
+fi
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+
+ SELECT distinct
+
+ --zuerst vor/Hauptprüfungen mit Fach/Abschluss etc. , weil eindeutig
+L.examplan_id,
+STAB.id,
+CNT.astat, -- astat Land 1
+STAB.number_of_month, -- Monate 1
+SATY.astat, -- astat Art 1
+MOPRO.astat, -- astat Mobilitätsprogramm 1
+L.mtknr_ldsg,
+'' || L.term_year || L.termnumber,--psem,
+extract(day from L.date_of_work)::varchar(2) || '.' || extract(month from L.date_of_work)::varchar(2) || '.' || extract(year from L.date_of_work)::varchar(4)
+ FROM unit_studies US,
+ tmp_course_of_study C,
+ (degree_program_progress as DPtmp
+ left outer join studysemester_acknowledgement as SACKtmp
+ on DPtmp.studysemester_acknowledgement_id = SACKtmp.id) as DP,
+degree_program D,
+period P,
+ (tmp_lab as L
+ join stayabroad_examplan as STABEX on L.examplan_id = STABEX.examplan_id
+ join stay_abroad as STAB on STAB.id = STABEX.stay_abroad_id
+ left outer join country as CNT on CNT.lid = STAB.country_lid
+ left outer join k_stayabroad_type as SATY on SATY.id = STAB.k_stayabroad_type_id
+ left outer join k_mobility_program as MOPRO on MOPRO.id = STAB.k_mobility_program_id) ,
+ unit U ,
+ examrelation R
+ left outer join examresult N on (N.examrelation_id=R.id)
+ WHERE U.id=US.unit_id
+ and C.lid=US.course_of_study_lid
+ and L.unit_id=U.id
+ and L.examrelation_id=R.id
+ and D.id=DP.degree_program_id
+and DP.course_of_study_id=C.id
+and DP.period_id=P.id
+ and P.term_type_id=L.term_type_id
+ and P.term_year=L.term_year
+ and L.person_id=D.person_id
+--and (C.valid_from <= DP.startdate
+--or C.valid_from <= DP.enddate
+--or (DP.enddate is null and DP.startdate is null))
+and U.official_statistics in (1,2)
+AND (to_number('' || L.term_year || L.termnumber,'99999') ) >= $start_pruef_sem
+;
+
+
+" "txt" "$DBDELIMITER" "false" "unl/sos_lab_astat_attributes.unl" >>$ERR 2>&1
+
+fi
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+select
+*
+from tmp_xdummy where 1=0
+
+" "txt" "$DBDELIMITER" "false" "unl/sos_lab_astat_attributes.unl" >>$ERR 2>&1
+
+fi
+
+fi
+
+if [ "$SX_CLIENT" = "dbaccess" ]
+then
+echo "Unload with dbaccess" >>$ERR 2>&1
+
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/sos_lab_astat_attributes.unl"
+
+
+
+select
+null::integer AS labnr, -- Pruefungsnummer: labnr
+null::integer AS st_abr_id, --Auslandsaufenthalte: stay_abroad.id
+null::integer AS sourcesystem, -- Quellsystem
+null::integer AS st_abr_country_astat, -- Staat des Auslandsaufenthaltes: country.astat
+null::smallint AS st_abr_month, -- Dauer Auslandsaufenthalt in Monaten: stay_abroad.number_of_month
+null::integer AS st_abr_type, -- Typ des Auslandsaufenthaltes: stay_abroad.stayabroad_type
+null::integer AS st_abr_program, -- Mobilitätsprogramm: k_mobility_program.mobility_program
+null::integer AS matrikel_nr,
+null::integer AS sem_der_pruefung,
+null::integer as d_abg_pruefung --Prüfungsdatum
+from hskonst where 1=0
+
+
+--Ende
+END_sos_lab_astat_attributes
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/sos_lab_astat_attributes.unl"
+
+
+select
+*
+from tmp_xdummy where 1=0
+
+--Ende
+END_sos_lab_astat_attributes
+fi
+
+fi
+
+#
+#Unload-Job sos_stud_loe
+#
+echo "--------------------------------------------------------------" >>$ERR
+echo "Unload-Job: sos_stud_loe" >>$ERR
+
+
+if [ "$SX_CLIENT" = "psql" ]
+then
+echo "Unload with jdbc for Postgres" >>$ERR 2>&1
+
+
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+
+SELECT distinct mtknr_ldsg
+FROM mtknr_ldsg, pro left outer join sos on (pro.mtknr=sos.mtknr)
+WHERE pro.mtknr=mtknr_ldsg.mtknr
+and pro.datum >= date('$DATUM')
+and fktkz = 'LOE'
+and sos.mtknr is null;
+
+" "txt" "$DBDELIMITER" "false" "unl/sos_stud_loe.unl" >>$ERR 2>&1
+
+fi
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+SELECT * FROM student WHERE 1=0;
+
+" "txt" "$DBDELIMITER" "false" "unl/sos_stud_loe.unl" >>$ERR 2>&1
+
+fi
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+select * from k_stg where 1=0;
+
+" "txt" "$DBDELIMITER" "false" "unl/sos_stud_loe.unl" >>$ERR 2>&1
+
+fi
+
+fi
+
+if [ "$SX_CLIENT" = "dbaccess" ]
+then
+echo "Unload with dbaccess" >>$ERR 2>&1
+
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/sos_stud_loe.unl"
+
+
+
+SELECT distinct mtknr_ldsg
+FROM mtknr_ldsg, pro left outer join sos on (pro.mtknr=sos.mtknr)
+WHERE pro.mtknr=mtknr_ldsg.mtknr
+and pro.datum >= date('$DATUM')
+and fktkz = 'LOE'
+and sos.mtknr is null;
+
+--Ende
+END_sos_stud_loe
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/sos_stud_loe.unl"
+
+
+SELECT * FROM student WHERE 1=0;
+
+--Ende
+END_sos_stud_loe
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/sos_stud_loe.unl"
+
+
+select * from k_stg where 1=0;
+
+--Ende
+END_sos_stud_loe
+fi
+
+fi
+
+#
+#Unload-Job sos_faecher_ext
+#
+echo "--------------------------------------------------------------" >>$ERR
+echo "Unload-Job: sos_faecher_ext" >>$ERR
+
+
+if [ "$SX_CLIENT" = "psql" ]
+then
+echo "Unload with jdbc for Postgres" >>$ERR 2>&1
+
+
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+select
+S.mtknr_ldsg, E.extart, E.semester, E.hskfzkz, E.hskfz,
+K.astat, E.hsart, substring(E.stgnr from 1 for 1),
+substring(E.stgnr from 2 for 1), E.abschl,
+E.stg, E.stgsem
+,null::char(1), -- country astat wird in trans_sos_faecher_ext.sql ermittelt
+E.stufrm
+from stgext E, superx_sos S, sos O left outer join k_ikfzha K
+on (K.ikfzha=trim(O.erhskfz) || trim(O.erhsart))
+WHERE E.mtknr = O.mtknr
+and E.mtknr=S.mtknr
+and E.extart in ('ZW','VS');
+
+
+" "txt" "$DBDELIMITER" "false" "unl/sos_faecher_ext.unl" >>$ERR 2>&1
+
+fi
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+-- AP (Abschlussprüfungen extern) fehlen hier. Werden gesondert behandelt!
+SELECT SS.mtknr_ldsg AS matrikel_nr
+, CASE WHEN 0 < (
+ SELECT COUNT(1)
+ FROM student S2, person PS
+ JOIN degree_program D2 ON D2.person_id = PS.id
+ JOIN degree_program_progress DP2 ON DP2.degree_program_id = D2.id
+ JOIN period P ON P.id = DP2.period_id AND P.term_year=DP.term_year
+ JOIN term_type TT2 ON P.term_type_id = TT2.id AND TT2.termnumber=TT.termnumber
+ WHERE S2.registrationnumber = S.registrationnumber AND S2.person_id = PS.id
+) THEN 'ZW' ELSE 'VS' END AS extart -- VS = Vorsemester an anderer Hochschule ZW = Zweithochschule in diesem Semester
+, case when DP.term_year not between 1900 and 2999 then null else '' || DP.term_year || TT.termnumber end AS sem_rueck_beur_ein
+, CASE WHEN C.uniquename = 'D' THEN 'I' ELSE 'A' END AS hskfzkz
+, CASE WHEN C.uniquename = 'D' THEN U.vehicle_registration_plate ELSE C.uniquename END AS hskfz
+, U.astat AS hs
+, U.universitytype AS hsart
+,case when DP.studynumber >9 then 1 else DP.studynumber end AS studiengang_nr
+,DP.subjectnumber AS fach_nr
+,DE.astat_land AS ang_abschl
+,SU.astat_land AS fach
+,DP.number_of_studysemester::INT AS fachsem_zahl
+,C.astat AS country_astat
+,D.k_form_of_studies_id
+FROM studentexternal SE
+JOIN student S ON SE.person_id = S.person_id AND S.registrationnumber IS NOT NULL
+JOIN superx_sos SS on SS.id=S.id
+JOIN degree_program_before D ON D.studentexternal_id = SE.id
+JOIN degree_program_progress_before DP ON DP.degree_program_before_id = D.id
+JOIN subject SU ON SU.lid = DP.subject_lid AND now() BETWEEN SU.valid_from AND SU.valid_to
+JOIN degree DE ON DE.lid = D.degree_lid AND now() BETWEEN DE.valid_from AND DE.valid_to
+LEFT JOIN k_studystatus KSS ON KSS.id=DP.k_studystatus_id
+LEFT JOIN k_type_of_study KTS ON KTS.id=DP.id
+LEFT JOIN k_enrollment KEN ON KEN.id = DP.k_enrollment_id
+LEFT JOIN term_type TT ON DP.term_type_id = TT.id
+LEFT JOIN university U ON SE.university_lid = U.lid AND now() BETWEEN U.valid_from AND U.valid_to
+LEFT JOIN country C ON C.lid = SE.country_lid
+
+;
+
+" "txt" "$DBDELIMITER" "false" "unl/sos_faecher_ext.unl" >>$ERR 2>&1
+
+fi
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+select
+stgext.mtknr, extart, semester, hskfzkz, hskfz, ext_hochschule as hs, hsart, substr(stgnr,1,1),
+substr(stgnr,2,1), abschl,
+stg, stgsem,
+'', -- country astat
+stufrm
+from stgext
+where extart in ('ZW','VS') or extart is null
+
+" "txt" "$DBDELIMITER" "false" "unl/sos_faecher_ext.unl" >>$ERR 2>&1
+
+fi
+
+fi
+
+if [ "$SX_CLIENT" = "dbaccess" ]
+then
+echo "Unload with dbaccess" >>$ERR 2>&1
+
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/sos_faecher_ext.unl"
+
+
+select
+S.mtknr_ldsg, E.extart, E.semester, E.hskfzkz, E.hskfz,
+K.astat, E.hsart, substring(E.stgnr from 1 for 1),
+substring(E.stgnr from 2 for 1), E.abschl,
+E.stg, E.stgsem
+,null::char(1), -- country astat wird in trans_sos_faecher_ext.sql ermittelt
+E.stufrm
+from stgext E, superx_sos S, sos O left outer join k_ikfzha K
+on (K.ikfzha=trim(O.erhskfz) || trim(O.erhsart))
+WHERE E.mtknr = O.mtknr
+and E.mtknr=S.mtknr
+and E.extart in ('ZW','VS');
+
+
+--Ende
+END_sos_faecher_ext
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/sos_faecher_ext.unl"
+
+
+-- AP (Abschlussprüfungen extern) fehlen hier. Werden gesondert behandelt!
+SELECT SS.mtknr_ldsg AS matrikel_nr
+, CASE WHEN 0 < (
+ SELECT COUNT(1)
+ FROM student S2, person PS
+ JOIN degree_program D2 ON D2.person_id = PS.id
+ JOIN degree_program_progress DP2 ON DP2.degree_program_id = D2.id
+ JOIN period P ON P.id = DP2.period_id AND P.term_year=DP.term_year
+ JOIN term_type TT2 ON P.term_type_id = TT2.id AND TT2.termnumber=TT.termnumber
+ WHERE S2.registrationnumber = S.registrationnumber AND S2.person_id = PS.id
+) THEN 'ZW' ELSE 'VS' END AS extart -- VS = Vorsemester an anderer Hochschule ZW = Zweithochschule in diesem Semester
+, case when DP.term_year not between 1900 and 2999 then null else '' || DP.term_year || TT.termnumber end AS sem_rueck_beur_ein
+, CASE WHEN C.uniquename = 'D' THEN 'I' ELSE 'A' END AS hskfzkz
+, CASE WHEN C.uniquename = 'D' THEN U.vehicle_registration_plate ELSE C.uniquename END AS hskfz
+, U.astat AS hs
+, U.universitytype AS hsart
+,case when DP.studynumber >9 then 1 else DP.studynumber end AS studiengang_nr
+,DP.subjectnumber AS fach_nr
+,DE.astat_land AS ang_abschl
+,SU.astat_land AS fach
+,DP.number_of_studysemester::INT AS fachsem_zahl
+,C.astat AS country_astat
+,D.k_form_of_studies_id
+FROM studentexternal SE
+JOIN student S ON SE.person_id = S.person_id AND S.registrationnumber IS NOT NULL
+JOIN superx_sos SS on SS.id=S.id
+JOIN degree_program_before D ON D.studentexternal_id = SE.id
+JOIN degree_program_progress_before DP ON DP.degree_program_before_id = D.id
+JOIN subject SU ON SU.lid = DP.subject_lid AND now() BETWEEN SU.valid_from AND SU.valid_to
+JOIN degree DE ON DE.lid = D.degree_lid AND now() BETWEEN DE.valid_from AND DE.valid_to
+LEFT JOIN k_studystatus KSS ON KSS.id=DP.k_studystatus_id
+LEFT JOIN k_type_of_study KTS ON KTS.id=DP.id
+LEFT JOIN k_enrollment KEN ON KEN.id = DP.k_enrollment_id
+LEFT JOIN term_type TT ON DP.term_type_id = TT.id
+LEFT JOIN university U ON SE.university_lid = U.lid AND now() BETWEEN U.valid_from AND U.valid_to
+LEFT JOIN country C ON C.lid = SE.country_lid
+
+;
+
+--Ende
+END_sos_faecher_ext
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/sos_faecher_ext.unl"
+
+
+select
+stgext.mtknr, extart, semester, hskfzkz, hskfz, ext_hochschule as hs, hsart, substr(stgnr,1,1),
+substr(stgnr,2,1), abschl,
+stg, stgsem,
+'', -- country astat
+stufrm
+from stgext
+where extart in ('ZW','VS') or extart is null
+
+--Ende
+END_sos_faecher_ext
+fi
+
+fi
+
+#
+#Unload-Job sos_faecher_kontrolle
+#
+echo "--------------------------------------------------------------" >>$ERR
+echo "Unload-Job: sos_faecher_kontrolle" >>$ERR
+
+
+if [ "$SX_CLIENT" = "psql" ]
+then
+echo "Unload with jdbc for Postgres" >>$ERR 2>&1
+
+
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+select stg.semester,'' || round(count(*),0) from sos, stg
+where sos.mtknr = stg.mtknr
+and stg.stgnr = '11'
+AND stg.semester >= $start_stud_sem
+group by stg.semester
+order by stg.semester;
+
+
+
+" "txt" "$DBDELIMITER" "false" "unl/sos_faecher_kontrolle.unl" >>$ERR 2>&1
+
+fi
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+select '' || P.term_year || T.termnumber,'' || round(count(*),0)
+ FROM period P,
+term_type T,
+degree_program_progress DP,
+degree_program D
+WHERE T.id=P.term_type_id
+and D.id=DP.degree_program_id
+AND to_number('' || P.term_year || T.termnumber,'99999') >= $start_stud_sem
+and DP.startdate=date(P.startdate)
+and DP.enddate=date(P.enddate)
+group by 1
+;
+
+
+" "txt" "$DBDELIMITER" "false" "unl/sos_faecher_kontrolle.unl" >>$ERR 2>&1
+
+fi
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+select * from k_stg where 1=0;
+
+" "txt" "$DBDELIMITER" "false" "unl/sos_faecher_kontrolle.unl" >>$ERR 2>&1
+
+fi
+
+fi
+
+if [ "$SX_CLIENT" = "dbaccess" ]
+then
+echo "Unload with dbaccess" >>$ERR 2>&1
+
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/sos_faecher_kontrolle.unl"
+
+
+select stg.semester,"" || round(count(*),0) from sos, stg
+where sos.mtknr = stg.mtknr
+and stg.stgnr = '11'
+AND stg.semester >= $start_stud_sem
+group by stg.semester
+order by stg.semester;
+
+
+--Ende
+END_sos_faecher_kontrolle
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/sos_faecher_kontrolle.unl"
+
+
+select * from k_stg where 1=0;
+
+--Ende
+END_sos_faecher_kontrolle
+fi
+
+fi
+
+#
+#Unload-Job sos_pruefungen_kontrolle
+#
+echo "--------------------------------------------------------------" >>$ERR
+echo "Unload-Job: sos_pruefungen_kontrolle" >>$ERR
+
+
+if [ "$SX_CLIENT" = "psql" ]
+then
+echo "Unload with jdbc for Postgres" >>$ERR 2>&1
+
+
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+select 'lab',lab.psem,count(*) from lab, sos S
+WHERE lab.mtknr = S.mtknr
+$LAB_FILTER
+--AND lab.prueck = 0
+AND (S.fehlerkz not in ('F', 'V') or S.fehlerkz is null)
+AND lab.psem >= $start_pruef_sem
+and lab.pnr in (select distinct pnr from tmp_hskonst)
+group by lab.psem
+;
+
+
+
+" "txt" "$DBDELIMITER" "false" "unl/sos_pruefungen_kontrolle.unl" >>$ERR 2>&1
+
+fi
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+
+SELECT 'lab'::char(10),'' || L.term_year || L.termnumber,--psem,
+ count(*)
+FROM tmp_lab L,
+ unit U
+ where L.unit_id=U.id
+--and U.official_statistics in (1,2)
+AND (to_number('' || L.term_year || L.termnumber,'99999') ) >= $start_pruef_sem
+group by 1,2
+;
+
+
+
+" "txt" "$DBDELIMITER" "false" "unl/sos_pruefungen_kontrolle.unl" >>$ERR 2>&1
+
+fi
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+select * from k_stg where 1=0;
+
+" "txt" "$DBDELIMITER" "false" "unl/sos_pruefungen_kontrolle.unl" >>$ERR 2>&1
+
+fi
+
+fi
+
+if [ "$SX_CLIENT" = "dbaccess" ]
+then
+echo "Unload with dbaccess" >>$ERR 2>&1
+
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/sos_pruefungen_kontrolle.unl"
+
+
+select 'lab',lab.psem,"" || round(count(*),0) from lab, sos S
+WHERE lab.mtknr = S.mtknr
+AND (lab.pstatus is null or lab.pstatus != "SO")
+$LAB_FILTER
+--AND lab.prueck = 0
+AND (S.fehlerkz not in ("F", "V") or S.fehlerkz is null)
+AND lab.psem >= $start_pruef_sem
+and lab.pnr in (select distinct pnr from tmp_hskonst)
+group by 1,2
+;
+
+
+--Ende
+END_sos_pruefungen_kontrolle
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/sos_pruefungen_kontrolle.unl"
+
+
+
+SELECT 'lab'::char(10),'' || L.term_year || L.termnumber,--psem,
+ count(*)
+FROM tmp_lab L,
+ unit U
+ where L.unit_id=U.id
+--and U.official_statistics in (1,2)
+AND (to_number('' || L.term_year || L.termnumber,'99999') ) >= $start_pruef_sem
+group by 1,2
+;
+
+
+
+--Ende
+END_sos_pruefungen_kontrolle
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/sos_pruefungen_kontrolle.unl"
+
+
+select * from k_stg where 1=0;
+
+--Ende
+END_sos_pruefungen_kontrolle
+fi
+
+fi
+
+#
+#Unload-Job sos_anschri
+#
+echo "--------------------------------------------------------------" >>$ERR
+echo "Unload-Job: sos_anschri" >>$ERR
+
+
+if [ "$SX_CLIENT" = "psql" ]
+then
+echo "Unload with jdbc for Postgres" >>$ERR 2>&1
+
+
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+
+SELECT identnr,
+ superx_sos.mtknr_ldsg,
+ bewnr,
+ anschrkz,
+ kfz,
+ plz,
+ ort,
+ anzuord,
+ anwt,
+ zusaort
+FROM anschri, superx_sos
+WHERE anschri.mtknr = superx_sos.mtknr;
+
+" "txt" "$DBDELIMITER" "false" "unl/sos_anschri.unl" >>$ERR 2>&1
+
+fi
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+ SELECT * from tmp_xdummy
+where 1=0;
+
+
+" "txt" "$DBDELIMITER" "false" "unl/sos_anschri.unl" >>$ERR 2>&1
+
+fi
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+select * from k_stg where 1=0;
+
+" "txt" "$DBDELIMITER" "false" "unl/sos_anschri.unl" >>$ERR 2>&1
+
+fi
+
+fi
+
+if [ "$SX_CLIENT" = "dbaccess" ]
+then
+echo "Unload with dbaccess" >>$ERR 2>&1
+
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/sos_anschri.unl"
+
+
+SELECT identnr,
+ superx_sos.mtknr_ldsg,
+ bewnr,
+ anschrkz,
+ kfz,
+ plz,
+ ort,
+ anzuord,
+ anwt,
+ zusaort
+FROM anschri, superx_sos
+WHERE anschri.mtknr = superx_sos.mtknr;
+
+--Ende
+END_sos_anschri
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/sos_anschri.unl"
+
+
+ SELECT * from tmp_xdummy
+where 1=0;
+
+
+--Ende
+END_sos_anschri
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/sos_anschri.unl"
+
+
+select * from k_stg where 1=0;
+
+--Ende
+END_sos_anschri
+fi
+
+fi
+
+#
+#Unload-Job sos_parstg
+#
+echo "--------------------------------------------------------------" >>$ERR
+echo "Unload-Job: sos_parstg" >>$ERR
+
+
+if [ "$SX_CLIENT" = "psql" ]
+then
+echo "Unload with jdbc for Postgres" >>$ERR 2>&1
+
+
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+SELECT abschl,
+ stg,
+ vert,
+ schwp,
+ kzfa,
+ pversion,
+ psem,
+ ptermin,
+ folgesem,
+ pmaxvg,
+ pmaxvh,
+ vpfri,
+ hpfri,
+ exmmeld,
+ beumeld,
+ pmaxfrnbs,
+ pmaxfrnbvd,
+ pmaxfrbevd,
+ pmaxfrnbhd,
+ pmaxfrbehd,
+ pnotgrenzw,
+ kap,
+ tit,
+ huel,
+ freivers,
+ psemfr,
+ pdatkenn,
+ abtitelhm,
+ abtitelhw,
+ abtitelvm,
+ abtitelvw,
+ mspgen,
+ potext,
+ melostg,
+ semsetza,
+ semsetzn,
+ termintext,
+ panfang,
+ pende,
+ rmfrist,
+ sivabschl,
+ sivstg,
+ sivvert,
+ sivschwp,
+ sivkzfa,
+ sivpversion,
+ sivverw,
+ pspanfang,
+ pspende
+FROM parstg;
+
+
+" "txt" "$DBDELIMITER" "false" "unl/sos_parstg.unl" >>$ERR 2>&1
+
+fi
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+ SELECT * from tmp_xdummy
+where 1=0;
+
+
+" "txt" "$DBDELIMITER" "false" "unl/sos_parstg.unl" >>$ERR 2>&1
+
+fi
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+select * from k_stg where 1=0;
+
+" "txt" "$DBDELIMITER" "false" "unl/sos_parstg.unl" >>$ERR 2>&1
+
+fi
+
+fi
+
+if [ "$SX_CLIENT" = "dbaccess" ]
+then
+echo "Unload with dbaccess" >>$ERR 2>&1
+
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/sos_parstg.unl"
+
+
+SELECT abschl,
+ stg,
+ vert,
+ schwp,
+ kzfa,
+ pversion,
+ psem,
+ ptermin,
+ folgesem,
+ pmaxvg,
+ pmaxvh,
+ vpfri,
+ hpfri,
+ exmmeld,
+ beumeld,
+ pmaxfrnbs,
+ pmaxfrnbvd,
+ pmaxfrbevd,
+ pmaxfrnbhd,
+ pmaxfrbehd,
+ pnotgrenzw,
+ kap,
+ tit,
+ huel,
+ freivers,
+ psemfr,
+ pdatkenn,
+ abtitelhm,
+ abtitelhw,
+ abtitelvm,
+ abtitelvw,
+ mspgen,
+ potext,
+ melostg,
+ semsetza,
+ semsetzn,
+ termintext,
+ panfang,
+ pende,
+ rmfrist,
+ sivabschl,
+ sivstg,
+ sivvert,
+ sivschwp,
+ sivkzfa,
+ sivpversion,
+ sivverw,
+ pspanfang,
+ pspende
+FROM parstg
+
+--Ende
+END_sos_parstg
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/sos_parstg.unl"
+
+
+ SELECT * from tmp_xdummy
+where 1=0;
+
+
+--Ende
+END_sos_parstg
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/sos_parstg.unl"
+
+
+select * from k_stg where 1=0;
+
+--Ende
+END_sos_parstg
+fi
+
+fi
+
+#
+#Unload-Job sos_hsnr
+#
+echo "--------------------------------------------------------------" >>$ERR
+echo "Unload-Job: sos_hsnr" >>$ERR
+
+
+if [ "$SX_CLIENT" = "psql" ]
+then
+echo "Unload with jdbc for Postgres" >>$ERR 2>&1
+
+
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+SELECT distinct hsnr, bland, hsbez FROM hskonst;
+
+" "txt" "$DBDELIMITER" "false" "unl/sos_hsnr.unl" >>$ERR 2>&1
+
+fi
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+SELECT DISTINCT ou.astat,SUBSTRING(kp.astat FROM 1 FOR 2),ou.defaulttext
+FROM ( -- Höchste aktive Konfigurationaquelle mit aktivem Schlüssel
+ -- core.psv.self.own_university
+ SELECT cv.parameter_value AS orgunit_obj_guid,
+ cs.uniquename AS confsrc_uniquename -- Zur Information
+ FROM confparameter cp
+ JOIN confvalue cv ON cp.id=cv.confparameter_id
+ JOIN confsrc cs ON cv.confsrc_id=cs.id
+ WHERE cp.confkey='core.psv.self.own_university' AND
+ cp.active=1 AND
+ cs.active=1
+ ORDER BY cs.priority DESC
+ LIMIT 1
+ ) i
+ JOIN orgunitobj ouo ON i.orgunit_obj_guid=ouo.obj_guid
+ JOIN orgunit ou ON ouo.id=ou.lid
+ JOIN address a ON ou.lid=a.orgunit_lid
+ JOIN k_postcode kp USING(postcode)
+WHERE CURRENT_DATE BETWEEN ou.valid_from AND ou.valid_to AND
+ a.addresstype='Postaddress' ;
+
+" "txt" "$DBDELIMITER" "false" "unl/sos_hsnr.unl" >>$ERR 2>&1
+
+fi
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+select * from k_stg where 1=0;
+
+" "txt" "$DBDELIMITER" "false" "unl/sos_hsnr.unl" >>$ERR 2>&1
+
+fi
+
+fi
+
+if [ "$SX_CLIENT" = "dbaccess" ]
+then
+echo "Unload with dbaccess" >>$ERR 2>&1
+
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/sos_hsnr.unl"
+
+
+SELECT distinct hsnr, bland, hsbez FROM hskonst;
+
+--Ende
+END_sos_hsnr
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/sos_hsnr.unl"
+
+
+SELECT DISTINCT ou.astat,SUBSTRING(kp.astat FROM 1 FOR 2),ou.defaulttext
+FROM ( -- Höchste aktive Konfigurationaquelle mit aktivem Schlüssel
+ -- core.psv.self.own_university
+ SELECT cv.parameter_value AS orgunit_obj_guid,
+ cs.uniquename AS confsrc_uniquename -- Zur Information
+ FROM confparameter cp
+ JOIN confvalue cv ON cp.id=cv.confparameter_id
+ JOIN confsrc cs ON cv.confsrc_id=cs.id
+ WHERE cp.confkey='core.psv.self.own_university' AND
+ cp.active=1 AND
+ cs.active=1
+ ORDER BY cs.priority DESC
+ LIMIT 1
+ ) i
+ JOIN orgunitobj ouo ON i.orgunit_obj_guid=ouo.obj_guid
+ JOIN orgunit ou ON ouo.id=ou.lid
+ JOIN address a ON ou.lid=a.orgunit_lid
+ JOIN k_postcode kp USING(postcode)
+WHERE CURRENT_DATE BETWEEN ou.valid_from AND ou.valid_to AND
+ a.addresstype='Postaddress' ;
+
+--Ende
+END_sos_hsnr
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/sos_hsnr.unl"
+
+
+select * from k_stg where 1=0;
+
+--Ende
+END_sos_hsnr
+fi
+
+fi
+
+#
+#Unload-Job semester
+#
+echo "--------------------------------------------------------------" >>$ERR
+echo "Unload-Job: semester" >>$ERR
+
+
+if [ "$SX_CLIENT" = "psql" ]
+then
+echo "Unload with jdbc for Postgres" >>$ERR 2>&1
+
+
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+SELECT distinct aktsem,aktsem,
+ extract(day from sembg)::varchar(2) || '.' || extract(month from sembg)::varchar(2) || '.' || extract(year from sembg)::varchar(4),
+ extract(day from semende)::varchar(2) || '.' || extract(month from semende)::varchar(2) || '.' || extract(year from semende)::varchar(4),
+ extract(day from stistat)::varchar(2) || '.' || extract(month from stistat)::varchar(2) || '.' || extract(year from stistat)::varchar(4)
+FROM sossys where aktsem is not null;
+
+" "txt" "$DBDELIMITER" "false" "unl/semester.unl" >>$ERR 2>&1
+
+fi
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+SELECT distinct '' || P.term_year || T.termnumber,'' || P.term_year || T.termnumber, date(P.startdate),date(P.enddate),date(P.startdate)+85 --Mitte des semesters
+FROM k_period_usage K,period_usage U,period P,term_type T
+where K.id=U.k_period_usage_id
+and K.hiskey_id=7 --Semesterzeitraum
+and U.period_id=P.id
+and T.id=P.term_type_id
+-- Semester nur entladen wenn es keine Trimester gibt
+and T.termcategory=2 --Semester
+and 0=(select count(*) from k_period_usage K,period_usage U,period P,term_type T
+where K.id=U.k_period_usage_id
+and K.hiskey_id=7 --Semesterzeitraum
+and U.period_id=P.id
+and T.id=P.term_type_id
+and T.termcategory=3)
+union
+--Trimester werden entladen wenn es mind. eines gibt
+SELECT distinct '' || P.term_year || T.termnumber,'' || P.term_year || T.termnumber, date(P.startdate),date(P.enddate),date(P.startdate)+85 --Mitte des semesters
+FROM k_period_usage K,period_usage U,period P,term_type T
+where K.id=U.k_period_usage_id
+and K.hiskey_id=7 --Semesterzeitraum
+and U.period_id=P.id
+and T.id=P.term_type_id
+and T.termcategory=3 --Trimester
+and 0<(select count(*) from k_period_usage K,period_usage U,period P,term_type T
+where K.id=U.k_period_usage_id
+and K.hiskey_id=7 --Semesterzeitraum
+and U.period_id=P.id
+and T.id=P.term_type_id
+and T.termcategory=3)
+;
+
+" "txt" "$DBDELIMITER" "false" "unl/semester.unl" >>$ERR 2>&1
+
+fi
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+
+SELECT distinct aktsem,
+aktsem,
+'01.10.' || substr('' || aktsem,1,4) as sem_beginn,
+'31.03.' || substr('' || (aktsem+9),1,4) as semende,
+stistat
+FROM sosys where aktsem >= $start_stud_sem
+and '' || aktsem like '%2'
+union
+SELECT distinct aktsem,
+aktsem,
+'01.04.' || substr('' || aktsem,1,4) as sem_beginn,
+'30.09.' || substr('' || aktsem,1,4) as semende,
+stistat
+FROM sosys where aktsem >= $start_stud_sem
+and '' || aktsem like '%1';
+
+
+" "txt" "$DBDELIMITER" "false" "unl/semester.unl" >>$ERR 2>&1
+
+fi
+
+fi
+
+if [ "$SX_CLIENT" = "dbaccess" ]
+then
+echo "Unload with dbaccess" >>$ERR 2>&1
+
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/semester.unl"
+
+
+SELECT distinct aktsem,aktsem, sembg,semende,stistat
+FROM sossys where aktsem is not null;
+
+--Ende
+END_semester
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/semester.unl"
+
+
+SELECT distinct '' || P.term_year || T.termnumber,'' || P.term_year || T.termnumber, date(P.startdate),date(P.enddate),date(P.startdate)+85 --Mitte des semesters
+FROM k_period_usage K,period_usage U,period P,term_type T
+where K.id=U.k_period_usage_id
+and K.hiskey_id=7 --Semesterzeitraum
+and U.period_id=P.id
+and T.id=P.term_type_id
+-- Semester nur entladen wenn es keine Trimester gibt
+and T.termcategory=2 --Semester
+and 0=(select count(*) from k_period_usage K,period_usage U,period P,term_type T
+where K.id=U.k_period_usage_id
+and K.hiskey_id=7 --Semesterzeitraum
+and U.period_id=P.id
+and T.id=P.term_type_id
+and T.termcategory=3)
+union
+--Trimester werden entladen wenn es mind. eines gibt
+SELECT distinct '' || P.term_year || T.termnumber,'' || P.term_year || T.termnumber, date(P.startdate),date(P.enddate),date(P.startdate)+85 --Mitte des semesters
+FROM k_period_usage K,period_usage U,period P,term_type T
+where K.id=U.k_period_usage_id
+and K.hiskey_id=7 --Semesterzeitraum
+and U.period_id=P.id
+and T.id=P.term_type_id
+and T.termcategory=3 --Trimester
+and 0<(select count(*) from k_period_usage K,period_usage U,period P,term_type T
+where K.id=U.k_period_usage_id
+and K.hiskey_id=7 --Semesterzeitraum
+and U.period_id=P.id
+and T.id=P.term_type_id
+and T.termcategory=3)
+;
+
+--Ende
+END_semester
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/semester.unl"
+
+
+
+SELECT distinct aktsem,
+aktsem,
+'01.10.' || substr('' || aktsem,1,4) as sem_beginn,
+'31.03.' || substr('' || (aktsem+9),1,4) as semende,
+stistat
+FROM sosys where aktsem >= $start_stud_sem
+and '' || aktsem like '%2'
+union
+SELECT distinct aktsem,
+aktsem,
+'01.04.' || substr('' || aktsem,1,4) as sem_beginn,
+'30.09.' || substr('' || aktsem,1,4) as semende,
+stistat
+FROM sosys where aktsem >= $start_stud_sem
+and '' || aktsem like '%1';
+
+
+--Ende
+END_semester
+fi
+
+fi
+
+#
+#Unload-Job cif
+#
+echo "--------------------------------------------------------------" >>$ERR
+echo "Unload-Job: cif" >>$ERR
+
+
+if [ "$SX_CLIENT" = "psql" ]
+then
+echo "Unload with jdbc for Postgres" >>$ERR 2>&1
+
+if [ $VERSION = "5" -o $VERSION = "6" -o $VERSION = "7" ]
+then
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+SELECT
+ 12,
+0,
+ '' || astat,
+ ktxt,
+ dtxt,
+ ltxt,
+null::char(1),
+null::char(1),
+null::char(1),
+null::char(1),
+null::char(1)
+ FROM k_akfz
+ WHERE akfz is not null
+ and astat is not null
+ and aikz='A'
+
+union
+SELECT
+ 9010,
+-1,
+ '' || vpnr,'VD','Vorprüfung','Vorprüfung',
+'' || vpnr,
+null::char(1),
+null::char(1),
+null::char(1),
+null::char(1)
+FROM hskonst
+union
+SELECT
+ 9010,
+ -1,
+ '' || hpnr,'HD','Hauptprüfung','Hauptprüfung',
+ '' || hpnr,
+ null::char(1),
+ null::char(1),
+ null::char(1),
+ null::char(1)
+FROM hskonst
+
+union
+SELECT
+ 9003,
+ 0,
+ astat,
+ ktxt,
+ dtxt,
+ ltxt,
+ astat,
+ null::char(1),
+ null::char(1),
+ null::char(1),
+ null::char(1)
+ FROM k_geschl
+ WHERE astat is not null
+ union
+SELECT
+ 617,
+ -1,
+ '' || semgewicht,
+ ktxt,
+ dtxt,
+ ltxt,
+ '' || semgewicht,
+ null::char(1),
+ null::char(1) ,
+ null::char(1),
+ null::char(1)
+ FROM k_semgewicht
+
+ union
+SELECT
+ 631,
+ -1,
+ '' || pnr,
+ ktxt,
+ dtxt,
+ ltxt,
+ '' || pnr,
+ null::char(1),
+ null::char(1) ,
+ null::char(1),
+ null::char(1)
+ FROM k_pnr
+ where pnr is not null
+ union
+SELECT
+ 632,
+-1,
+ '' || refpvers,
+ ktxt,
+ dtxt,
+ ltxt,
+'' || pvers,
+null::char(1),
+null::char(1) ,
+null::char(1),
+sprache
+ FROM k_pvers
+ where refpvers is not null;
+
+
+
+" "txt" "$DBDELIMITER" "false" "unl/cif.unl" >>$ERR 2>&1
+
+fi
+
+fi
+if [ $VERSION = "8" -o $VERSION = "9" -o $VERSION = "10" -o $VERSION = "11" -o $VERSION = "12" -o $VERSION = "13" ]
+then
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+SELECT
+ 12,
+0,
+ '' || astat,
+ ktxt,
+ dtxt,
+ ltxt,
+null::char(1),
+null::char(1),
+null::char(1),
+null::char(1),
+null::char(1)
+ FROM k_akfz
+ WHERE akfz is not null
+ and astat is not null
+ and aikz='A'
+ and (sprache ='D' or sprache is null)
+union
+SELECT
+ 9010,
+-1,
+ '' || vpnr,'VD','Vorprüfung','Vorprüfung',
+'' || vpnr,
+null::char(1),
+null::char(1),
+null::char(1),
+null::char(1)
+FROM hskonst
+union
+SELECT
+ 9010,
+ -1,
+ '' || hpnr,'HD','Hauptprüfung','Hauptprüfung',
+ '' || hpnr,
+ null::char(1),
+ null::char(1),
+ null::char(1),
+ null::char(1)
+FROM hskonst
+
+union
+SELECT
+ 9003,
+ 0,
+ astat,
+ ktxt,
+ dtxt,
+ ltxt,
+ astat,
+ null::char(1),
+ null::char(1),
+ null::char(1),
+ null::char(1)
+ FROM k_geschl
+ WHERE astat is not null
+ union
+SELECT
+ 617,
+ -1,
+ '' || semgewicht,
+ ktxt,
+ dtxt,
+ ltxt,
+ '' || semgewicht,
+ null::char(1),
+ null::char(1) ,
+ null::char(1),
+ null::char(1)
+ FROM k_semgewicht
+
+ union
+SELECT
+ 631,
+ -1,
+ '' || pnr,
+ ktxt,
+ dtxt,
+ ltxt,
+ '' || pnr,
+ null::char(1),
+ null::char(1) ,
+ null::char(1),
+ null::char(1)
+ FROM k_pnr
+ where pnr is not null
+ union
+SELECT
+ 632,
+-1,
+ '' || refpvers,
+ ktxt,
+ dtxt,
+ ltxt,
+'' || pvers,
+null::char(1),
+null::char(1) ,
+null::char(1),
+sprache
+ FROM k_pvers
+ where refpvers is not null;
+
+
+
+" "txt" "$DBDELIMITER" "false" "unl/cif.unl" >>$ERR 2>&1
+
+fi
+
+fi
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+SELECT
+ 12,
+0,
+ substring('' || astat from 1 for 10),--astat,
+ substring(shorttext from 1 for 10),
+ substring(defaulttext from 1 for 100),
+ substring(longtext from 1 for 150),
+substring('' || astat from 1 for 10), --astat
+null::char(1),--parent
+null::char(1),--sortc1
+null::char(1),--bund_apnr
+substring('' || k_language_id from 1 for 3) --sprache,
+ FROM country --k_akfz
+ --cif-Schlüssel derzeit noch nicht historisiert:
+ where (current_date >= valid_from
+ or valid_from is null)
+ and (current_date <= valid_to
+ or valid_to is null)
+
+union
+SELECT
+ 9010,
+ -1,
+ '2','VD','Vorprüfung',
+ 'Vorprüfung',
+ null::char(1) , --astat
+ null::char(1), --parent
+ null::char(1), --sortc1
+ null::char(1), --bund_apnr
+ null::char(1) --sprache
+FROM tmp_xdummy
+union
+SELECT
+ 9010,
+-1,
+ '1','HD','Hauptprüfung',
+ 'Hauptprüfung',
+null::char(1) , --astat
+null::char(1), --parent
+null::char(1), --sortc1
+null::char(1), --bund_apnr
+null::char(1) --sprache
+FROM tmp_xdummy
+union
+SELECT
+ 9010,
+-1,
+ '3','AA','Abschlussarbeit',
+ 'Abschlussarbeit',
+null::char(1) , --astat
+null::char(1), --parent
+null::char(1), --sortc1
+null::char(1), --bund_apnr
+null::char(1) --sprache
+FROM tmp_xdummy
+union
+SELECT
+ 9003,
+ 0,
+ substring('' || astat from 1 for 10),--astat,
+ substring(shorttext from 1 for 10),
+ substring(defaulttext from 1 for 100),
+ substring(longtext from 1 for 150),
+ substring('' || astat from 1 for 10),--astat,
+ null::char(1),
+ null::char(1),
+ null::char(1),
+ null::char(1)
+ FROM k_gender
+ WHERE astat is not null
+ union
+SELECT
+ 631,
+ -1,
+ '' || id,
+ substring(shorttext from 1 for 10),
+ substring(defaulttext from 1 for 100),
+ substring(longtext from 1 for 150),
+ null::char(1) , --astat
+ null::char(1),
+ '' || sortorder ,--sortc1
+ null::char(1),
+ substring('' || k_language_id from 1 for 3)--sprache
+ FROM k_examination_type
+ union
+SELECT
+ 632,
+-1,
+ '' || id,
+ substring(shorttext from 1 for 10),
+ substring(defaulttext from 1 for 100),
+ substring(longtext from 1 for 150),
+'' || hiskey_id , --astat
+null::char(1), --parent
+uniquename,
+null::char(1),--bund_apnr
+substring('' || k_language_id from 1 for 3)--sprache
+ FROM k_examinationversion;
+
+
+
+" "txt" "$DBDELIMITER" "false" "unl/cif.unl" >>$ERR 2>&1
+
+fi
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+SELECT
+ 631,
+ -1,
+ '' || nr,
+ substr(kurzbezeichnung, 1 , 10),
+ substr(name, 1 , 100),
+ substr(name, 1 , 150),
+ null , --astat
+ null,
+ '' ,--sortc1
+ null,
+ '' --sprache
+ FROM pv_dp_typen
+ --TODO: pv_abs_typen, pv_pruefungs_typen und st_bescheid_typen
+
+" "txt" "$DBDELIMITER" "false" "unl/cif.unl" >>$ERR 2>&1
+
+fi
+
+fi
+
+if [ "$SX_CLIENT" = "dbaccess" ]
+then
+echo "Unload with dbaccess" >>$ERR 2>&1
+
+#Unload sql-Statement
+if [ $VERSION = "5" -o $VERSION = "6" -o $VERSION = "7" ]
+then
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/cif.unl"
+
+
+SELECT
+ 12,
+0,
+ '' || astat,
+ ktxt,
+ dtxt,
+ ltxt,
+null::char(1),
+null::char(1),
+null::char(1),
+null::char(1),
+null::char(1)
+ FROM k_akfz
+ WHERE akfz is not null
+ and aikz="A"
+ and astat is not null
+
+union
+ SELECT
+9010,
+-1,
+ '' || vpnr,"VD","Vorprüfung","Vorprüfung",
+'' || vpnr,
+null::char(1),
+null::char(1),
+null::char(1),
+null::char(1)
+FROM hskonst
+union
+SELECT
+ 9010,
+-1,
+ '' || hpnr,"HD","Hauptprüfung","Hauptprüfung",
+'' || hpnr,
+null::char(1),
+null::char(1),
+null::char(1),
+null::char(1)
+FROM hskonst
+
+union
+SELECT
+ 9003,
+0,
+ astat,
+ ktxt,
+ dtxt,
+ ltxt,
+astat,
+null::char(1),
+null::char(1),
+null::char(1),
+null::char(1)
+ FROM k_geschl
+ WHERE astat is not null
+ union
+SELECT
+ 617,
+-1,
+ '' || semgewicht,
+ ktxt,
+ dtxt,
+ ltxt,
+'' || semgewicht,
+null::char(1),
+null::char(1) ,
+null::char(1),
+null::char(1)
+ FROM k_semgewicht
+
+ union
+SELECT
+ 631,
+-1,
+ '' || pnr,
+ ktxt,
+ dtxt,
+ ltxt,
+'' || pnr,
+null::char(1),
+null::char(1) ,
+null::char(1),
+null::char(1)
+ FROM k_pnr
+ where pnr is not null
+ union
+SELECT
+ 632,
+-1,
+ '' || refpvers,
+ ktxt,
+ dtxt,
+ ltxt,
+'' || pvers,
+null::char(1),
+null::char(1) ,
+null::char(1),
+sprache
+ FROM k_pvers
+ where refpvers is not null;
+
+
+
+--Ende
+END_cif567
+fi
+
+fi
+#Unload sql-Statement
+if [ $VERSION = "8" -o $VERSION = "9" -o $VERSION = "10" -o $VERSION = "11" -o $VERSION = "12" -o $VERSION = "13" ]
+then
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/cif.unl"
+
+
+SELECT
+ 12,
+0,
+ '' || astat,
+ ktxt,
+ dtxt,
+ ltxt,
+null::char(1),
+null::char(1),
+null::char(1),
+null::char(1),
+null::char(1)
+ FROM k_akfz
+ WHERE akfz is not null
+ and astat is not null
+ and aikz="A"
+ and (sprache ="D" or sprache is null)
+union
+ SELECT
+9010,
+-1,
+ '' || vpnr,"VD","Vorprüfung","Vorprüfung",
+'' || vpnr,
+null::char(1),
+null::char(1),
+null::char(1),
+null::char(1)
+FROM hskonst
+union
+SELECT
+ 9010,
+-1,
+ '' || hpnr,"HD","Hauptprüfung","Hauptprüfung",
+'' || hpnr,
+null::char(1),
+null::char(1),
+null::char(1),
+null::char(1)
+FROM hskonst
+
+union
+SELECT
+ 9003,
+0,
+ astat,
+ ktxt,
+ dtxt,
+ ltxt,
+astat,
+null::char(1),
+null::char(1),
+null::char(1),
+null::char(1)
+ FROM k_geschl
+ WHERE astat is not null
+ union
+SELECT
+ 617,
+-1,
+ '' || semgewicht,
+ ktxt,
+ dtxt,
+ ltxt,
+'' || semgewicht,
+null::char(1),
+null::char(1) ,
+null::char(1),
+null::char(1)
+ FROM k_semgewicht
+
+ union
+SELECT
+ 631,
+-1,
+ '' || pnr,
+ ktxt,
+ dtxt,
+ ltxt,
+'' || pnr,
+null::char(1),
+null::char(1) ,
+null::char(1),
+null::char(1)
+ FROM k_pnr
+ where pnr is not null
+ union
+SELECT
+ 632,
+-1,
+ '' || refpvers,
+ ktxt,
+ dtxt,
+ ltxt,
+'' || pvers,
+null::char(1),
+null::char(1) ,
+null::char(1),
+sprache
+ FROM k_pvers
+ where refpvers is not null;
+
+
+
+--Ende
+END_cif8910111213
+fi
+
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/cif.unl"
+
+
+SELECT
+ 631,
+ -1,
+ '' || nr,
+ substr(kurzbezeichnung, 1 , 10),
+ substr(name, 1 , 100),
+ substr(name, 1 , 150),
+ null , --astat
+ null,
+ '' ,--sortc1
+ null,
+ '' --sprache
+ FROM pv_dp_typen
+ --TODO: pv_abs_typen, pv_pruefungs_typen und st_bescheid_typen
+
+--Ende
+END_cif
+fi
+
+fi
+
+#
+#Unload-Job cifx
+#
+echo "--------------------------------------------------------------" >>$ERR
+echo "Unload-Job: cifx" >>$ERR
+
+
+if [ "$SX_CLIENT" = "psql" ]
+then
+echo "Unload with jdbc for Postgres" >>$ERR 2>&1
+
+
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+
+
+
+ SELECT
+ --zuerst gemeinsame Schluessel von SOS, POS und ZUL
+ --die gleichen selects muessen auch in der zul_unload.xml sein!!!
+
+ 35,
+-1,
+ refabint,
+ ktxt,
+ dtxt,
+ ltxt,
+astat,
+null::char(1),--parent
+refabint,--sortc1 wird später uniquename
+null::char(1),
+sprache,
+null::char(1), --gültig von
+null::char(1), --gültig bis
+refabint, --sourcesystem_id
+null::char(1), --hiskey_id
+aikz, --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+null::integer as sortorder
+ FROM k_abint
+ WHERE refabint is not null and refabint != '' and refabint != ''
+ and (sprache='D' or sprache is null)
+ union
+SELECT
+ 30,
+-1,
+ refstg,
+ ktxt,
+ dtxt,
+ ltxt,
+astat,
+null::char(1),--parent
+refstg, --sortc1 wird später uniquename
+null::char(1),--bund_apnr
+sprache,
+null::char(1), --gültig von
+null::char(1), --gültig bis
+refstg , --sourcesystem_id
+null::char(1), --hiskey_id
+fb, --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+null::integer as sortorder
+ FROM k_stg
+ WHERE refstg is not null
+ and (sprache='D' or sprache is null)
+ and trim (refstg) !=''
+union
+SELECT
+ 39,
+-1,
+ refvert,
+ ktxt,
+ dtxt,
+ ltxt,
+null::char(1),
+null::char(1),
+vert,
+null::char(1),
+sprache,
+null::char(1), --gültig von
+null::char(1), --gültig bis
+refvert , --sourcesystem_id
+null::char(1), --hiskey_id
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+null::integer as sortorder
+ FROM k_vert
+ WHERE refvert is not null
+ and (sprache='D' or sprache is null)
+ and trim (refvert) !=''
+
+ union
+SELECT
+ 41,
+0,
+ schwp,
+ ktxt,
+ dtxt,
+ ltxt,
+null::char(1),
+null::char(1),
+schwp,
+null::char(1),
+sprache ,
+null::char(1), --gültig von
+null::char(1), --gültig bis
+schwp, --sourcesystem_id
+null::char(1), --hiskey_id
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+null::integer as sortorder
+
+ FROM k_schwp
+ WHERE schwp is not null
+ and trim(schwp) != ''
+ union
+ SELECT
+ 601,
+-1,
+ hzbart,
+ ktxt,
+ dtxt,
+ ltxt,
+astat,
+null::char(1),
+hzbart ,
+null::char(1),
+null::char(1),
+null::char(1), --gültig von
+null::char(1), --gültig bis
+hzbart , --sourcesystem_id
+null::char(1), --hiskey_id
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+null::integer as sortorder
+ FROM k_hzbart
+ union
+ SELECT
+ 612,
+-1,
+ stufrm,
+ ktxt,
+ dtxt,
+ ltxt,
+astat,
+null::char(1),
+stufrm ,
+null::char(1),
+null::char(1),
+null::char(1), --gültig von
+null::char(1), --gültig bis
+stufrm , --sourcesystem_id
+null::char(1), --hiskey_id
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+null::integer as sortorder
+ FROM k_stufrm
+ union
+ SELECT
+ 614,
+-1,
+ kzfa,
+ ktxt,
+ dtxt,
+ ltxt,
+ his_kzfa as astat,
+null::char(1) as parent, --refkzfa,
+kzfa ,
+null::char(1),
+sprache,
+null::char(1), --gültig von
+null::char(1), --gültig bis
+kzfa , --sourcesystem_id
+null::char(1) , --hiskey_id
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+null::integer as sortorder
+ FROM k_kzfa
+ where (sprache='D' or sprache is null)
+ union
+ SELECT
+ 613,
+-1,
+ hrst,
+ ktxt,
+ dtxt,
+ ltxt,
+astat,
+his_hrst,
+hrst ,
+null::char(1),
+null::char(1),
+null::char(1), --gültig von
+null::char(1), --gültig bis
+hrst, --sourcesystem_id
+null::char(1) , --hiskey_id
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+null::integer as sortorder
+ FROM k_hrst
+ union
+ SELECT
+ 616,
+-1,
+ stuart,
+ ktxt,
+ dtxt,
+ ltxt,
+astat,
+null::char(1),
+stuart ,
+null::char(1),
+null::char(1),
+null::char(1), --gültig von
+null::char(1), --gültig bis
+stuart , --sourcesystem_id
+null::char(1) , --hiskey_id
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+null::integer as sortorder
+ FROM k_stuart
+ union
+ SELECT
+ 620,
+-1,
+ astfr,
+ ktxt,
+ dtxt,
+ ltxt,
+null::char(1),
+null::char(1),
+astfr ,
+null::char(1),
+null::char(1),
+null::char(1), --gültig von
+null::char(1), --gültig bis
+astfr , --sourcesystem_id
+null::char(1) , --hiskey_id
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+null::integer as sortorder
+ FROM k_astfr
+ where astfr is not null
+ and trim(astfr)!=''
+ union
+ SELECT
+ 621,
+-1,
+ astgrp,
+ ktxt,
+ dtxt,
+ ltxt,
+null::char(1),
+null::char(1),
+astgrp ,
+null::char(1),
+null::char(1),
+null::char(1), --gültig von
+null::char(1), --gültig bis
+astgrp , --sourcesystem_id
+null::char(1) , --hiskey_id
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+null::integer as sortorder
+ FROM k_astgrp
+ where astgrp is not null
+ and trim(astgrp)!=''
+ union
+ SELECT
+ 618,
+-1,
+ abext,
+ ktxt,
+ dtxt,
+ ltxt,
+astat,
+astat,
+abext ,
+null::char(1),
+null::char(1),
+null::char(1), --gültig von
+null::char(1), --gültig bis
+abext , --sourcesystem_id
+null::char(1) , --hiskey_id
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+null::integer as sortorder
+ FROM k_abext
+ union
+ SELECT
+ 622,
+ -1,
+ refpstatus,
+ ktxt,
+ dtxt,
+ ltxt,
+ null::char(1),
+ null::char(1),
+ refpstatus ,
+ null::char(1),
+ null::char(1),
+null::char(1), --gültig von
+null::char(1), --gültig bis
+refpstatus , --sourcesystem_id
+null::char(1) , --hiskey_id
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+null::integer as sortorder
+ FROM k_pstatus
+ where aikz='A'
+ and (sprache='D' or sprache is null)
+
+ union
+
+ SELECT
+ 40,
+-1,
+ stutyp,
+ ktxt,
+ dtxt,
+ ltxt,
+astat,
+null::char(1),
+stutyp ,
+null::char(1),
+null::char(1),
+null::char(1), --gültig von
+null::char(1), --gültig bis
+stutyp , --sourcesystem_id
+null::char(1) , --hiskey_id
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+null::integer as sortorder
+ FROM k_stutyp
+union
+SELECT
+ 11,
+-1,
+ ikfz,
+ ktxt,
+ dtxt,
+ ltxt,
+astat,
+null::char(1),
+ikfz,
+bland,
+null::char(1) ,
+null::char(1), --gültig von
+null::char(1), --gültig bis
+ikfz , --sourcesystem_id
+null::char(1) , --hiskey_id
+aikz, --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+null::integer as sortorder
+ FROM k_ikfz
+ WHERE astat is not null
+ --and aikz ='A'
+ union
+SELECT
+ 12,
+0,
+ akfz,
+ ktxt,
+ dtxt,
+ ltxt,
+astat,
+null::char(1),
+akfz,--uniqename
+erdteil,
+null::char(1) ,
+null::char(1), --gültig von
+null::char(1), --gültig bis
+akfz , --sourcesystem_id
+null::char(1) , --hiskey_id
+egmitgl, --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+null::integer as sortorder
+ FROM k_akfz
+ WHERE akfz is not null
+ and (sprache ='D' or sprache is null)
+ and aikz='A'
+ union
+SELECT
+ 12,
+0,
+ akfz,
+ ktxt,
+ dtxt,
+ ltxt,
+astat,
+null::char(1),
+akfz,--bei staaten ist astat=uniqename
+erdteil,
+null::char(1) ,
+null::char(1), --gültig von
+'01.01.2009', --gültig bis
+akfz , --sourcesystem_id
+null::char(1) , --hiskey_id
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+null::integer as sortorder
+ FROM k_akfz
+ WHERE akfz is not null
+ and (sprache ='D' or sprache is null)
+ and aikz='I'
+ union
+SELECT
+ 8,
+0,
+ bland,
+ ktxt,
+ dtxt,
+ ltxt,
+astat,
+null::char(1),
+bland,
+null::char(1),
+null::char(1),
+null::char(1), --gültig von
+null::char(1), --gültig bis
+bland , --sourcesystem_id
+null::char(1) , --hiskey_id
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+null::integer as sortorder
+ FROM k_bland
+ WHERE bland is not null
+ union
+ SELECT
+ 9011,
+0,
+ ppruefer,
+ kname,
+ nachname ,
+ nachname || ', '|| vorname ,
+null::char(1),
+null::char(1),
+ppruefer,
+null::char(1),
+null::char(1),
+null::char(1), --gültig von
+null::char(1), --gültig bis
+ppruefer , --sourcesystem_id
+null::char(1) , --hiskey_id
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+null::integer as sortorder
+ FROM k_ppruef
+ WHERE ppruefer is not null
+ and '$PRUEFER_NAME'='true'
+ union
+ SELECT
+ 305,
+0,
+ sperre,
+ ktxt,
+ dtxt ,
+ ltxt ,
+sos_sperre1::char(10),
+sos_sperre2::char(10),
+sperre,
+null::char(1),
+null::char(1),
+null::char(1), --gültig von
+null::char(1), --gültig bis
+sperre , --sourcesystem_id
+null::char(1) , --hiskey_id
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+null::integer as sortorder
+ FROM k_sperre
+ WHERE sperre is not null
+ and aikz='A'
+ union
+SELECT
+ 9001,
+0,
+ status,
+ ktxt,
+ dtxt,
+ ltxt ,
+astat,
+null::char(1),
+status,
+null::char(1),
+null::char(1),
+null::char(1), --gültig von
+null::char(1), --gültig bis
+status , --sourcesystem_id
+null::char(1) , --hiskey_id
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+null::integer as sortorder
+ FROM k_status
+ WHERE status is not null
+ and aikz='A'
+ union
+SELECT
+ 9013,
+0,
+ modulart,
+ ktxt,
+ dtxt ,
+ ltxt ,
+null::char(1),
+null::char(1),
+modulart,
+null::char(1),
+sprache,
+null::char(1), --gültig von
+null::char(1), --gültig bis
+modulart , --sourcesystem_id
+null::char(1) , --hiskey_id
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+null::integer as sortorder
+ FROM k_modulart
+ WHERE modulart is not null
+ and aikz='A'
+ union
+
+ SELECT
+ 90,
+-1,
+ reffb,
+ ktxt,
+ dtxt,
+ ltxt,
+null::char(1),
+null::char(1),
+fb ,
+null::char(1),
+sprache,
+null::char(1), --gültig von
+null::char(1), --gültig bis
+reffb , --sourcesystem_id
+null::char(1) , --hiskey_id
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+null::integer as sortorder
+ FROM k_fb
+ where aikz='A'
+ and (sprache ='D' or sprache is null)
+ union
+ SELECT
+ 9012,
+ -1,
+ stort,
+ ktxt,
+ dtxt,
+ ltxt,
+ astat,
+ null::char(1),
+ stort ,
+ null::char(1),
+ null::char(1),
+null::char(1), --gültig von
+null::char(1), --gültig bis
+stort , --sourcesystem_id
+null::char(1) , --hiskey_id
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+null::integer as sortorder
+ FROM k_stort
+ where aikz='A'
+
+ union
+ SELECT
+ 619,
+-1,
+ lehreinh,
+ ktxt,
+ dtxt,
+ ltxt,
+null::char(1),
+null::char(1),
+lehreinh ,
+null::char(1),
+null::char(1),
+null::char(1), --gültig von
+null::char(1), --gültig bis
+lehreinh , --sourcesystem_id
+null::char(1) , --hiskey_id
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+null::integer as sortorder
+ FROM k_le
+ where lehreinh is not null
+ and trim(lehreinh)!=''
+ union
+ SELECT
+ 27,
+-1,
+ gdbu,
+ ktxt,
+ dtxt,
+ ltxt,
+astat,
+null::char(1),
+gdbu ,
+null::char(1),
+null::char(1),
+null::char(1), --gültig von
+null::char(1), --gültig bis
+gdbu , --sourcesystem_id
+his_gdbu , --hiskey_id
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+null::integer as sortorder
+ FROM k_gdbu
+ where gdbu is not null
+ --and aikz='A'
+ and trim(gdbu)!=''
+ union
+ SELECT
+ 62,
+-1,
+ gdex,
+ ktxt,
+ dtxt,
+ ltxt,
+astat,
+null::char(1),
+gdex ,
+null::char(1),
+null::char(1),
+null::char(1), --gültig von
+null::char(1), --gültig bis
+gdex , --sourcesystem_id
+null::char(1) , --hiskey_id
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+null::integer as sortorder
+ FROM k_gdex
+ where gdex is not null
+ --and aikz='A'
+ and trim(gdex)!=''
+ union
+ SELECT
+ 624,
+-1,
+ pvermerk,
+ ktxt,
+ dtxt ,
+ ltxt ,
+astat,
+null::char(1) ,
+pvermerk,
+null::char(1) ,
+null::char(1),
+null::char(1), --gültig von
+null::char(1), --gültig bis
+pvermerk , --sourcesystem_id
+null::char(1) , --hiskey_id
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+null::integer as sortorder
+ FROM k_pverme
+ WHERE pvermerk is not null
+ and aikz='A'
+ and trim(pvermerk) != ''
+union
+ SELECT
+ 9002,
+-1,
+ part,
+ ktxt,
+ dtxt ,
+ ltxt ,
+astat,
+null::char(1) ,
+part,
+null::char(1) ,
+null::char(1),
+null::char(1), --gültig von
+null::char(1), --gültig bis
+part , --sourcesystem_id
+prfgkz , --hiskey_id
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+null::integer as sortorder
+ FROM k_part
+ WHERE part is not null
+union
+ SELECT
+ 618,
+-1,
+ abext,
+ ktxt,
+ dtxt ,
+ ltxt ,
+astat,
+null::char(1) ,
+abext,
+null::char(1) ,
+null::char(1),
+null::char(1), --gültig von
+null::char(1), --gültig bis
+abext , --sourcesystem_id
+null::char(1) , --hiskey_id
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+null::integer as sortorder
+ FROM k_abext
+ WHERE abext is not null
+union
+ SELECT
+ 623,
+-1,
+ art,
+ substring(dtxt from 1 for 10),
+ dtxt ,
+ artmind ,
+astat,
+null::char(1) ,
+art,
+null::char(1) ,
+null::char(1),
+null::char(1), --gültig von
+null::char(1), --gültig bis
+art , --sourcesystem_id
+null::char(1) , --hiskey_id
+null::char(1) , --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+null::integer as sortorder
+ FROM k_minder
+ WHERE art is not null
+ and aikz='A'
+union
+ SELECT
+ 9014,
+-1,
+ refpform,
+ substring(dtxt from 1 for 10),
+ dtxt ,
+ null::char(1) ,
+null::char(1),
+null::char(1) ,
+null::char(1),
+null::char(1) ,
+null::char(1),
+null::char(1), --gültig von
+null::char(1), --gültig bis
+refpform , --sourcesystem_id
+null::char(1) , --hiskey_id
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+null::integer as sortorder
+ FROM k_pform
+ WHERE refpform is not null
+ and aikz='A'
+ ;
+
+
+" "txt" "$DBDELIMITER" "false" "unl/cifx.unl" >>$ERR 2>&1
+
+fi
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+
+ SELECT
+ 35,
+-1,
+ ('' || id)::varchar(255) as id,
+ substring(shorttext from 1 for 10),
+ substring(defaulttext from 1 for 100),
+ substring(longtext from 1 for 150),
+substring(astat_land from 1 for 10),--astat,
+null::char(1),--parent
+uniquename,
+substring(astat_bund from 1 for 10), --bund_apnr
+substring('' || k_language_id from 1 for 3), --sprache,
+valid_from, --gueltig von
+valid_to, --gueltig bis
+id , --sourcesystem_id
+'' || hiskey_id,
+null::char(1), --struktur_c
+lid::char(255) as lid,
+null::char(255) as parent_lid,
+sortorder
+ FROM degree
+ where (hiskey_id !=2 or hiskey_id is null) --keine externen Abschlüsse
+ union
+SELECT 30,
+-1,
+ '' || S.id,
+substring(S.shorttext from 1 for 10),
+substring(S.defaulttext from 1 for 100),
+substring(S.longtext from 1 for 150),
+substring(S.astat_land from 1 for 10) as astat,
+null::char(1),--parent
+substring(S.uniquename from 1 for 10), --sortc1
+S.astat_bund ,--bund_apnr
+substring('' || S.k_language_id from 1 for 3),--sprache,
+S.valid_from, --gueltig von
+S.valid_to, --gueltig bis
+S.id , --sourcesystem_id
+min('' || F.uniquename) as astgrp, --hiskey_id
+min('' || C.orgunit_id), --struktur_c ist FB, keine Duplikate erlaubt
+S.lid::char(255) as lid,
+null::char(255) as parent_lid,
+S.sortorder
+ FROM subject S, tmp_course_of_study C left outer join k_field_of_study F on
+(F.id=C.k_field_of_study_id)
+where S.id=C.subject_id
+and S.hiskey_id=1 --nur interne Fächer
+group by 1,2,3,4,5,6,7,9,10,11,12,13,14
+
+union
+SELECT
+--Vertiefung
+ 39,
+-1,
+ '' || id,
+ substring(shorttext from 1 for 10),
+ substring(defaulttext from 1 for 100),
+ substring(longtext from 1 for 150),
+null::char(1) as astat,
+null::char(1),--parent
+uniquename,
+null::char(1) ,--bund_apnr
+substring('' || k_language_id from 1 for 3),--sprache,
+valid_from, --gueltig von
+valid_to, --gueltig bis
+id , --sourcesystem_id
+null::char(1), --hiskey_id
+null::char(1), --struktur_c
+lid::char(255) as lid,
+null::char(255) as parent_lid,
+sortorder
+ FROM major_field_of_study
+
+union
+--HZB-Art
+ SELECT
+ 601,
+-1,
+ '' || id,
+ substring(shorttext from 1 for 10),
+ substring(defaulttext from 1 for 100),
+ substring(longtext from 1 for 150),
+substring('' || astat from 1 for 10),--astat,
+null::char(1),--parent
+uniquename,
+null::char(1), --bund_apnr
+substring('' || k_language_id from 1 for 3),--sprache,
+valid_from, --gueltig von
+valid_to, --gueltig bis
+id , --sourcesystem_id
+null::char(1), --hiskey_id
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+sortorder
+ FROM entrance_qualification_type
+ union
+ SELECT
+ 612,
+ -1,
+ '' || id, --stufrm
+ substring(shorttext from 1 for 10),
+ substring(defaulttext from 1 for 100),
+ substring(longtext from 1 for 150),
+substring('' || astat from 1 for 10),--astat,
+null::char(1),--parent
+uniquename,
+null::char(1), --bund_apnr
+substring('' || k_language_id from 1 for 3),--sprache,
+null::date, --gueltig von
+null::date, --gueltig bis
+id , --sourcesystem_id
+'' || hiskey_id,
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+sortorder
+ FROM k_form_of_studies
+ union
+ --kzfa:
+ SELECT
+ 614,
+-1,
+ '' || id,
+ substring(shorttext from 1 for 10),
+ substring(defaulttext from 1 for 100),
+ substring(longtext from 1 for 150),
+ '' || hiskey_id, --astat
+null::char(1),--parent
+uniquename,
+null::char(1), --bund_apnr
+substring('' || k_language_id from 1 for 3),--sprache,
+date('01.01.1900'), --gueltig von
+date('01.01.2900'), --gueltig bis
+id , --sourcesystem_id
+'' || hiskey_id,
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+sortorder
+FROM k_subject_indicator
+ union
+ SELECT
+ 613,
+ -1,
+ '' || id, -- hrst,
+substring(shorttext from 1 for 10),
+ substring(defaulttext from 1 for 100),
+ substring(longtext from 1 for 150),
+substring(astat from 1 for 10), -- astat,
+null::char(1), --parent
+uniquename,
+ null::char(1) ,--bund_apnr
+substring('' || k_language_id from 1 for 3),--sprache,
+date('01.01.1900'), --gueltig von
+date('01.01.2900'), --gueltig bis
+id , --sourcesystem_id
+'' || hiskey_id, -- his_hrst,
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+sortorder
+ FROM k_studentstatus
+ union
+ -- stuart:
+ SELECT
+ 616,
+-1,
+ '' || id,
+ substring(shorttext from 1 for 10),
+ substring(defaulttext from 1 for 100),
+ substring(longtext from 1 for 150),
+ substring('' || astat from 1 for 10),--astat,
+null::char(1),--parent
+uniquename,
+null::char(1), --bund_apnr
+substring('' || k_language_id from 1 for 3),--sprache,
+null::date, --gueltig von
+null::date, --gueltig bis
+id , --sourcesystem_id
+null::char(1)|| hiskey_id,
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+sortorder
+ FROM k_type_of_study
+ union
+ -- k_astgrp:
+ SELECT
+ 621,
+ -1,
+ '' || id,
+ substring(shorttext from 1 for 10),
+ substring(defaulttext from 1 for 100),
+ substring(longtext from 1 for 150),
+ substring('' || astat from 1 for 10),--astat,
+ '',--parent
+ uniquename,
+ '', --bund_apnr
+ substring('' || k_language_id from 1 for 3),--sprache,
+ valid_from, --gueltig von
+ valid_to, --gueltig bis
+ id , --sourcesystem_id
+ ''|| hiskey_id,
+ '' , --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+sortorder
+ FROM k_field_of_study
+ where hiskey_id=4
+ union
+ -- pvermerk:
+ SELECT
+ 624,
+-1,
+ '' || id,
+ substring(shorttext from 1 for 10),
+ substring(defaulttext from 1 for 100),
+ substring(longtext from 1 for 150),
+null::char(1),--substring('' || astat from 1 for 10),--astat,
+null::char(1),--parent
+uniquename,
+null::char(1), --bund_apnr
+substring('' || k_language_id from 1 for 3),--sprache,
+null::date, --gueltig von
+null::date, --gueltig bis
+id , --sourcesystem_id
+'' || hiskey_id,
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+sortorder
+ FROM k_remark_on_exam
+ union
+ -- stutyp,
+ SELECT
+ 40,
+ -1,
+ '' || id,
+ substring(shorttext from 1 for 10),
+ substring(defaulttext from 1 for 100),
+ substring(longtext from 1 for 150),
+substring('' || astat from 1 for 10),--astat,
+null::char(1),--parent
+uniquename,
+null::char(1), --bund_apnr
+substring('' || k_language_id from 1 for 3),--sprache,
+null::date, --gueltig von
+null::date, --gueltig bis
+id , --sourcesystem_id
+'' || hiskey_id,
+null::char(1) , --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+sortorder
+ FROM k_enrollment
+ union
+ SELECT
+ 11,
+ -1,
+ '' || id, -- ikfz,
+substring(shorttext from 1 for 10),
+ substring(defaulttext from 1 for 100),
+ substring(longtext from 1 for 150),
+substring(astat from 1 for 10), -- astat,
+null::char(1), --parent
+uniquename,
+substring(astat from 1 for 2), -- (bund_apnr) hier StBa-Key für Bundesland aus astat,
+substring('' || k_language_id from 1 for 3),--sprache,
+valid_from, --gueltig von
+valid_to, --gueltig bis
+id , --sourcesystem_id
+''|| lid , --hiskey_id
+'I' , --struktur_c
+lid::char(255) as lid,
+null::char(255) as parent_lid,
+sortorder
+FROM district
+where valid_to < current_date
+union
+ SELECT
+ 11,
+ -1,
+ '' || id, -- ikfz,
+substring(shorttext from 1 for 10),
+ substring(defaulttext from 1 for 100),
+ substring(longtext from 1 for 150),
+substring(astat from 1 for 10), -- astat,
+null::char(1), --parent
+uniquename,
+substring(astat from 1 for 2), -- (bund_apnr) hier StBa-Key für Bundesland aus astat,
+substring('' || k_language_id from 1 for 3),--sprache,
+valid_from, --gueltig von
+valid_to, --gueltig bis
+id , --sourcesystem_id
+''|| lid , --hiskey_id
+'A' , --struktur_c
+lid::char(255) as lid,
+null::char(255) as parent_lid,
+sortorder
+FROM district
+where (valid_to >= current_date or valid_to is null)
+ union
+SELECT
+ 12,
+0,
+ '' || id,
+ substring(shorttext from 1 for 10),
+ substring(defaulttext from 1 for 100),
+ substring(longtext from 1 for 150),
+substring('' || astat from 1 for 10),--astat,
+null::char(1),--parent
+substring('' || uniquename from 1 for 10), --sortc1
+substring('' || continent from 1 for 10), -- erdteil
+substring('' || k_language_id from 1 for 3),--sprache,
+valid_from, --gueltig von
+valid_to, --gueltig bis
+id , --sourcesystem_id
+'' || lid, --hiskey_id
+'I', --struktur_c
+lid::char(255) as lid,
+null::char(255) as parent_lid,
+sortorder
+ FROM country
+ where valid_to < current_date
+ union
+SELECT
+ 12,
+0,
+ '' || id,
+ substring(shorttext from 1 for 10),
+ substring(defaulttext from 1 for 100),
+ substring(longtext from 1 for 150),
+substring('' || astat from 1 for 10),--astat,
+null::char(1),--parent
+substring('' || uniquename from 1 for 10), --sortc1
+substring('' || continent from 1 for 10), -- erdteil
+substring('' || k_language_id from 1 for 3),--sprache,
+valid_from, --gueltig von
+valid_to, --gueltig bis
+id , --sourcesystem_id
+'' || lid, --hiskey_id
+'A' , --struktur_c
+lid::char(255) as lid,
+null::char(255) as parent_lid,
+sortorder
+ FROM country
+ where (valid_to >= current_date or valid_to is null)
+ union
+ SELECT
+ 8,
+ -1,
+ uniquename,
+ substring(shorttext from 1 for 10),
+ substring(defaulttext from 1 for 100),
+ substring(longtext from 1 for 150),
+substring('' || astat from 1 for 10),--astat,
+null::char(1),--parent
+uniquename,
+null::char(1), --bund_apnr
+substring('' || k_language_id from 1 for 3),--sprache,
+null::date, --gueltig von
+null::date, --gueltig bis
+id , --sourcesystem_id
+'' ,--hiskey_id,
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+sortorder
+ FROM k_federal_state
+ WHERE uniquename not in ('99','BO') --ohne Ausland und Berlin Ost
+ union
+SELECT
+ 9001,
+ 0,
+ '' || id, -- status,
+substring(shorttext from 1 for 10),
+ substring(defaulttext from 1 for 100),
+ substring(longtext from 1 for 150),
+substring(astat from 1 for 10), -- astat,
+null::char(1), --parent
+uniquename,
+ null::char(1) ,--bund_apnr
+substring('' || k_language_id from 1 for 3),--sprache,
+date('01.01.1900'), --gueltig von
+date('01.01.2900'), --gueltig bis
+id , --sourcesystem_id
+'' || hiskey_id, -- his_hrst,
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+sortorder
+ FROM k_studystatus
+ union
+SELECT
+ 9013,
+ 0,
+ '' || id, -- modulart,
+substring(shorttext from 1 for 10),
+ substring(defaulttext from 1 for 100),
+ substring(longtext from 1 for 150),
+null::char(1) , -- astat,
+null::char(1), --parent
+substring(uniquename from 1 for 10),--uniquename
+ null::char(1) ,--bund_apnr
+substring('' || k_language_id from 1 for 3),--sprache,
+date('01.01.1900'), --gueltig von
+date('01.01.2900'), --gueltig bis
+id , --sourcesystem_id
+'' || hiskey_id , --hiskey_id
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+sortorder
+FROM k_elementtype
+union
+ SELECT
+ 90,
+-1,
+ '' || O.id,
+ substring(O.shorttext from 1 for 10),
+ substring(O.defaulttext from 1 for 100),
+ substring(O.longtext from 1 for 150),
+substring(O.astat from 1 for 10),--astat,
+substring('' || O.parent_lid from 1 for 3),--parent
+O.uniquename,
+null::char(1), --bund_apnr
+substring('' || O.k_language_id from 1 for 3),--sprache,
+O.valid_from, --gueltig von
+O.valid_to, --gueltig bis
+O.id, --sourcesystem_id
+'' || T.hiskey_id,
+null::char(1), --struktur_c
+O.lid::char(255) as lid,
+O.parent_lid::char(255) as parent_lid,
+O.sortorder
+ FROM orgunit O,k_orgunittype T
+ where O.k_orgunittype_id=T.id
+ and T.hiskey_id=4 --Fachbereich
+union
+ SELECT
+ 619,
+-1,
+ '' || O.id,
+ substring(O.shorttext from 1 for 10),
+ substring(O.defaulttext from 1 for 100),
+ substring(O.longtext from 1 for 150),
+substring(O.astat from 1 for 10),--astat,
+substring('' || O.parent_lid from 1 for 3),--parent
+substring(O.uniquename from 1 for 10), --sortc1
+null::char(1), --bund_apnr
+substring('' || O.k_language_id from 1 for 3),--sprache,
+O.valid_from, --gueltig von
+O.valid_to, --gueltig bis
+O.id, --sourcesystem_id
+'' || T.hiskey_id,
+null::char(1), --struktur_c
+O.lid::char(255) as lid,
+O.parent_lid::char(255) as parent_lid,
+O.sortorder
+ FROM orgunit O,k_orgunittype T
+ where O.k_orgunittype_id=T.id
+ and T.hiskey_id=7 --Lehreinheit
+ union
+ --Standorte
+ SELECT
+ 9012,
+ -1,
+ '' || id,
+ substring(shorttext from 1 for 10),
+ substring(defaulttext from 1 for 100),
+ substring(longtext from 1 for 150),
+substring(astat from 1 for 10), --astat,
+null::char(1),--parent
+uniquename,
+substring('' || hiskey_id from 1 for 10), --bund_apnr
+substring('' || k_language_id from 1 for 3),--sprache,
+date('01.01.1900'), --gueltig von
+date('01.01.2900'), --gueltig bis
+id, --sourcesystem_id
+null::char(1), --hiskey_id
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+sortorder
+ FROM k_place_of_studies
+ union
+ --pstatus
+ SELECT
+ 622,
+ -1,
+ '' || id,
+ substring(shorttext from 1 for 10),
+ substring(defaulttext from 1 for 100),
+ substring(longtext from 1 for 150),
+ null::char(1),
+null::char(1),--parent
+uniquename,
+null::char(1), --bund_apnr
+substring('' || k_language_id from 1 for 3),--sprache,
+date('01.01.1900'), --gueltig von
+date('01.01.2900'), --gueltig bis
+id, --sourcesystem_id
+'' || hiskey_id,
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+sortorder
+ FROM k_workstatus
+
+ union
+ --Beurlaubungsgründe
+SELECT
+ 27,
+ 0,
+ '' || id, -- gdbu,
+substring(shorttext from 1 for 10),
+ substring(defaulttext from 1 for 100),
+ substring(longtext from 1 for 150),
+substring(astat from 1 for 10), -- astat,
+null::char(1), --parent
+uniquename,
+ null::char(1) ,--bund_apnr
+substring('' || k_language_id from 1 for 3),--sprache,
+valid_from, --gueltig von
+valid_to, --gueltig bis
+id , --sourcesystem_id
+null::char(1) , -- hiskey,
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+sortorder
+ FROM k_reason_of_leave
+
+union
+
+SELECT -- Exmatrikulationsgründe
+ 62,
+ 0,
+ '' || S.id, -- gdbu,
+ substring(S.shorttext from 1 for 10),
+ substring(S.defaulttext from 1 for 100),
+ substring(S.longtext from 1 for 150),
+ substring(S.astat from 1 for 10), -- astat,
+ '', --parent
+ S.uniquename,
+ substring(S.astat from 1 for 10), --bund_apnr
+ substring('' || S.k_language_id from 1 for 3),--sprache,
+ S.valid_from, --gueltig von
+ S.valid_to, --gueltig bis
+ S.id , --sourcesystem_id
+ '' || S.hiskey_id, -- hiskey,
+ '', --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+sortorder
+FROM k_reason_of_finishing S
+
+union
+
+SELECT
+ 9002,
+ 0,
+ '' || id, -- ,
+ substring(shorttext from 1 for 10),
+ substring(defaulttext from 1 for 100),
+ substring(longtext from 1 for 150),
+ null::char(1),-- astat,
+ null::char(1), --parent
+ uniquename,
+ null::char(1) ,--bund_apnr
+ substring('' || k_language_id from 1 for 3),--sprache,
+ date('01.01.1900'), --gueltig von
+ date('01.01.2900'), --gueltig bis
+ id , --sourcesystem_id
+ '' || hiskey_id , -- hiskey,
+ null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+sortorder
+FROM k_examination_type
+
+union
+
+SELECT
+ 9014,
+ 0,
+ '' || id, -- ,
+substring(shorttext from 1 for 10),
+ substring(defaulttext from 1 for 100),
+ substring(longtext from 1 for 150),
+null::char(1),-- astat,
+null::char(1), --parent
+uniquename,
+ null::char(1) ,--bund_apnr
+substring('' || k_language_id from 1 for 3),--sprache,
+date('01.01.1900'), --gueltig von
+date('01.01.2900'), --gueltig bis
+id , --sourcesystem_id
+'' || hiskey_id , -- hiskey,
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+sortorder
+ FROM k_examform
+
+ union
+SELECT
+ 41,
+ 0,
+ '' || id, -- ,
+substring(shorttext from 1 for 10),
+ substring(defaulttext from 1 for 100),
+ substring(longtext from 1 for 150),
+null::char(1),-- astat,
+null::char(1), --parent
+uniquename,
+ null::char(1) ,--bund_apnr
+substring('' || k_language_id from 1 for 3),--sprache,
+date('01.01.1900'), --gueltig von
+date('01.01.2900'), --gueltig bis
+id , --sourcesystem_id
+'' || hiskey_id , -- hiskey,
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+sortorder
+ FROM course_specialization
+
+ union
+
+ SELECT
+ 9005,
+ 0,
+ '' || id, -- ,
+substring(shorttext from 1 for 10),
+ substring(defaulttext from 1 for 100),
+ substring(longtext from 1 for 150),
+null::char(1),-- astat,
+null::char(1), --parent
+uniquename,
+ null::char(1) ,--bund_apnr
+substring('' || k_language_id from 1 for 3),--sprache,
+date('01.01.1900'), --gueltig von
+date('01.01.2900'), --gueltig bis
+id , --sourcesystem_id
+'' || hiskey_id , -- hiskey,
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+sortorder
+ FROM k_accreditationtype
+
+ union
+
+ SELECT
+ 9006,
+ 0,
+ '' || id, -- ,
+substring(shorttext from 1 for 10),
+ substring(defaulttext from 1 for 100),
+ substring(longtext from 1 for 150),
+ astat,
+null::char(1), --parent
+uniquename,
+astat_guest_auditor ,--bund_apnr
+substring('' || k_language_id from 1 for 3),--sprache,
+date('01.01.1900'), --gueltig von
+date('01.01.2900'), --gueltig bis
+id , --sourcesystem_id
+'' || hiskey_id , -- hiskey,
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+sortorder
+ FROM k_field_of_study
+
+ union
+
+ SELECT DISTINCT
+ 9008,
+ 0,
+ '' || examination_office_no, -- ,
+substring(examination_office_no::varchar from 1 for 10),
+ substring(examination_office_no::varchar from 1 for 100),
+ substring(examination_office_no::varchar from 1 for 150),
+ '',
+null::char(1), --parent
+examination_office_no, --uniquename
+'' ,--bund_apnr
+'',--sprache,
+date('01.01.1900'), --gueltig von
+date('01.01.2900'), --gueltig bis
+examination_office_no::int , --sourcesystem_id
+'' , -- hiskey,
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+0
+ FROM tmp_course_of_study
+ ;
+
+" "txt" "$DBDELIMITER" "false" "unl/cifx.unl" >>$ERR 2>&1
+
+fi
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+
+
+ SELECT
+ --zuerst gemeinsame Schluessel von SOS, POS und ZUL
+ --die gleichen selects muessen auch in der zul_unload.xml sein!!!
+
+ 35,
+-1,
+ abint,
+ abint,--ktxt,
+ dtxt,
+ ltxt,
+astat,
+' ',--parent
+abint,--sortc1 wird später uniquename
+' ',
+' ' ,--sprache,
+' ', --gültig von
+' ', --gültig bis
+abint, --sourcesystem_id
+' ', --hiskey_id
+aikz, --struktur_c
+null as lid,
+null as parent_lid,
+null as sortorder
+ FROM k_abint
+ WHERE abint is not null
+
+ union
+SELECT
+ 30,
+-1,
+ stg,
+ stg as ktxt,
+ dtxt,
+ ltxt,
+astat,
+' ',--parent
+stg, --sortc1 wird später uniquename
+' ',--bund_apnr
+' ' ,--sprache,
+' ', --gültig von
+' ', --gültig bis
+stg , --sourcesystem_id
+' ', --hiskey_id
+fb , --struktur_c
+null as lid,
+null as parent_lid,
+null as sortorder
+ FROM k_stg
+ WHERE stg is not null
+
+ union
+ SELECT
+ 601,
+ -1,
+ cast(hzbart as Char(10)) as hzbart,
+ cast(hzbart as Char(10)) as ktxt,
+ dtxt,
+ ltxt,
+ astat,
+ '',
+ cast(hzbart as Char(10)) as uniquename,
+ '',
+ '',
+ '', --gültig von
+ '', --gültig bis
+ cast(hzbart as Char(10)) as sourcesystem_id,
+ '', --hiskey_id
+ '' , --struktur_c
+null as lid,
+null as parent_lid,
+null as sortorder
+ FROM k_hzbart
+ union
+ SELECT
+ 612,
+ -1,
+ stufrm,
+ stufrm as ktxt,
+ dtxt,
+ ltxt,
+ astat,
+ '',
+ stufrm ,
+ '',
+ '',
+ '', --gültig von
+ '', --gültig bis
+ stufrm , --sourcesystem_id
+ '', --hiskey_id
+ '' , --struktur_c
+null as lid,
+null as parent_lid,
+null as sortorder
+ FROM k_stufrm
+ -- union
+ -- SELECT
+ -- 614,
+-- -1,
+ -- kzfa,
+ -- kzfa as ktxt,
+ -- dtxt,
+ -- ltxt,
+ -- '' ,--his_kzfa,
+-- kzfa,
+-- kzfa ,
+-- '',
+-- '' ,--sprache,
+-- '', --gültig von
+-- '', --gültig bis
+-- kzfa , --sourcesystem_id
+-- '' , --hiskey_id
+-- '' --struktur_c
+ -- FROM k_kzfa
+ --
+ union
+ SELECT
+ 613,
+-1,
+ hrst,
+ hrst as ktxt,
+ dtxt,
+ ltxt,
+astat,
+' ' ,--his_hrst,
+hrst ,
+' ',
+' ',
+' ', --gültig von
+' ', --gültig bis
+hrst, --sourcesystem_id
+' ' , --hiskey_id
+' ' , --struktur_c
+null as lid,
+null as parent_lid,
+null as sortorder
+ FROM k_hrst
+-- union
+ -- SELECT
+ -- 622,
+ -- -1,
+ -- pstatus,
+ -- pstatus as ktxt,
+ -- dtxt,
+ -- ltxt,
+ -- '',
+ -- '',
+ -- pstatus ,
+ -- '',
+ -- '',
+-- '', --gültig von
+-- '', --gültig bis
+-- pstatus , --sourcesystem_id
+-- '' , --hiskey_id
+-- '' , --struktur_c
+--null as lid,
+--null as parent_lid,
+--null as sortorder
+ -- FROM k_pstatus
+ union
+ SELECT
+ 11,
+ -1,
+ ikfz,
+ ktxt,
+ dtxt,
+ ltxt,
+ astat,
+ '',
+ ikfz,
+ bland,
+ '' ,
+ '', --gültig von
+ '', --gültig bis
+ ikfz , --sourcesystem_id
+ '' , --hiskey_id
+ aikz , --struktur_c
+null as lid,
+null as parent_lid,
+null as sortorder
+ FROM k_ikfz
+ union
+ SELECT
+ 12,
+ 0,
+ akfz,
+ akfz as ktxt,
+ dtxt,
+ ltxt,
+ astat,
+ '',
+ akfz,--uniqename
+ erdteil,
+ '' ,
+ '', --gültig von
+ '', --gültig bis
+ akfz , --sourcesystem_id
+ '' , --hiskey_id
+ '' ,--egmitgl struktur_c
+null as lid,
+null as parent_lid,
+null as sortorder
+ FROM k_akfz
+ WHERE akfz is not null
+ --and aikz='A'
+ -- union
+-- SELECT
+ -- 12,
+-- 0,
+ -- akfz,
+ -- akfz as ktxt,
+ -- dtxt,
+ -- ltxt,
+-- astat,
+-- '',
+-- akfz,--bei staaten ist astat=uniqename
+-- erdteil,
+-- '' ,
+-- '', --gültig von
+-- '01.01.2009', --gültig bis
+-- akfz , --sourcesystem_id
+-- '' , --hiskey_id
+-- '' --struktur_c
+ -- FROM k_akfz
+ -- WHERE akfz is not null
+ -- and (aikz='I' or aikz is null)
+ -- union
+-- SELECT
+ -- 8,
+-- 0,
+ -- bland,
+ -- bland as ktxt,
+ -- dtxt,
+ -- ltxt,
+-- astat,
+-- '',
+-- bland,
+-- '',
+-- '',
+-- '', --gültig von
+-- '', --gültig bis
+-- bland , --sourcesystem_id
+-- '' , --hiskey_id
+-- '' --struktur_c
+ -- FROM k_bland
+ -- WHERE bland is not null
+ -- union
+ -- SELECT
+ -- 9011,
+-- 0,
+ -- ppruef, --Achtung: in CO Typ char(18)
+ -- kname,
+ -- nachname ,
+ -- nachname || ', '|| vorname ,
+-- '',
+-- '',
+-- ppruef,
+-- '',
+-- '',
+-- '', --gültig von
+-- '', --gültig bis
+-- ppruef , --sourcesystem_id
+-- '' , --hiskey_id
+-- '' --struktur_c
+ -- FROM k_ppruef
+ -- WHERE ppruef is not null
+ union
+SELECT
+ 9001,
+0,
+ stathissos,--status,
+ stathissos as ktxt,
+ dtxt,
+ ltxt ,
+astat,
+' ',
+stathissos,--status,
+' ',
+' ',
+' ', --gültig von
+' ', --gültig bis
+stathissos, --sourcesystem_id
+' ' , --hiskey_id
+' ' , --struktur_c
+null as lid,
+null as parent_lid,
+null as sortorder
+ FROM k_status
+ WHERE status is not null
+ union
+ SELECT
+ 90,
+-1,
+'' || O.fb, -- reffb,
+'',-- ktxt,
+ O.dtxt,
+O.ltxt,
+'',
+'',
+'' ,
+'',
+'',--sprache,
+'', --gültig von
+'', --gültig bis
+'' || O.fb , --sourcesystem_id
+'', --hiskey_id
+'' , --struktur_c
+null as lid,
+null as parent_lid,
+null as sortorder
+ FROM k_fb O
+ where O.fb in (select distinct fb from k_abstgv)
+-- where aikz='A'
+-- and (sprache ='D' or sprache is null)
+
+-- union
+-- SELECT
+-- 619,
+---1,
+-- lehreinh,
+-- ktxt,
+-- dtxt,
+-- ltxt,
+--'',
+--'',
+--lehreinh ,
+--'',
+--'',
+--'', --gültig von
+--'', --gültig bis
+--lehreinh , --sourcesystem_id
+--'' , --hiskey_id
+--'' --struktur_c
+-- FROM k_le
+-- where lehreinh is not null
+-- and trim(lehreinh)!=''
+ -- union
+ -- SELECT
+ -- 27,
+-- -1,
+ -- gdbu,
+ -- gdbu as ktxt,
+ -- dtxt,
+ -- ltxt,
+-- astat,
+-- '',
+-- gdbu ,
+-- '',
+-- '',
+-- '', --gültig von
+-- '', --gültig bis
+-- gdbu , --sourcesystem_id
+-- '', --his_gdbu , --hiskey_id
+-- '' --struktur_c
+ -- FROM k_gdbu
+ -- where gdbu is not null
+ --and aikz='A'
+ union
+ SELECT
+ 62,
+-1,
+ gdex,
+ gdex as ktxt,
+ dtxt,
+ ltxt,
+astat,
+' ',
+gdex ,
+' ',
+' ',
+' ', --gültig von
+' ', --gültig bis
+gdex , --sourcesystem_id
+' ' , --hiskey_id
+' ' , --struktur_c
+null as lid,
+null as parent_lid,
+null as sortorder
+ FROM k_gdex
+ where gdex is not null
+ ;
+
+
+" "txt" "$DBDELIMITER" "false" "unl/cifx.unl" >>$ERR 2>&1
+
+fi
+
+fi
+
+if [ "$SX_CLIENT" = "dbaccess" ]
+then
+echo "Unload with dbaccess" >>$ERR 2>&1
+
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/cifx.unl"
+
+
+
+
+
+ SELECT
+ --zuerst gemeinsame Schluessel von SOS, POS und ZUL
+ --die gleichen selects muessen auch in der zul_unload.xml sein!!!
+
+ 35,
+-1,
+ refabint,
+ ktxt,
+ dtxt,
+ ltxt,
+astat,
+null::char(1),--parent
+refabint,--sortc1 wird später uniquename
+null::char(1),
+sprache,
+null::char(1), --gültig von
+null::char(1), --gültig bis
+refabint, --sourcesystem_id
+null::char(1), --hiskey_id
+aikz, --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+null::integer as sortorder
+ FROM k_abint
+ WHERE refabint is not null and refabint != '' and refabint != ''
+ and (sprache='D' or sprache is null)
+ union
+SELECT
+ 30,
+-1,
+ refstg,
+ ktxt,
+ dtxt,
+ ltxt,
+astat,
+null::char(1),--parent
+refstg, --sortc1 wird später uniquename
+null::char(1),--bund_apnr
+sprache,
+null::char(1), --gültig von
+null::char(1), --gültig bis
+refstg , --sourcesystem_id
+null::char(1), --hiskey_id
+fb, --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+null::integer as sortorder
+ FROM k_stg
+ WHERE refstg is not null
+ and (sprache='D' or sprache is null)
+ and trim (refstg) !=''
+union
+SELECT
+ 39,
+-1,
+ refvert,
+ ktxt,
+ dtxt,
+ ltxt,
+null::char(1),
+null::char(1),
+vert,
+null::char(1),
+sprache,
+null::char(1), --gültig von
+null::char(1), --gültig bis
+refvert , --sourcesystem_id
+null::char(1), --hiskey_id
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+null::integer as sortorder
+ FROM k_vert
+ WHERE refvert is not null
+ and (sprache='D' or sprache is null)
+ and trim (refvert) !=''
+
+ union
+SELECT
+ 41,
+0,
+ schwp,
+ ktxt,
+ dtxt,
+ ltxt,
+null::char(1),
+null::char(1),
+schwp,
+null::char(1),
+sprache ,
+null::char(1), --gültig von
+null::char(1), --gültig bis
+schwp, --sourcesystem_id
+null::char(1), --hiskey_id
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+null::integer as sortorder
+
+ FROM k_schwp
+ WHERE schwp is not null
+ and trim(schwp) != ''
+ union
+ SELECT
+ 601,
+-1,
+ hzbart,
+ ktxt,
+ dtxt,
+ ltxt,
+astat,
+null::char(1),
+hzbart ,
+null::char(1),
+null::char(1),
+null::char(1), --gültig von
+null::char(1), --gültig bis
+hzbart , --sourcesystem_id
+null::char(1), --hiskey_id
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+null::integer as sortorder
+ FROM k_hzbart
+ union
+ SELECT
+ 612,
+-1,
+ stufrm,
+ ktxt,
+ dtxt,
+ ltxt,
+astat,
+null::char(1),
+stufrm ,
+null::char(1),
+null::char(1),
+null::char(1), --gültig von
+null::char(1), --gültig bis
+stufrm , --sourcesystem_id
+null::char(1), --hiskey_id
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+null::integer as sortorder
+ FROM k_stufrm
+ union
+ SELECT
+ 614,
+-1,
+ kzfa,
+ ktxt,
+ dtxt,
+ ltxt,
+ his_kzfa as astat,
+null::char(1) as parent, --refkzfa,
+kzfa ,
+null::char(1),
+sprache,
+null::char(1), --gültig von
+null::char(1), --gültig bis
+kzfa , --sourcesystem_id
+null::char(1) , --hiskey_id
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+null::integer as sortorder
+ FROM k_kzfa
+ where (sprache='D' or sprache is null)
+ union
+ SELECT
+ 613,
+-1,
+ hrst,
+ ktxt,
+ dtxt,
+ ltxt,
+astat,
+his_hrst,
+hrst ,
+null::char(1),
+null::char(1),
+null::char(1), --gültig von
+null::char(1), --gültig bis
+hrst, --sourcesystem_id
+null::char(1) , --hiskey_id
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+null::integer as sortorder
+ FROM k_hrst
+ union
+ SELECT
+ 616,
+-1,
+ stuart,
+ ktxt,
+ dtxt,
+ ltxt,
+astat,
+null::char(1),
+stuart ,
+null::char(1),
+null::char(1),
+null::char(1), --gültig von
+null::char(1), --gültig bis
+stuart , --sourcesystem_id
+null::char(1) , --hiskey_id
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+null::integer as sortorder
+ FROM k_stuart
+ union
+ SELECT
+ 620,
+-1,
+ astfr,
+ ktxt,
+ dtxt,
+ ltxt,
+null::char(1),
+null::char(1),
+astfr ,
+null::char(1),
+null::char(1),
+null::char(1), --gültig von
+null::char(1), --gültig bis
+astfr , --sourcesystem_id
+null::char(1) , --hiskey_id
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+null::integer as sortorder
+ FROM k_astfr
+ where astfr is not null
+ and trim(astfr)!=''
+ union
+ SELECT
+ 621,
+-1,
+ astgrp,
+ ktxt,
+ dtxt,
+ ltxt,
+null::char(1),
+null::char(1),
+astgrp ,
+null::char(1),
+null::char(1),
+null::char(1), --gültig von
+null::char(1), --gültig bis
+astgrp , --sourcesystem_id
+null::char(1) , --hiskey_id
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+null::integer as sortorder
+ FROM k_astgrp
+ where astgrp is not null
+ and trim(astgrp)!=''
+ union
+ SELECT
+ 618,
+-1,
+ abext,
+ ktxt,
+ dtxt,
+ ltxt,
+astat,
+astat,
+abext ,
+null::char(1),
+null::char(1),
+null::char(1), --gültig von
+null::char(1), --gültig bis
+abext , --sourcesystem_id
+null::char(1) , --hiskey_id
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+null::integer as sortorder
+ FROM k_abext
+ union
+ SELECT
+ 622,
+ -1,
+ refpstatus,
+ ktxt,
+ dtxt,
+ ltxt,
+ null::char(1),
+ null::char(1),
+ refpstatus ,
+ null::char(1),
+ null::char(1),
+null::char(1), --gültig von
+null::char(1), --gültig bis
+refpstatus , --sourcesystem_id
+null::char(1) , --hiskey_id
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+null::integer as sortorder
+ FROM k_pstatus
+ where aikz='A'
+ and (sprache='D' or sprache is null)
+
+ union
+
+ SELECT
+ 40,
+-1,
+ stutyp,
+ ktxt,
+ dtxt,
+ ltxt,
+astat,
+null::char(1),
+stutyp ,
+null::char(1),
+null::char(1),
+null::char(1), --gültig von
+null::char(1), --gültig bis
+stutyp , --sourcesystem_id
+null::char(1) , --hiskey_id
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+null::integer as sortorder
+ FROM k_stutyp
+union
+SELECT
+ 11,
+-1,
+ ikfz,
+ ktxt,
+ dtxt,
+ ltxt,
+astat,
+null::char(1),
+ikfz,
+bland,
+null::char(1) ,
+null::char(1), --gültig von
+null::char(1), --gültig bis
+ikfz , --sourcesystem_id
+null::char(1) , --hiskey_id
+aikz, --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+null::integer as sortorder
+ FROM k_ikfz
+ WHERE astat is not null
+ --and aikz ='A'
+ union
+SELECT
+ 12,
+0,
+ akfz,
+ ktxt,
+ dtxt,
+ ltxt,
+astat,
+null::char(1),
+akfz,--uniqename
+erdteil,
+null::char(1) ,
+null::char(1), --gültig von
+null::char(1), --gültig bis
+akfz , --sourcesystem_id
+null::char(1) , --hiskey_id
+egmitgl, --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+null::integer as sortorder
+ FROM k_akfz
+ WHERE akfz is not null
+ and (sprache ='D' or sprache is null)
+ and aikz='A'
+ union
+SELECT
+ 12,
+0,
+ akfz,
+ ktxt,
+ dtxt,
+ ltxt,
+astat,
+null::char(1),
+akfz,--bei staaten ist astat=uniqename
+erdteil,
+null::char(1) ,
+null::char(1), --gültig von
+'01.01.2009', --gültig bis
+akfz , --sourcesystem_id
+null::char(1) , --hiskey_id
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+null::integer as sortorder
+ FROM k_akfz
+ WHERE akfz is not null
+ and (sprache ='D' or sprache is null)
+ and aikz='I'
+ union
+SELECT
+ 8,
+0,
+ bland,
+ ktxt,
+ dtxt,
+ ltxt,
+astat,
+null::char(1),
+bland,
+null::char(1),
+null::char(1),
+null::char(1), --gültig von
+null::char(1), --gültig bis
+bland , --sourcesystem_id
+null::char(1) , --hiskey_id
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+null::integer as sortorder
+ FROM k_bland
+ WHERE bland is not null
+ union
+ SELECT
+ 9011,
+0,
+ ppruefer,
+ kname,
+ nachname ,
+ nachname || ', '|| vorname ,
+null::char(1),
+null::char(1),
+ppruefer,
+null::char(1),
+null::char(1),
+null::char(1), --gültig von
+null::char(1), --gültig bis
+ppruefer , --sourcesystem_id
+null::char(1) , --hiskey_id
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+null::integer as sortorder
+ FROM k_ppruef
+ WHERE ppruefer is not null
+ and '$PRUEFER_NAME'='true'
+ union
+ SELECT
+ 305,
+0,
+ sperre,
+ ktxt,
+ dtxt ,
+ ltxt ,
+sos_sperre1::char(10),
+sos_sperre2::char(10),
+sperre,
+null::char(1),
+null::char(1),
+null::char(1), --gültig von
+null::char(1), --gültig bis
+sperre , --sourcesystem_id
+null::char(1) , --hiskey_id
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+null::integer as sortorder
+ FROM k_sperre
+ WHERE sperre is not null
+ and aikz='A'
+ union
+SELECT
+ 9001,
+0,
+ status,
+ ktxt,
+ dtxt,
+ ltxt ,
+astat,
+null::char(1),
+status,
+null::char(1),
+null::char(1),
+null::char(1), --gültig von
+null::char(1), --gültig bis
+status , --sourcesystem_id
+null::char(1) , --hiskey_id
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+null::integer as sortorder
+ FROM k_status
+ WHERE status is not null
+ and aikz='A'
+ union
+SELECT
+ 9013,
+0,
+ modulart,
+ ktxt,
+ dtxt ,
+ ltxt ,
+null::char(1),
+null::char(1),
+modulart,
+null::char(1),
+sprache,
+null::char(1), --gültig von
+null::char(1), --gültig bis
+modulart , --sourcesystem_id
+null::char(1) , --hiskey_id
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+null::integer as sortorder
+ FROM k_modulart
+ WHERE modulart is not null
+ and aikz='A'
+ union
+
+ SELECT
+ 90,
+-1,
+ reffb,
+ ktxt,
+ dtxt,
+ ltxt,
+null::char(1),
+null::char(1),
+fb ,
+null::char(1),
+sprache,
+null::char(1), --gültig von
+null::char(1), --gültig bis
+reffb , --sourcesystem_id
+null::char(1) , --hiskey_id
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+null::integer as sortorder
+ FROM k_fb
+ where aikz='A'
+ and (sprache ='D' or sprache is null)
+ union
+ SELECT
+ 9012,
+ -1,
+ stort,
+ ktxt,
+ dtxt,
+ ltxt,
+ astat,
+ null::char(1),
+ stort ,
+ null::char(1),
+ null::char(1),
+null::char(1), --gültig von
+null::char(1), --gültig bis
+stort , --sourcesystem_id
+null::char(1) , --hiskey_id
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+null::integer as sortorder
+ FROM k_stort
+ where aikz='A'
+
+ union
+ SELECT
+ 619,
+-1,
+ lehreinh,
+ ktxt,
+ dtxt,
+ ltxt,
+null::char(1),
+null::char(1),
+lehreinh ,
+null::char(1),
+null::char(1),
+null::char(1), --gültig von
+null::char(1), --gültig bis
+lehreinh , --sourcesystem_id
+null::char(1) , --hiskey_id
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+null::integer as sortorder
+ FROM k_le
+ where lehreinh is not null
+ and trim(lehreinh)!=''
+ union
+ SELECT
+ 27,
+-1,
+ gdbu,
+ ktxt,
+ dtxt,
+ ltxt,
+astat,
+null::char(1),
+gdbu ,
+null::char(1),
+null::char(1),
+null::char(1), --gültig von
+null::char(1), --gültig bis
+gdbu , --sourcesystem_id
+his_gdbu , --hiskey_id
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+null::integer as sortorder
+ FROM k_gdbu
+ where gdbu is not null
+ --and aikz='A'
+ and trim(gdbu)!=''
+ union
+ SELECT
+ 62,
+-1,
+ gdex,
+ ktxt,
+ dtxt,
+ ltxt,
+astat,
+null::char(1),
+gdex ,
+null::char(1),
+null::char(1),
+null::char(1), --gültig von
+null::char(1), --gültig bis
+gdex , --sourcesystem_id
+null::char(1) , --hiskey_id
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+null::integer as sortorder
+ FROM k_gdex
+ where gdex is not null
+ --and aikz='A'
+ and trim(gdex)!=''
+ union
+ SELECT
+ 624,
+-1,
+ pvermerk,
+ ktxt,
+ dtxt ,
+ ltxt ,
+astat,
+null::char(1) ,
+pvermerk,
+null::char(1) ,
+null::char(1),
+null::char(1), --gültig von
+null::char(1), --gültig bis
+pvermerk , --sourcesystem_id
+null::char(1) , --hiskey_id
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+null::integer as sortorder
+ FROM k_pverme
+ WHERE pvermerk is not null
+ and aikz='A'
+ and trim(pvermerk) != ''
+union
+ SELECT
+ 9002,
+-1,
+ part,
+ ktxt,
+ dtxt ,
+ ltxt ,
+astat,
+null::char(1) ,
+part,
+null::char(1) ,
+null::char(1),
+null::char(1), --gültig von
+null::char(1), --gültig bis
+part , --sourcesystem_id
+prfgkz , --hiskey_id
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+null::integer as sortorder
+ FROM k_part
+ WHERE part is not null
+union
+ SELECT
+ 618,
+-1,
+ abext,
+ ktxt,
+ dtxt ,
+ ltxt ,
+astat,
+null::char(1) ,
+abext,
+null::char(1) ,
+null::char(1),
+null::char(1), --gültig von
+null::char(1), --gültig bis
+abext , --sourcesystem_id
+null::char(1) , --hiskey_id
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+null::integer as sortorder
+ FROM k_abext
+ WHERE abext is not null
+union
+ SELECT
+ 623,
+-1,
+ art,
+ substring(dtxt from 1 for 10),
+ dtxt ,
+ artmind ,
+astat,
+null::char(1) ,
+art,
+null::char(1) ,
+null::char(1),
+null::char(1), --gültig von
+null::char(1), --gültig bis
+art , --sourcesystem_id
+null::char(1) , --hiskey_id
+null::char(1) , --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+null::integer as sortorder
+ FROM k_minder
+ WHERE art is not null
+ and aikz='A'
+union
+ SELECT
+ 9014,
+-1,
+ refpform,
+ substring(dtxt from 1 for 10),
+ dtxt ,
+ null::char(1) ,
+null::char(1),
+null::char(1) ,
+null::char(1),
+null::char(1) ,
+null::char(1),
+null::char(1), --gültig von
+null::char(1), --gültig bis
+refpform , --sourcesystem_id
+null::char(1) , --hiskey_id
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+null::integer as sortorder
+ FROM k_pform
+ WHERE refpform is not null
+ and aikz='A'
+ ;
+
+
+--Ende
+END_cifx
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/cifx.unl"
+
+
+
+ SELECT
+ 35,
+-1,
+ ('' || id)::varchar(255) as id,
+ substring(shorttext from 1 for 10),
+ substring(defaulttext from 1 for 100),
+ substring(longtext from 1 for 150),
+substring(astat_land from 1 for 10),--astat,
+null::char(1),--parent
+uniquename,
+substring(astat_bund from 1 for 10), --bund_apnr
+substring('' || k_language_id from 1 for 3), --sprache,
+valid_from, --gueltig von
+valid_to, --gueltig bis
+id , --sourcesystem_id
+'' || hiskey_id,
+null::char(1), --struktur_c
+lid::char(255) as lid,
+null::char(255) as parent_lid,
+sortorder
+ FROM degree
+ where (hiskey_id !=2 or hiskey_id is null) --keine externen Abschlüsse
+ union
+SELECT 30,
+-1,
+ '' || S.id,
+substring(S.shorttext from 1 for 10),
+substring(S.defaulttext from 1 for 100),
+substring(S.longtext from 1 for 150),
+substring(S.astat_land from 1 for 10) as astat,
+null::char(1),--parent
+substring(S.uniquename from 1 for 10), --sortc1
+S.astat_bund ,--bund_apnr
+substring('' || S.k_language_id from 1 for 3),--sprache,
+S.valid_from, --gueltig von
+S.valid_to, --gueltig bis
+S.id , --sourcesystem_id
+min('' || F.uniquename) as astgrp, --hiskey_id
+min('' || C.orgunit_id), --struktur_c ist FB, keine Duplikate erlaubt
+S.lid::char(255) as lid,
+null::char(255) as parent_lid,
+S.sortorder
+ FROM subject S, tmp_course_of_study C left outer join k_field_of_study F on
+(F.id=C.k_field_of_study_id)
+where S.id=C.subject_id
+and S.hiskey_id=1 --nur interne Fächer
+group by 1,2,3,4,5,6,7,9,10,11,12,13,14
+
+union
+SELECT
+--Vertiefung
+ 39,
+-1,
+ '' || id,
+ substring(shorttext from 1 for 10),
+ substring(defaulttext from 1 for 100),
+ substring(longtext from 1 for 150),
+null::char(1) as astat,
+null::char(1),--parent
+uniquename,
+null::char(1) ,--bund_apnr
+substring('' || k_language_id from 1 for 3),--sprache,
+valid_from, --gueltig von
+valid_to, --gueltig bis
+id , --sourcesystem_id
+null::char(1), --hiskey_id
+null::char(1), --struktur_c
+lid::char(255) as lid,
+null::char(255) as parent_lid,
+sortorder
+ FROM major_field_of_study
+
+union
+--HZB-Art
+ SELECT
+ 601,
+-1,
+ '' || id,
+ substring(shorttext from 1 for 10),
+ substring(defaulttext from 1 for 100),
+ substring(longtext from 1 for 150),
+substring('' || astat from 1 for 10),--astat,
+null::char(1),--parent
+uniquename,
+null::char(1), --bund_apnr
+substring('' || k_language_id from 1 for 3),--sprache,
+valid_from, --gueltig von
+valid_to, --gueltig bis
+id , --sourcesystem_id
+null::char(1), --hiskey_id
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+sortorder
+ FROM entrance_qualification_type
+ union
+ SELECT
+ 612,
+ -1,
+ '' || id, --stufrm
+ substring(shorttext from 1 for 10),
+ substring(defaulttext from 1 for 100),
+ substring(longtext from 1 for 150),
+substring('' || astat from 1 for 10),--astat,
+null::char(1),--parent
+uniquename,
+null::char(1), --bund_apnr
+substring('' || k_language_id from 1 for 3),--sprache,
+null::date, --gueltig von
+null::date, --gueltig bis
+id , --sourcesystem_id
+'' || hiskey_id,
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+sortorder
+ FROM k_form_of_studies
+ union
+ --kzfa:
+ SELECT
+ 614,
+-1,
+ '' || id,
+ substring(shorttext from 1 for 10),
+ substring(defaulttext from 1 for 100),
+ substring(longtext from 1 for 150),
+ '' || hiskey_id, --astat
+null::char(1),--parent
+uniquename,
+null::char(1), --bund_apnr
+substring('' || k_language_id from 1 for 3),--sprache,
+date('01.01.1900'), --gueltig von
+date('01.01.2900'), --gueltig bis
+id , --sourcesystem_id
+'' || hiskey_id,
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+sortorder
+FROM k_subject_indicator
+ union
+ SELECT
+ 613,
+ -1,
+ '' || id, -- hrst,
+substring(shorttext from 1 for 10),
+ substring(defaulttext from 1 for 100),
+ substring(longtext from 1 for 150),
+substring(astat from 1 for 10), -- astat,
+null::char(1), --parent
+uniquename,
+ null::char(1) ,--bund_apnr
+substring('' || k_language_id from 1 for 3),--sprache,
+date('01.01.1900'), --gueltig von
+date('01.01.2900'), --gueltig bis
+id , --sourcesystem_id
+'' || hiskey_id, -- his_hrst,
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+sortorder
+ FROM k_studentstatus
+ union
+ -- stuart:
+ SELECT
+ 616,
+-1,
+ '' || id,
+ substring(shorttext from 1 for 10),
+ substring(defaulttext from 1 for 100),
+ substring(longtext from 1 for 150),
+ substring('' || astat from 1 for 10),--astat,
+null::char(1),--parent
+uniquename,
+null::char(1), --bund_apnr
+substring('' || k_language_id from 1 for 3),--sprache,
+null::date, --gueltig von
+null::date, --gueltig bis
+id , --sourcesystem_id
+null::char(1)|| hiskey_id,
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+sortorder
+ FROM k_type_of_study
+ union
+ -- k_astgrp:
+ SELECT
+ 621,
+ -1,
+ '' || id,
+ substring(shorttext from 1 for 10),
+ substring(defaulttext from 1 for 100),
+ substring(longtext from 1 for 150),
+ substring('' || astat from 1 for 10),--astat,
+ '',--parent
+ uniquename,
+ '', --bund_apnr
+ substring('' || k_language_id from 1 for 3),--sprache,
+ valid_from, --gueltig von
+ valid_to, --gueltig bis
+ id , --sourcesystem_id
+ ''|| hiskey_id,
+ '' , --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+sortorder
+ FROM k_field_of_study
+ where hiskey_id=4
+ union
+ -- pvermerk:
+ SELECT
+ 624,
+-1,
+ '' || id,
+ substring(shorttext from 1 for 10),
+ substring(defaulttext from 1 for 100),
+ substring(longtext from 1 for 150),
+null::char(1),--substring('' || astat from 1 for 10),--astat,
+null::char(1),--parent
+uniquename,
+null::char(1), --bund_apnr
+substring('' || k_language_id from 1 for 3),--sprache,
+null::date, --gueltig von
+null::date, --gueltig bis
+id , --sourcesystem_id
+'' || hiskey_id,
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+sortorder
+ FROM k_remark_on_exam
+ union
+ -- stutyp,
+ SELECT
+ 40,
+ -1,
+ '' || id,
+ substring(shorttext from 1 for 10),
+ substring(defaulttext from 1 for 100),
+ substring(longtext from 1 for 150),
+substring('' || astat from 1 for 10),--astat,
+null::char(1),--parent
+uniquename,
+null::char(1), --bund_apnr
+substring('' || k_language_id from 1 for 3),--sprache,
+null::date, --gueltig von
+null::date, --gueltig bis
+id , --sourcesystem_id
+'' || hiskey_id,
+null::char(1) , --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+sortorder
+ FROM k_enrollment
+ union
+ SELECT
+ 11,
+ -1,
+ '' || id, -- ikfz,
+substring(shorttext from 1 for 10),
+ substring(defaulttext from 1 for 100),
+ substring(longtext from 1 for 150),
+substring(astat from 1 for 10), -- astat,
+null::char(1), --parent
+uniquename,
+substring(astat from 1 for 2), -- (bund_apnr) hier StBa-Key für Bundesland aus astat,
+substring('' || k_language_id from 1 for 3),--sprache,
+valid_from, --gueltig von
+valid_to, --gueltig bis
+id , --sourcesystem_id
+''|| lid , --hiskey_id
+'I' , --struktur_c
+lid::char(255) as lid,
+null::char(255) as parent_lid,
+sortorder
+FROM district
+where valid_to < current_date
+union
+ SELECT
+ 11,
+ -1,
+ '' || id, -- ikfz,
+substring(shorttext from 1 for 10),
+ substring(defaulttext from 1 for 100),
+ substring(longtext from 1 for 150),
+substring(astat from 1 for 10), -- astat,
+null::char(1), --parent
+uniquename,
+substring(astat from 1 for 2), -- (bund_apnr) hier StBa-Key für Bundesland aus astat,
+substring('' || k_language_id from 1 for 3),--sprache,
+valid_from, --gueltig von
+valid_to, --gueltig bis
+id , --sourcesystem_id
+''|| lid , --hiskey_id
+'A' , --struktur_c
+lid::char(255) as lid,
+null::char(255) as parent_lid,
+sortorder
+FROM district
+where (valid_to >= current_date or valid_to is null)
+ union
+SELECT
+ 12,
+0,
+ '' || id,
+ substring(shorttext from 1 for 10),
+ substring(defaulttext from 1 for 100),
+ substring(longtext from 1 for 150),
+substring('' || astat from 1 for 10),--astat,
+null::char(1),--parent
+substring('' || uniquename from 1 for 10), --sortc1
+substring('' || continent from 1 for 10), -- erdteil
+substring('' || k_language_id from 1 for 3),--sprache,
+valid_from, --gueltig von
+valid_to, --gueltig bis
+id , --sourcesystem_id
+'' || lid, --hiskey_id
+'I', --struktur_c
+lid::char(255) as lid,
+null::char(255) as parent_lid,
+sortorder
+ FROM country
+ where valid_to < current_date
+ union
+SELECT
+ 12,
+0,
+ '' || id,
+ substring(shorttext from 1 for 10),
+ substring(defaulttext from 1 for 100),
+ substring(longtext from 1 for 150),
+substring('' || astat from 1 for 10),--astat,
+null::char(1),--parent
+substring('' || uniquename from 1 for 10), --sortc1
+substring('' || continent from 1 for 10), -- erdteil
+substring('' || k_language_id from 1 for 3),--sprache,
+valid_from, --gueltig von
+valid_to, --gueltig bis
+id , --sourcesystem_id
+'' || lid, --hiskey_id
+'A' , --struktur_c
+lid::char(255) as lid,
+null::char(255) as parent_lid,
+sortorder
+ FROM country
+ where (valid_to >= current_date or valid_to is null)
+ union
+ SELECT
+ 8,
+ -1,
+ uniquename,
+ substring(shorttext from 1 for 10),
+ substring(defaulttext from 1 for 100),
+ substring(longtext from 1 for 150),
+substring('' || astat from 1 for 10),--astat,
+null::char(1),--parent
+uniquename,
+null::char(1), --bund_apnr
+substring('' || k_language_id from 1 for 3),--sprache,
+null::date, --gueltig von
+null::date, --gueltig bis
+id , --sourcesystem_id
+'' ,--hiskey_id,
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+sortorder
+ FROM k_federal_state
+ WHERE uniquename not in ('99','BO') --ohne Ausland und Berlin Ost
+ union
+SELECT
+ 9001,
+ 0,
+ '' || id, -- status,
+substring(shorttext from 1 for 10),
+ substring(defaulttext from 1 for 100),
+ substring(longtext from 1 for 150),
+substring(astat from 1 for 10), -- astat,
+null::char(1), --parent
+uniquename,
+ null::char(1) ,--bund_apnr
+substring('' || k_language_id from 1 for 3),--sprache,
+date('01.01.1900'), --gueltig von
+date('01.01.2900'), --gueltig bis
+id , --sourcesystem_id
+'' || hiskey_id, -- his_hrst,
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+sortorder
+ FROM k_studystatus
+ union
+SELECT
+ 9013,
+ 0,
+ '' || id, -- modulart,
+substring(shorttext from 1 for 10),
+ substring(defaulttext from 1 for 100),
+ substring(longtext from 1 for 150),
+null::char(1) , -- astat,
+null::char(1), --parent
+substring(uniquename from 1 for 10),--uniquename
+ null::char(1) ,--bund_apnr
+substring('' || k_language_id from 1 for 3),--sprache,
+date('01.01.1900'), --gueltig von
+date('01.01.2900'), --gueltig bis
+id , --sourcesystem_id
+'' || hiskey_id , --hiskey_id
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+sortorder
+FROM k_elementtype
+union
+ SELECT
+ 90,
+-1,
+ '' || O.id,
+ substring(O.shorttext from 1 for 10),
+ substring(O.defaulttext from 1 for 100),
+ substring(O.longtext from 1 for 150),
+substring(O.astat from 1 for 10),--astat,
+substring('' || O.parent_lid from 1 for 3),--parent
+O.uniquename,
+null::char(1), --bund_apnr
+substring('' || O.k_language_id from 1 for 3),--sprache,
+O.valid_from, --gueltig von
+O.valid_to, --gueltig bis
+O.id, --sourcesystem_id
+'' || T.hiskey_id,
+null::char(1), --struktur_c
+O.lid::char(255) as lid,
+O.parent_lid::char(255) as parent_lid,
+O.sortorder
+ FROM orgunit O,k_orgunittype T
+ where O.k_orgunittype_id=T.id
+ and T.hiskey_id=4 --Fachbereich
+union
+ SELECT
+ 619,
+-1,
+ '' || O.id,
+ substring(O.shorttext from 1 for 10),
+ substring(O.defaulttext from 1 for 100),
+ substring(O.longtext from 1 for 150),
+substring(O.astat from 1 for 10),--astat,
+substring('' || O.parent_lid from 1 for 3),--parent
+substring(O.uniquename from 1 for 10), --sortc1
+null::char(1), --bund_apnr
+substring('' || O.k_language_id from 1 for 3),--sprache,
+O.valid_from, --gueltig von
+O.valid_to, --gueltig bis
+O.id, --sourcesystem_id
+'' || T.hiskey_id,
+null::char(1), --struktur_c
+O.lid::char(255) as lid,
+O.parent_lid::char(255) as parent_lid,
+O.sortorder
+ FROM orgunit O,k_orgunittype T
+ where O.k_orgunittype_id=T.id
+ and T.hiskey_id=7 --Lehreinheit
+ union
+ --Standorte
+ SELECT
+ 9012,
+ -1,
+ '' || id,
+ substring(shorttext from 1 for 10),
+ substring(defaulttext from 1 for 100),
+ substring(longtext from 1 for 150),
+substring(astat from 1 for 10), --astat,
+null::char(1),--parent
+uniquename,
+substring('' || hiskey_id from 1 for 10), --bund_apnr
+substring('' || k_language_id from 1 for 3),--sprache,
+date('01.01.1900'), --gueltig von
+date('01.01.2900'), --gueltig bis
+id, --sourcesystem_id
+null::char(1), --hiskey_id
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+sortorder
+ FROM k_place_of_studies
+ union
+ --pstatus
+ SELECT
+ 622,
+ -1,
+ '' || id,
+ substring(shorttext from 1 for 10),
+ substring(defaulttext from 1 for 100),
+ substring(longtext from 1 for 150),
+ null::char(1),
+null::char(1),--parent
+uniquename,
+null::char(1), --bund_apnr
+substring('' || k_language_id from 1 for 3),--sprache,
+date('01.01.1900'), --gueltig von
+date('01.01.2900'), --gueltig bis
+id, --sourcesystem_id
+'' || hiskey_id,
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+sortorder
+ FROM k_workstatus
+
+ union
+ --Beurlaubungsgründe
+SELECT
+ 27,
+ 0,
+ '' || id, -- gdbu,
+substring(shorttext from 1 for 10),
+ substring(defaulttext from 1 for 100),
+ substring(longtext from 1 for 150),
+substring(astat from 1 for 10), -- astat,
+null::char(1), --parent
+uniquename,
+ null::char(1) ,--bund_apnr
+substring('' || k_language_id from 1 for 3),--sprache,
+valid_from, --gueltig von
+valid_to, --gueltig bis
+id , --sourcesystem_id
+null::char(1) , -- hiskey,
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+sortorder
+ FROM k_reason_of_leave
+
+union
+
+SELECT -- Exmatrikulationsgründe
+ 62,
+ 0,
+ '' || S.id, -- gdbu,
+ substring(S.shorttext from 1 for 10),
+ substring(S.defaulttext from 1 for 100),
+ substring(S.longtext from 1 for 150),
+ substring(S.astat from 1 for 10), -- astat,
+ '', --parent
+ S.uniquename,
+ substring(S.astat from 1 for 10), --bund_apnr
+ substring('' || S.k_language_id from 1 for 3),--sprache,
+ S.valid_from, --gueltig von
+ S.valid_to, --gueltig bis
+ S.id , --sourcesystem_id
+ '' || S.hiskey_id, -- hiskey,
+ '', --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+sortorder
+FROM k_reason_of_finishing S
+
+union
+
+SELECT
+ 9002,
+ 0,
+ '' || id, -- ,
+ substring(shorttext from 1 for 10),
+ substring(defaulttext from 1 for 100),
+ substring(longtext from 1 for 150),
+ null::char(1),-- astat,
+ null::char(1), --parent
+ uniquename,
+ null::char(1) ,--bund_apnr
+ substring('' || k_language_id from 1 for 3),--sprache,
+ date('01.01.1900'), --gueltig von
+ date('01.01.2900'), --gueltig bis
+ id , --sourcesystem_id
+ '' || hiskey_id , -- hiskey,
+ null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+sortorder
+FROM k_examination_type
+
+union
+
+SELECT
+ 9014,
+ 0,
+ '' || id, -- ,
+substring(shorttext from 1 for 10),
+ substring(defaulttext from 1 for 100),
+ substring(longtext from 1 for 150),
+null::char(1),-- astat,
+null::char(1), --parent
+uniquename,
+ null::char(1) ,--bund_apnr
+substring('' || k_language_id from 1 for 3),--sprache,
+date('01.01.1900'), --gueltig von
+date('01.01.2900'), --gueltig bis
+id , --sourcesystem_id
+'' || hiskey_id , -- hiskey,
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+sortorder
+ FROM k_examform
+
+ union
+SELECT
+ 41,
+ 0,
+ '' || id, -- ,
+substring(shorttext from 1 for 10),
+ substring(defaulttext from 1 for 100),
+ substring(longtext from 1 for 150),
+null::char(1),-- astat,
+null::char(1), --parent
+uniquename,
+ null::char(1) ,--bund_apnr
+substring('' || k_language_id from 1 for 3),--sprache,
+date('01.01.1900'), --gueltig von
+date('01.01.2900'), --gueltig bis
+id , --sourcesystem_id
+'' || hiskey_id , -- hiskey,
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+sortorder
+ FROM course_specialization
+
+ union
+
+ SELECT
+ 9005,
+ 0,
+ '' || id, -- ,
+substring(shorttext from 1 for 10),
+ substring(defaulttext from 1 for 100),
+ substring(longtext from 1 for 150),
+null::char(1),-- astat,
+null::char(1), --parent
+uniquename,
+ null::char(1) ,--bund_apnr
+substring('' || k_language_id from 1 for 3),--sprache,
+date('01.01.1900'), --gueltig von
+date('01.01.2900'), --gueltig bis
+id , --sourcesystem_id
+'' || hiskey_id , -- hiskey,
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+sortorder
+ FROM k_accreditationtype
+
+ union
+
+ SELECT
+ 9006,
+ 0,
+ '' || id, -- ,
+substring(shorttext from 1 for 10),
+ substring(defaulttext from 1 for 100),
+ substring(longtext from 1 for 150),
+ astat,
+null::char(1), --parent
+uniquename,
+astat_guest_auditor ,--bund_apnr
+substring('' || k_language_id from 1 for 3),--sprache,
+date('01.01.1900'), --gueltig von
+date('01.01.2900'), --gueltig bis
+id , --sourcesystem_id
+'' || hiskey_id , -- hiskey,
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+sortorder
+ FROM k_field_of_study
+
+ union
+
+ SELECT DISTINCT
+ 9008,
+ 0,
+ '' || examination_office_no, -- ,
+substring(examination_office_no::varchar from 1 for 10),
+ substring(examination_office_no::varchar from 1 for 100),
+ substring(examination_office_no::varchar from 1 for 150),
+ '',
+null::char(1), --parent
+examination_office_no, --uniquename
+'' ,--bund_apnr
+'',--sprache,
+date('01.01.1900'), --gueltig von
+date('01.01.2900'), --gueltig bis
+examination_office_no::int , --sourcesystem_id
+'' , -- hiskey,
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+0
+ FROM tmp_course_of_study
+ ;
+
+--Ende
+END_cifx
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/cifx.unl"
+
+
+
+
+ SELECT
+ --zuerst gemeinsame Schluessel von SOS, POS und ZUL
+ --die gleichen selects muessen auch in der zul_unload.xml sein!!!
+
+ 35,
+-1,
+ abint,
+ abint,--ktxt,
+ dtxt,
+ ltxt,
+astat,
+' ',--parent
+abint,--sortc1 wird später uniquename
+' ',
+' ' ,--sprache,
+' ', --gültig von
+' ', --gültig bis
+abint, --sourcesystem_id
+' ', --hiskey_id
+aikz, --struktur_c
+null as lid,
+null as parent_lid,
+null as sortorder
+ FROM k_abint
+ WHERE abint is not null
+
+ union
+SELECT
+ 30,
+-1,
+ stg,
+ stg as ktxt,
+ dtxt,
+ ltxt,
+astat,
+' ',--parent
+stg, --sortc1 wird später uniquename
+' ',--bund_apnr
+' ' ,--sprache,
+' ', --gültig von
+' ', --gültig bis
+stg , --sourcesystem_id
+' ', --hiskey_id
+fb , --struktur_c
+null as lid,
+null as parent_lid,
+null as sortorder
+ FROM k_stg
+ WHERE stg is not null
+
+ union
+ SELECT
+ 601,
+ -1,
+ cast(hzbart as Char(10)) as hzbart,
+ cast(hzbart as Char(10)) as ktxt,
+ dtxt,
+ ltxt,
+ astat,
+ '',
+ cast(hzbart as Char(10)) as uniquename,
+ '',
+ '',
+ '', --gültig von
+ '', --gültig bis
+ cast(hzbart as Char(10)) as sourcesystem_id,
+ '', --hiskey_id
+ '' , --struktur_c
+null as lid,
+null as parent_lid,
+null as sortorder
+ FROM k_hzbart
+ union
+ SELECT
+ 612,
+ -1,
+ stufrm,
+ stufrm as ktxt,
+ dtxt,
+ ltxt,
+ astat,
+ '',
+ stufrm ,
+ '',
+ '',
+ '', --gültig von
+ '', --gültig bis
+ stufrm , --sourcesystem_id
+ '', --hiskey_id
+ '' , --struktur_c
+null as lid,
+null as parent_lid,
+null as sortorder
+ FROM k_stufrm
+ -- union
+ -- SELECT
+ -- 614,
+-- -1,
+ -- kzfa,
+ -- kzfa as ktxt,
+ -- dtxt,
+ -- ltxt,
+ -- '' ,--his_kzfa,
+-- kzfa,
+-- kzfa ,
+-- '',
+-- '' ,--sprache,
+-- '', --gültig von
+-- '', --gültig bis
+-- kzfa , --sourcesystem_id
+-- '' , --hiskey_id
+-- '' --struktur_c
+ -- FROM k_kzfa
+ --
+ union
+ SELECT
+ 613,
+-1,
+ hrst,
+ hrst as ktxt,
+ dtxt,
+ ltxt,
+astat,
+' ' ,--his_hrst,
+hrst ,
+' ',
+' ',
+' ', --gültig von
+' ', --gültig bis
+hrst, --sourcesystem_id
+' ' , --hiskey_id
+' ' , --struktur_c
+null as lid,
+null as parent_lid,
+null as sortorder
+ FROM k_hrst
+-- union
+ -- SELECT
+ -- 622,
+ -- -1,
+ -- pstatus,
+ -- pstatus as ktxt,
+ -- dtxt,
+ -- ltxt,
+ -- '',
+ -- '',
+ -- pstatus ,
+ -- '',
+ -- '',
+-- '', --gültig von
+-- '', --gültig bis
+-- pstatus , --sourcesystem_id
+-- '' , --hiskey_id
+-- '' , --struktur_c
+--null as lid,
+--null as parent_lid,
+--null as sortorder
+ -- FROM k_pstatus
+ union
+ SELECT
+ 11,
+ -1,
+ ikfz,
+ ktxt,
+ dtxt,
+ ltxt,
+ astat,
+ '',
+ ikfz,
+ bland,
+ '' ,
+ '', --gültig von
+ '', --gültig bis
+ ikfz , --sourcesystem_id
+ '' , --hiskey_id
+ aikz , --struktur_c
+null as lid,
+null as parent_lid,
+null as sortorder
+ FROM k_ikfz
+ union
+ SELECT
+ 12,
+ 0,
+ akfz,
+ akfz as ktxt,
+ dtxt,
+ ltxt,
+ astat,
+ '',
+ akfz,--uniqename
+ erdteil,
+ '' ,
+ '', --gültig von
+ '', --gültig bis
+ akfz , --sourcesystem_id
+ '' , --hiskey_id
+ '' ,--egmitgl struktur_c
+null as lid,
+null as parent_lid,
+null as sortorder
+ FROM k_akfz
+ WHERE akfz is not null
+ --and aikz='A'
+ -- union
+-- SELECT
+ -- 12,
+-- 0,
+ -- akfz,
+ -- akfz as ktxt,
+ -- dtxt,
+ -- ltxt,
+-- astat,
+-- '',
+-- akfz,--bei staaten ist astat=uniqename
+-- erdteil,
+-- '' ,
+-- '', --gültig von
+-- '01.01.2009', --gültig bis
+-- akfz , --sourcesystem_id
+-- '' , --hiskey_id
+-- '' --struktur_c
+ -- FROM k_akfz
+ -- WHERE akfz is not null
+ -- and (aikz='I' or aikz is null)
+ -- union
+-- SELECT
+ -- 8,
+-- 0,
+ -- bland,
+ -- bland as ktxt,
+ -- dtxt,
+ -- ltxt,
+-- astat,
+-- '',
+-- bland,
+-- '',
+-- '',
+-- '', --gültig von
+-- '', --gültig bis
+-- bland , --sourcesystem_id
+-- '' , --hiskey_id
+-- '' --struktur_c
+ -- FROM k_bland
+ -- WHERE bland is not null
+ -- union
+ -- SELECT
+ -- 9011,
+-- 0,
+ -- ppruef, --Achtung: in CO Typ char(18)
+ -- kname,
+ -- nachname ,
+ -- nachname || ', '|| vorname ,
+-- '',
+-- '',
+-- ppruef,
+-- '',
+-- '',
+-- '', --gültig von
+-- '', --gültig bis
+-- ppruef , --sourcesystem_id
+-- '' , --hiskey_id
+-- '' --struktur_c
+ -- FROM k_ppruef
+ -- WHERE ppruef is not null
+ union
+SELECT
+ 9001,
+0,
+ stathissos,--status,
+ stathissos as ktxt,
+ dtxt,
+ ltxt ,
+astat,
+' ',
+stathissos,--status,
+' ',
+' ',
+' ', --gültig von
+' ', --gültig bis
+stathissos, --sourcesystem_id
+' ' , --hiskey_id
+' ' , --struktur_c
+null as lid,
+null as parent_lid,
+null as sortorder
+ FROM k_status
+ WHERE status is not null
+ union
+ SELECT
+ 90,
+-1,
+'' || O.fb, -- reffb,
+'',-- ktxt,
+ O.dtxt,
+O.ltxt,
+'',
+'',
+'' ,
+'',
+'',--sprache,
+'', --gültig von
+'', --gültig bis
+'' || O.fb , --sourcesystem_id
+'', --hiskey_id
+'' , --struktur_c
+null as lid,
+null as parent_lid,
+null as sortorder
+ FROM k_fb O
+ where O.fb in (select distinct fb from k_abstgv)
+-- where aikz='A'
+-- and (sprache ='D' or sprache is null)
+
+-- union
+-- SELECT
+-- 619,
+---1,
+-- lehreinh,
+-- ktxt,
+-- dtxt,
+-- ltxt,
+--'',
+--'',
+--lehreinh ,
+--'',
+--'',
+--'', --gültig von
+--'', --gültig bis
+--lehreinh , --sourcesystem_id
+--'' , --hiskey_id
+--'' --struktur_c
+-- FROM k_le
+-- where lehreinh is not null
+-- and trim(lehreinh)!=''
+ -- union
+ -- SELECT
+ -- 27,
+-- -1,
+ -- gdbu,
+ -- gdbu as ktxt,
+ -- dtxt,
+ -- ltxt,
+-- astat,
+-- '',
+-- gdbu ,
+-- '',
+-- '',
+-- '', --gültig von
+-- '', --gültig bis
+-- gdbu , --sourcesystem_id
+-- '', --his_gdbu , --hiskey_id
+-- '' --struktur_c
+ -- FROM k_gdbu
+ -- where gdbu is not null
+ --and aikz='A'
+ union
+ SELECT
+ 62,
+-1,
+ gdex,
+ gdex as ktxt,
+ dtxt,
+ ltxt,
+astat,
+' ',
+gdex ,
+' ',
+' ',
+' ', --gültig von
+' ', --gültig bis
+gdex , --sourcesystem_id
+' ' , --hiskey_id
+' ' , --struktur_c
+null as lid,
+null as parent_lid,
+null as sortorder
+ FROM k_gdex
+ where gdex is not null
+ ;
+
+
+--Ende
+END_cifx
+fi
+
+fi
+
+#
+#Unload-Job k_pvers
+#
+echo "--------------------------------------------------------------" >>$ERR
+echo "Unload-Job: k_pvers" >>$ERR
+
+
+if [ "$SX_CLIENT" = "psql" ]
+then
+echo "Unload with jdbc for Postgres" >>$ERR 2>&1
+
+
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+SELECT pvers,
+ aikz,
+ ktxt,
+ dtxt,
+ ltxt,
+ sprache,
+ refpvers FROM k_pvers
+ where refpvers is not null;
+
+" "txt" "$DBDELIMITER" "false" "unl/k_pvers.unl" >>$ERR 2>&1
+
+fi
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+ SELECT * from tmp_xdummy
+where 1=0;
+
+
+" "txt" "$DBDELIMITER" "false" "unl/k_pvers.unl" >>$ERR 2>&1
+
+fi
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+select * from k_stg where 1=0;
+
+" "txt" "$DBDELIMITER" "false" "unl/k_pvers.unl" >>$ERR 2>&1
+
+fi
+
+fi
+
+if [ "$SX_CLIENT" = "dbaccess" ]
+then
+echo "Unload with dbaccess" >>$ERR 2>&1
+
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/k_pvers.unl"
+
+
+SELECT pvers,
+ aikz,
+ ktxt,
+ dtxt,
+ ltxt,
+ sprache,
+ refpvers FROM k_pvers
+ where refpvers is not null;
+
+--Ende
+END_k_pvers
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/k_pvers.unl"
+
+
+ SELECT * from tmp_xdummy
+where 1=0;
+
+
+--Ende
+END_k_pvers
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/k_pvers.unl"
+
+
+select * from k_stg where 1=0;
+
+--Ende
+END_k_pvers
+fi
+
+fi
+
+#
+#Unload-Job k_stg
+#
+echo "--------------------------------------------------------------" >>$ERR
+echo "Unload-Job: k_stg" >>$ERR
+
+
+if [ "$SX_CLIENT" = "psql" ]
+then
+echo "Unload with jdbc for Postgres" >>$ERR 2>&1
+
+
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+SELECT refstg,
+ aikz,
+ ktxt,
+ dtxt,
+ ltxt,
+ astat,
+ fb,
+ astfr,
+ astgrp,
+ zulplaugr,
+ kzfaarray,
+ sortkz1,
+ sprache,
+ refstg
+FROM k_stg
+where refstg is not null
+ and (sprache='D' or sprache is null)
+ and trim (refstg) !='';
+
+" "txt" "$DBDELIMITER" "false" "unl/k_stg.unl" >>$ERR 2>&1
+
+fi
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+SELECT * --wird oben bei cifx entladen, und in trans_k_stg.sql gefüllt
+FROM subject S
+where 1=0;
+
+" "txt" "$DBDELIMITER" "false" "unl/k_stg.unl" >>$ERR 2>&1
+
+fi
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+SELECT stg,
+ aikz,
+ stg,
+ dtxt,
+ ltxt,
+ astat,
+ fb,
+' ',--astfr,
+' ',--astgrp,
+' ',--zulplaugr,
+' ',--kzfaarray,
+' ',--sortkz1,
+' ',--sprache,
+stg --refstg
+FROM k_stg
+where stg is not null
+ ;
+
+" "txt" "$DBDELIMITER" "false" "unl/k_stg.unl" >>$ERR 2>&1
+
+fi
+
+fi
+
+if [ "$SX_CLIENT" = "dbaccess" ]
+then
+echo "Unload with dbaccess" >>$ERR 2>&1
+
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/k_stg.unl"
+
+
+SELECT refstg,
+ aikz,
+ ktxt,
+ dtxt,
+ ltxt,
+ astat,
+ fb,
+ astfr,
+ astgrp,
+ zulplaugr,
+ kzfaarray,
+ sortkz1,
+ sprache,
+ refstg
+FROM k_stg
+where refstg is not null
+ and (sprache='D' or sprache is null)
+ and trim (refstg) !='';
+
+--Ende
+END_k_stg
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/k_stg.unl"
+
+
+SELECT * --wird oben bei cifx entladen, und in trans_k_stg.sql gefüllt
+FROM subject S
+where 1=0;
+
+--Ende
+END_k_stg
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/k_stg.unl"
+
+
+SELECT stg,
+ aikz,
+ stg,
+ dtxt,
+ ltxt,
+ astat,
+ fb,
+' ',--astfr,
+' ',--astgrp,
+' ',--zulplaugr,
+' ',--kzfaarray,
+' ',--sortkz1,
+' ',--sprache,
+stg --refstg
+FROM k_stg
+where stg is not null
+ ;
+
+--Ende
+END_k_stg
+fi
+
+fi
+
+#
+#Unload-Job k_stgext
+#
+echo "--------------------------------------------------------------" >>$ERR
+echo "Unload-Job: k_stgext" >>$ERR
+
+
+if [ "$SX_CLIENT" = "psql" ]
+then
+echo "Unload with jdbc for Postgres" >>$ERR 2>&1
+
+
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+SELECT stgext,
+ aikz,
+ ktxt,
+ dtxt,
+ ltxt,
+ astat,
+ astfr,
+ astgrp FROM k_stgext;
+
+" "txt" "$DBDELIMITER" "false" "unl/k_stgext.unl" >>$ERR 2>&1
+
+fi
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+ SELECT * from tmp_xdummy
+where 1=0;
+
+
+" "txt" "$DBDELIMITER" "false" "unl/k_stgext.unl" >>$ERR 2>&1
+
+fi
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+SELECT stgext,
+ aikz,
+ stgext as ktxt,
+ dtxt,
+ ltxt,
+ astat,
+ ' ' ,--astfr,
+ ' ' --astgrp
+ FROM k_stgext;
+
+" "txt" "$DBDELIMITER" "false" "unl/k_stgext.unl" >>$ERR 2>&1
+
+fi
+
+fi
+
+if [ "$SX_CLIENT" = "dbaccess" ]
+then
+echo "Unload with dbaccess" >>$ERR 2>&1
+
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/k_stgext.unl"
+
+
+SELECT stgext,
+ aikz,
+ ktxt,
+ dtxt,
+ ltxt,
+ astat,
+ astfr,
+ astgrp FROM k_stgext;
+
+--Ende
+END_k_stgext
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/k_stgext.unl"
+
+
+ SELECT * from tmp_xdummy
+where 1=0;
+
+
+--Ende
+END_k_stgext
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/k_stgext.unl"
+
+
+SELECT stgext,
+ aikz,
+ stgext as ktxt,
+ dtxt,
+ ltxt,
+ astat,
+ ' ' ,--astfr,
+ ' ' --astgrp
+ FROM k_stgext;
+
+--Ende
+END_k_stgext
+fi
+
+fi
+
+#
+#Unload-Job k_abstgv
+#
+echo "--------------------------------------------------------------" >>$ERR
+echo "Unload-Job: k_abstgv" >>$ERR
+
+
+if [ "$SX_CLIENT" = "psql" ]
+then
+echo "Unload with jdbc for Postgres" >>$ERR 2>&1
+
+if [ $VERSION = "5" ]
+then
+
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+SELECT abstgv,
+ aikz,
+ ktxt,
+ dtxt,
+ ltxt,
+ pversion,
+ frist1,
+ frist2,
+ frist3,
+ frist3_alt,
+ frist4,
+ astat1,
+ astat2,
+ astgrp,
+ prfgamt,
+ vglgrp,
+ fb,
+ stutyp,
+ kzfa,
+ immsemkz,
+ kzfaarray,
+ stort,
+ lehreinh,
+ stkkurs1,
+ stkkurs2,
+ stkkurs3,
+ prax1fsem,
+ prax2fsem,
+ abschl,
+ stg,
+ vert,
+ schwp,
+ stuart,
+ stufrm,
+ abstitel,
+ abstgvnr,
+ null::char(1) as efh,
+ null::char(1) as regelstz,
+ null::char(1) as email_part,
+ null::char(1) as login_part,
+ null::char(1) as sem_gueltigbis,
+ guthaben_ects
+ FROM k_abstgv;
+
+" "txt" "$DBDELIMITER" "false" "unl/k_abstgv.unl" >>$ERR 2>&1
+
+fi
+
+fi
+if [ $VERSION = "6" -o $VERSION = "7" -o $VERSION = "8" -o $VERSION = "9" -o $VERSION = "10" -o $VERSION = "11" -o $VERSION = "12" -o $VERSION = "13" ]
+then
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+SELECT abstgv,
+ aikz,
+ ktxt,
+ dtxt,
+ ltxt,
+ pversion,
+ frist1,
+ frist2,
+ frist3,
+ frist3_alt,
+ frist4,
+ astat1,
+ astat2,
+ astgrp,
+ prfgamt,
+ vglgrp,
+ fb,
+ stutyp,
+ kzfa,
+ immsemkz,
+ kzfaarray,
+ stort,
+ lehreinh,
+ stkkurs1,
+ stkkurs2,
+ stkkurs3,
+ prax1fsem,
+ prax2fsem,
+ abschl,
+ stg,
+ vert,
+ schwp,
+ stuart,
+ stufrm,
+ abstitel,
+ abstgvnr,
+ efh,
+ regelstz,
+ email_part,
+ login_part,
+ sem_gueltigbis,
+ guthaben_ects
+ FROM k_abstgv;
+
+" "txt" "$DBDELIMITER" "false" "unl/k_abstgv.unl" >>$ERR 2>&1
+
+fi
+
+fi
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+SELECT substring(C.uniquename from 1 for 10) ,-- abstgv,
+ 'A',-- aikz,
+ substring(C.shorttext from 1 for 10),
+ substring(C.defaulttext from 1 for 25),
+ substring(C.longtext from 1 for 150),
+ C.k_examinationversion_id,-- pversion,
+ null::char(1),-- frist1,
+ null::char(1),-- frist2,
+ null::char(1),-- frist3,
+ null::char(1),-- frist3_alt,
+ null::char(1),-- frist4,
+ null::char(1),-- astat1,
+ null::char(1),-- astat2,
+ null::char(1),-- astgrp,
+ null::char(1),-- prfgamt,
+ null::char(1),-- vglgrp,
+ C.orgunit_id,-- fb,
+ C.k_enrollment_id,-- stutyp,
+ C.k_subject_indicator_id,-- kzfa,
+ null::char(1),-- immsemkz,
+ null::char(1),-- kzfaarray,
+ C.k_place_of_studies_id,-- stort,
+ C.teachingunit_orgunit_id,-- lehreinh,
+ null::char(1),-- stkkurs1,
+ null::char(1),-- stkkurs2,
+ null::char(1),-- stkkurs3,
+ null::char(1),-- prax1fsem,
+ null::char(1),-- prax2fsem,
+ C.degree_id,-- abschl,
+ C.subject_id,-- stg,
+ C.major_field_of_study_id,-- vert,
+ C.course_specialization_id,-- schwp,
+ null::char(1),-- stuart,
+ C.k_form_of_studies_id,-- stufrm,
+ null::char(1),-- abstitel,
+ C.id,-- abstgvnr,
+ null::char(1),-- efh,
+ C.regular_number_of_semesters,-- regelstz,
+ null::char(1),-- email_part,
+ null::char(1),-- login_part,
+ '' || C.to_term_year || T.termnumber, -- sem_gueltigbis
+ part_of_studies
+ FROM tmp_course_of_study C
+ left outer join term_type T on (C.to_term_type_id=T.id);
+
+" "txt" "$DBDELIMITER" "false" "unl/k_abstgv.unl" >>$ERR 2>&1
+
+fi
+if [ $VERSION = "6" -o $VERSION = "7" -o $VERSION = "8" -o $VERSION = "9" -o $VERSION = "10" -o $VERSION = "11" -o $VERSION = "12" -o $VERSION = "13" ]
+then
+if [ "$SOURCESYSTEM" = "co" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+SELECT '' ,--abstgv,
+ aikz,
+ '' ,--ktxt,
+ dtxt,
+ ltxt,
+ pversion,
+ '' ,--frist1,
+ '' ,--frist2,
+ '' ,--frist3,
+ '' ,--frist3_alt,
+ '' ,--frist4,
+ '' ,--astat1,
+ '' ,--astat2,
+ '' ,--astgrp,
+ prfgamt,
+ '' ,--vglgrp,
+ fb,
+ '' ,--stutyp,
+ kzfa,
+ '' ,--immsemkz,
+ '' ,--kzfaarray,
+ '' ,--stort,
+ lehreinh,
+ '' ,--stkkurs1,
+ '' ,--stkkurs2,
+ '' ,--stkkurs3,
+ '' ,--prax1fsem,
+ '' ,--prax2fsem,
+ abschl,
+ stg,
+ '' ,--vert,
+ '' ,--schwp,
+ '' ,--stuart,
+ '' ,--stufrm,
+ '' ,--abstitel,
+ abstgvnr,
+ '' ,--efh,
+ regelstz,
+ '' ,-- email_part,
+ '' ,--login_part,
+ sem_gueltigbis,
+ '' -- ects
+ FROM k_abstgv;
+
+" "txt" "$DBDELIMITER" "false" "unl/k_abstgv.unl" >>$ERR 2>&1
+
+fi
+
+fi
+
+fi
+
+if [ "$SX_CLIENT" = "dbaccess" ]
+then
+echo "Unload with dbaccess" >>$ERR 2>&1
+
+#Unload sql-Statement
+if [ $VERSION = "5" ]
+then
+
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/k_abstgv.unl"
+
+
+SELECT abstgv,
+ aikz,
+ ktxt,
+ dtxt,
+ ltxt,
+ pversion,
+ frist1,
+ frist2,
+ frist3,
+ frist3_alt,
+ frist4,
+ astat1,
+ astat2,
+ astgrp,
+ prfgamt,
+ vglgrp,
+ fb,
+ stutyp,
+ kzfa,
+ immsemkz,
+ kzfaarray,
+ stort,
+ lehreinh,
+ stkkurs1,
+ stkkurs2,
+ stkkurs3,
+ prax1fsem,
+ prax2fsem,
+ abschl,
+ stg,
+ vert,
+ schwp,
+ stuart,
+ stufrm,
+ abstitel,
+ abstgvnr,
+ null::char(1) as efh,
+ null::char(1) as regelstz,
+ null::char(1) as email_part,
+ null::char(1) as login_part,
+ null::char(1) as sem_gueltigbis,
+ guthaben_ects
+ FROM k_abstgv;
+
+--Ende
+END_k_abstgv5
+fi
+
+fi
+#Unload sql-Statement
+if [ $VERSION = "6" -o $VERSION = "7" -o $VERSION = "8" -o $VERSION = "9" -o $VERSION = "10" -o $VERSION = "11" -o $VERSION = "12" -o $VERSION = "13" ]
+then
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/k_abstgv.unl"
+
+
+SELECT abstgv,
+ aikz,
+ ktxt,
+ dtxt,
+ ltxt,
+ pversion,
+ frist1,
+ frist2,
+ frist3,
+ frist3_alt,
+ frist4,
+ astat1,
+ astat2,
+ astgrp,
+ prfgamt,
+ vglgrp,
+ fb,
+ stutyp,
+ kzfa,
+ immsemkz,
+ kzfaarray,
+ stort,
+ lehreinh,
+ stkkurs1,
+ stkkurs2,
+ stkkurs3,
+ prax1fsem,
+ prax2fsem,
+ abschl,
+ stg,
+ vert,
+ schwp,
+ stuart,
+ stufrm,
+ abstitel,
+ abstgvnr,
+ efh,
+ regelstz,
+ email_part,
+ login_part,
+ sem_gueltigbis,
+ guthaben_ects
+ FROM k_abstgv;
+
+--Ende
+END_k_abstgv678910111213
+fi
+
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/k_abstgv.unl"
+
+
+SELECT substring(C.uniquename from 1 for 10) ,-- abstgv,
+ 'A',-- aikz,
+ substring(C.shorttext from 1 for 10),
+ substring(C.defaulttext from 1 for 25),
+ substring(C.longtext from 1 for 150),
+ C.k_examinationversion_id,-- pversion,
+ null::char(1),-- frist1,
+ null::char(1),-- frist2,
+ null::char(1),-- frist3,
+ null::char(1),-- frist3_alt,
+ null::char(1),-- frist4,
+ null::char(1),-- astat1,
+ null::char(1),-- astat2,
+ null::char(1),-- astgrp,
+ null::char(1),-- prfgamt,
+ null::char(1),-- vglgrp,
+ C.orgunit_id,-- fb,
+ C.k_enrollment_id,-- stutyp,
+ C.k_subject_indicator_id,-- kzfa,
+ null::char(1),-- immsemkz,
+ null::char(1),-- kzfaarray,
+ C.k_place_of_studies_id,-- stort,
+ C.teachingunit_orgunit_id,-- lehreinh,
+ null::char(1),-- stkkurs1,
+ null::char(1),-- stkkurs2,
+ null::char(1),-- stkkurs3,
+ null::char(1),-- prax1fsem,
+ null::char(1),-- prax2fsem,
+ C.degree_id,-- abschl,
+ C.subject_id,-- stg,
+ C.major_field_of_study_id,-- vert,
+ C.course_specialization_id,-- schwp,
+ null::char(1),-- stuart,
+ C.k_form_of_studies_id,-- stufrm,
+ null::char(1),-- abstitel,
+ C.id,-- abstgvnr,
+ null::char(1),-- efh,
+ C.regular_number_of_semesters,-- regelstz,
+ null::char(1),-- email_part,
+ null::char(1),-- login_part,
+ '' || C.to_term_year || T.termnumber, -- sem_gueltigbis
+ part_of_studies
+ FROM tmp_course_of_study C
+ left outer join term_type T on (C.to_term_type_id=T.id);
+
+--Ende
+END_k_abstgv
+fi
+#Unload sql-Statement
+if [ $VERSION = "6" -o $VERSION = "7" -o $VERSION = "8" -o $VERSION = "9" -o $VERSION = "10" -o $VERSION = "11" -o $VERSION = "12" -o $VERSION = "13" ]
+then
+if [ "$SOURCESYSTEM" = "co" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/k_abstgv.unl"
+
+
+SELECT '' ,--abstgv,
+ aikz,
+ '' ,--ktxt,
+ dtxt,
+ ltxt,
+ pversion,
+ '' ,--frist1,
+ '' ,--frist2,
+ '' ,--frist3,
+ '' ,--frist3_alt,
+ '' ,--frist4,
+ '' ,--astat1,
+ '' ,--astat2,
+ '' ,--astgrp,
+ prfgamt,
+ '' ,--vglgrp,
+ fb,
+ '' ,--stutyp,
+ kzfa,
+ '' ,--immsemkz,
+ '' ,--kzfaarray,
+ '' ,--stort,
+ lehreinh,
+ '' ,--stkkurs1,
+ '' ,--stkkurs2,
+ '' ,--stkkurs3,
+ '' ,--prax1fsem,
+ '' ,--prax2fsem,
+ abschl,
+ stg,
+ '' ,--vert,
+ '' ,--schwp,
+ '' ,--stuart,
+ '' ,--stufrm,
+ '' ,--abstitel,
+ abstgvnr,
+ '' ,--efh,
+ regelstz,
+ '' ,-- email_part,
+ '' ,--login_part,
+ sem_gueltigbis,
+ '' -- ects
+ FROM k_abstgv;
+
+--Ende
+END_k_abstgv678910111213
+fi
+
+fi
+
+fi
+
+#
+#Unload-Job sos_pord
+#
+echo "--------------------------------------------------------------" >>$ERR
+echo "Unload-Job: sos_pord" >>$ERR
+
+
+if [ "$SX_CLIENT" = "psql" ]
+then
+echo "Unload with jdbc for Postgres" >>$ERR 2>&1
+
+if [ $VERSION = "6" -o $VERSION = "7" -o $VERSION = "8" -o $VERSION = "9" -o $VERSION = "10" -o $VERSION = "11" -o $VERSION = "12" -o $VERSION = "13" ]
+then
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+
+SELECT abschl,
+ stg,
+ vert,
+ schwp,
+ kzfa,
+ pversion,
+ pnr,
+ pabschn,
+ pteil,
+ pdum,
+ pausw1,
+ pausw2,
+ pausw3,
+ pktxt,
+ pdtxt,
+ null::char(1), --wg. Umbrüchen erstmal auskommentiert : pltxt1,
+ null::char(1), --wg. Umbrüchen erstmal auskommentiert : pltxt2,
+ null::char(1), --wg. Umbrüchen erstmal auskommentiert : pltxt3,
+ null::char(1), --wg. Umbrüchen erstmal auskommentiert : pltxt4,
+ geldat,
+ ppflicht,
+ pform,
+ part,
+ pdauer,
+ partngb,
+ pfsem,
+ psws,
+ pminsem,
+ phoesem,
+ pmaxvbe,
+ pmaxver,
+ pzuver,
+ pmaxrueck,
+ pwfrist,
+ pfrist1,
+ pfrist2,
+ pfristr,
+ pnhstat3,
+ paenddat,
+ pnrvl1,
+ pnrvl2,
+ pnrvl3,
+ pnrvl4,
+ pnrvl5,
+ pvken1,
+ pvken2,
+ pvken3,
+ pvken4,
+ pvken5,
+ psort1,
+ psort2,
+ psort3,
+ pnra,
+ petgp,
+ pmerg,
+ pbedv,
+ pbedg,
+ pbedw,
+ vordipl,
+ pfnrex,
+ pbetrag,
+ panmkenn,
+ freivers,
+ pbetragz1,
+ pbetragz2,
+ pordnr,
+ bonus,
+ malus,
+ bogverb,
+ bogempf,
+ mogverb,
+ mogempf,
+ pnotpkt,
+ fb,
+ nacharb,
+ meldekz,
+ sivabschl,
+ sivstg,
+ sivvert,
+ sivschwp,
+ sivkzfa,
+ sivpversion,
+ zmadauer,
+ null::char(1), --wg. Umbrüchen erstmal auskommentiert :beleg,
+ null::char(1), --wg. Umbrüchen erstmal auskommentiert :diplkz,
+ bonus_bei_nb,
+ steuer_wvl,
+ bendauer,
+ disdauer,
+ diszmadauer,
+ instnr,
+ beschkat,
+ labgewicht,
+ standbearb,
+ modulturnus,
+ praesenzzeit,
+ selbstzeit,
+ workload,
+ modulart,
+ modulcode,
+ moduldauer,
+ zmamoduldauer,
+ verart,
+ max_teilnehmer,
+ null::char(1) --schriftlich
+FROM pord;
+
+
+" "txt" "$DBDELIMITER" "false" "unl/sos_pord.unl" >>$ERR 2>&1
+
+fi
+
+fi
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+ SELECT
+null::char(1),--C.degree_id,--abschl,
+null::char(1),--C.subject_id,--stg,
+null::char(1),--C.major_field_of_study_id, --vert,
+null::char(1),--C.course_specialization_id,--schwp,
+null::char(1),--C.k_subject_indicator_id,--kzfa,
+null::char(1),--C.k_examinationversion_id,--pversion,
+ U.official_statistics, --pnr
+ null::char(1),--pabschn,
+ null::char(1),--pteil,
+ null::char(1),--pdum,
+ null::char(1),--pausw1,
+ null::char(1),--pausw2,
+ null::char(1),--pausw3,
+ U.elementnr,--pktxt,
+ substring(U.defaulttext from 1 for 255),--pdtxt,
+ null::char(1), --wg. Umbrüchen erstmal auskommentiert : pltxt1,
+ null::char(1), --wg. Umbrüchen erstmal auskommentiert : pltxt2,
+ null::char(1), --wg. Umbrüchen erstmal auskommentiert : pltxt3,
+ null::char(1), --wg. Umbrüchen erstmal auskommentiert : pltxt4,
+ null::char(1),--geldat,
+ null::char(1),--ppflicht,
+ E.k_examform_id,--pform,
+ E.k_examination_type_id,--part,
+ null::char(1),--pdauer,
+ null::char(1),--partngb,
+R.recommended_semester::integer,--pfsem,
+ null::char(1),--psws,
+ null::char(1),--pminsem,
+ null::char(1),--phoesem,
+ null::char(1),--pmaxvbe,
+ null::char(1),--pmaxver,
+ null::char(1),--pzuver,
+ null::char(1),--pmaxrueck,
+ null::char(1),--pwfrist,
+ null::char(1),--pfrist1,
+ null::char(1),--pfrist2,
+ null::char(1),--pfristr,
+ null::char(1),--pnhstat3,
+ null::char(1),--paenddat,
+ null::char(1),--pnrvl1,
+ null::char(1),--pnrvl2,
+ null::char(1),--pnrvl3,
+ null::char(1),--pnrvl4,
+ null::char(1),--pnrvl5,
+ null::char(1),--pvken1,
+ null::char(1),--pvken2,
+ null::char(1),--pvken3,
+ null::char(1),--pvken4,
+ null::char(1),--pvken5,
+ null::char(1),--psort1,
+ null::char(1),--psort2,
+ null::char(1),--psort3,
+ null::char(1),--pnra,
+ null::char(1),--petgp,
+ null::char(1),--pmerg,
+ null::char(1),--pbedv,
+ null::char(1),--pbedg,
+ null::char(1),--pbedw,
+ null::char(1),--vordipl,
+ null::char(1),--pfnrex,
+ null::char(1),--pbetrag,
+ null::char(1),--panmkenn,
+ null::char(1),--freivers,
+ null::char(1),--pbetragz1,
+ null::char(1),--pbetragz2,
+ U.id,--pordnr,
+R.bonus,--bonus,
+ null::char(1),--malus,
+ null::char(1),--bogverb,
+ null::char(1),--bogempf,
+ null::char(1),--mogverb,
+ null::char(1),--mogempf,
+ null::char(1),--pnotpkt,
+ null::char(1),--fb,
+ null::char(1),--nacharb,
+ substring('' || U.official_statistics from 1 for 1),--meldekz,
+ null::char(1),--sivabschl,
+ null::char(1),--sivstg,
+ null::char(1),--sivvert,
+ null::char(1),--sivschwp,
+ null::char(1),--sivkzfa,
+ null::char(1),--sivpversion,
+ null::char(1),--zmadauer,
+ null::char(1), --wg. Umbrüchen erstmal auskommentiert :beleg,
+ null::char(1), --wg. Umbrüchen erstmal auskommentiert :diplkz,
+ null::char(1),--bonus_bei_nb,
+ null::char(1),--steuer_wvl,
+ null::char(1),--bendauer,
+ null::char(1),--disdauer,
+ null::char(1),--diszmadauer,
+ null::char(1),--instnr,
+ null::char(1),--beschkat,
+ null::char(1),--labgewicht,
+ null::char(1),--standbearb,
+ null::char(1),--modulturnus,
+ null::char(1),--praesenzzeit,
+ null::char(1),--selbstzeit,
+ null::char(1),--workload,
+ U.k_elementtype_id,--modulart,
+ null::char(1),--modulcode,
+ null::char(1),--moduldauer,
+ null::char(1),--zmamoduldauer,
+ null::char(1),--verart,
+ null::char(1), --max_teilnehmer
+ E.exam_written
+ FROM
+ unitrelation R, unit U left outer join examination E
+ on (E.unit_id=U.id)
+ where R.id=U.default_unitrelation_id
+ ;
+
+
+" "txt" "$DBDELIMITER" "false" "unl/sos_pord.unl" >>$ERR 2>&1
+
+fi
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+
+select * from k_stg where 1=0;
+
+
+" "txt" "$DBDELIMITER" "false" "unl/sos_pord.unl" >>$ERR 2>&1
+
+fi
+
+fi
+
+if [ "$SX_CLIENT" = "dbaccess" ]
+then
+echo "Unload with dbaccess" >>$ERR 2>&1
+
+#Unload sql-Statement
+if [ $VERSION = "6" -o $VERSION = "7" -o $VERSION = "8" -o $VERSION = "9" -o $VERSION = "10" -o $VERSION = "11" -o $VERSION = "12" -o $VERSION = "13" ]
+then
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/sos_pord.unl"
+
+
+
+SELECT abschl,
+ stg,
+ vert,
+ schwp,
+ kzfa,
+ pversion,
+ pnr,
+ pabschn,
+ pteil,
+ pdum,
+ pausw1,
+ pausw2,
+ pausw3,
+ pktxt,
+ pdtxt,
+ null::char(1), --wg. Umbrüchen erstmal auskommentiert : pltxt1,
+ null::char(1), --wg. Umbrüchen erstmal auskommentiert : pltxt2,
+ null::char(1), --wg. Umbrüchen erstmal auskommentiert : pltxt3,
+ null::char(1), --wg. Umbrüchen erstmal auskommentiert : pltxt4,
+ geldat,
+ ppflicht,
+ pform,
+ part,
+ pdauer,
+ partngb,
+ pfsem,
+ psws,
+ pminsem,
+ phoesem,
+ pmaxvbe,
+ pmaxver,
+ pzuver,
+ pmaxrueck,
+ pwfrist,
+ pfrist1,
+ pfrist2,
+ pfristr,
+ pnhstat3,
+ paenddat,
+ pnrvl1,
+ pnrvl2,
+ pnrvl3,
+ pnrvl4,
+ pnrvl5,
+ pvken1,
+ pvken2,
+ pvken3,
+ pvken4,
+ pvken5,
+ psort1,
+ psort2,
+ psort3,
+ pnra,
+ petgp,
+ pmerg,
+ pbedv,
+ pbedg,
+ pbedw,
+ vordipl,
+ pfnrex,
+ pbetrag,
+ panmkenn,
+ freivers,
+ pbetragz1,
+ pbetragz2,
+ pordnr,
+ bonus,
+ malus,
+ bogverb,
+ bogempf,
+ mogverb,
+ mogempf,
+ pnotpkt,
+ fb,
+ nacharb,
+ meldekz,
+ sivabschl,
+ sivstg,
+ sivvert,
+ sivschwp,
+ sivkzfa,
+ sivpversion,
+ zmadauer,
+ null::char(1), --wg. Umbrüchen erstmal auskommentiert :beleg,
+ null::char(1), --wg. Umbrüchen erstmal auskommentiert :diplkz,
+ bonus_bei_nb,
+ steuer_wvl,
+ bendauer,
+ disdauer,
+ diszmadauer,
+ instnr,
+ beschkat,
+ labgewicht,
+ standbearb,
+ modulturnus,
+ praesenzzeit,
+ selbstzeit,
+ workload,
+ modulart,
+ modulcode,
+ moduldauer,
+ zmamoduldauer,
+ verart,
+ max_teilnehmer,
+ null::char(1) --schriftlich
+FROM pord;
+
+
+--Ende
+END_sos_pord678910111213
+fi
+
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/sos_pord.unl"
+
+
+ SELECT
+null::char(1),--C.degree_id,--abschl,
+null::char(1),--C.subject_id,--stg,
+null::char(1),--C.major_field_of_study_id, --vert,
+null::char(1),--C.course_specialization_id,--schwp,
+null::char(1),--C.k_subject_indicator_id,--kzfa,
+null::char(1),--C.k_examinationversion_id,--pversion,
+ U.official_statistics, --pnr
+ null::char(1),--pabschn,
+ null::char(1),--pteil,
+ null::char(1),--pdum,
+ null::char(1),--pausw1,
+ null::char(1),--pausw2,
+ null::char(1),--pausw3,
+ U.elementnr,--pktxt,
+ substring(U.defaulttext from 1 for 255),--pdtxt,
+ null::char(1), --wg. Umbrüchen erstmal auskommentiert : pltxt1,
+ null::char(1), --wg. Umbrüchen erstmal auskommentiert : pltxt2,
+ null::char(1), --wg. Umbrüchen erstmal auskommentiert : pltxt3,
+ null::char(1), --wg. Umbrüchen erstmal auskommentiert : pltxt4,
+ null::char(1),--geldat,
+ null::char(1),--ppflicht,
+ E.k_examform_id,--pform,
+ E.k_examination_type_id,--part,
+ null::char(1),--pdauer,
+ null::char(1),--partngb,
+R.recommended_semester::integer,--pfsem,
+ null::char(1),--psws,
+ null::char(1),--pminsem,
+ null::char(1),--phoesem,
+ null::char(1),--pmaxvbe,
+ null::char(1),--pmaxver,
+ null::char(1),--pzuver,
+ null::char(1),--pmaxrueck,
+ null::char(1),--pwfrist,
+ null::char(1),--pfrist1,
+ null::char(1),--pfrist2,
+ null::char(1),--pfristr,
+ null::char(1),--pnhstat3,
+ null::char(1),--paenddat,
+ null::char(1),--pnrvl1,
+ null::char(1),--pnrvl2,
+ null::char(1),--pnrvl3,
+ null::char(1),--pnrvl4,
+ null::char(1),--pnrvl5,
+ null::char(1),--pvken1,
+ null::char(1),--pvken2,
+ null::char(1),--pvken3,
+ null::char(1),--pvken4,
+ null::char(1),--pvken5,
+ null::char(1),--psort1,
+ null::char(1),--psort2,
+ null::char(1),--psort3,
+ null::char(1),--pnra,
+ null::char(1),--petgp,
+ null::char(1),--pmerg,
+ null::char(1),--pbedv,
+ null::char(1),--pbedg,
+ null::char(1),--pbedw,
+ null::char(1),--vordipl,
+ null::char(1),--pfnrex,
+ null::char(1),--pbetrag,
+ null::char(1),--panmkenn,
+ null::char(1),--freivers,
+ null::char(1),--pbetragz1,
+ null::char(1),--pbetragz2,
+ U.id,--pordnr,
+R.bonus,--bonus,
+ null::char(1),--malus,
+ null::char(1),--bogverb,
+ null::char(1),--bogempf,
+ null::char(1),--mogverb,
+ null::char(1),--mogempf,
+ null::char(1),--pnotpkt,
+ null::char(1),--fb,
+ null::char(1),--nacharb,
+ substring('' || U.official_statistics from 1 for 1),--meldekz,
+ null::char(1),--sivabschl,
+ null::char(1),--sivstg,
+ null::char(1),--sivvert,
+ null::char(1),--sivschwp,
+ null::char(1),--sivkzfa,
+ null::char(1),--sivpversion,
+ null::char(1),--zmadauer,
+ null::char(1), --wg. Umbrüchen erstmal auskommentiert :beleg,
+ null::char(1), --wg. Umbrüchen erstmal auskommentiert :diplkz,
+ null::char(1),--bonus_bei_nb,
+ null::char(1),--steuer_wvl,
+ null::char(1),--bendauer,
+ null::char(1),--disdauer,
+ null::char(1),--diszmadauer,
+ null::char(1),--instnr,
+ null::char(1),--beschkat,
+ null::char(1),--labgewicht,
+ null::char(1),--standbearb,
+ null::char(1),--modulturnus,
+ null::char(1),--praesenzzeit,
+ null::char(1),--selbstzeit,
+ null::char(1),--workload,
+ U.k_elementtype_id,--modulart,
+ null::char(1),--modulcode,
+ null::char(1),--moduldauer,
+ null::char(1),--zmamoduldauer,
+ null::char(1),--verart,
+ null::char(1), --max_teilnehmer
+ E.exam_written
+ FROM
+ unitrelation R, unit U left outer join examination E
+ on (E.unit_id=U.id)
+ where R.id=U.default_unitrelation_id
+ ;
+
+
+--Ende
+END_sos_pord
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/sos_pord.unl"
+
+
+
+select * from k_stg where 1=0;
+
+
+--Ende
+END_sos_pord
+fi
+
+fi
+
+#
+#Unload-Job sos_dipl
+#
+echo "--------------------------------------------------------------" >>$ERR
+echo "Unload-Job: sos_dipl" >>$ERR
+
+
+if [ "$SX_CLIENT" = "psql" ]
+then
+echo "Unload with jdbc for Postgres" >>$ERR 2>&1
+
+if [ $VERSION = "6" -o $VERSION = "7" -o $VERSION = "8" -o $VERSION = "9" -o $VERSION = "10" -o $VERSION = "11" -o $VERSION = "12" -o $VERSION = "13" ]
+then
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+
+SELECT superx_sos.mtknr_ldsg,
+ abschl,
+ stg,
+ vert,
+ schwp,
+ kzfa,
+ pnr,
+ psem,
+ pversuch,
+ prueck,
+ pversion,
+ antrdat,
+ meldat,
+ beabeg,
+ dauer,
+ verlkz,
+ abdat,
+ tabdat,
+ pnoteges,
+ zeudat,
+ labnr,
+ case when '$DIPL_THEMA'='true' then substring(thema from 1 for 255) else null::char(10) end as thema,
+ case when '$PRUEFER_NAME'='true' then betreu1 else null::char(10) end as betreu1,
+ case when '$PRUEFER_NAME'='true' then betreu2 else null::char(10) end as betreu2
+FROM dipl, superx_sos
+WHERE dipl.mtknr = superx_sos.mtknr
+AND dipl.psem >= $start_pruef_sem
+;
+
+
+" "txt" "$DBDELIMITER" "false" "unl/sos_dipl.unl" >>$ERR 2>&1
+
+fi
+
+fi
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+ SELECT L.mtknr_ldsg,
+null::char(1),--abschl,
+null::char(1),--stg,
+null::char(1),--vert,
+null::char(1),--schwp,
+null::char(1),--kzfa,
+null::char(1),--pnr,
+'' || L.term_year || L.termnumber,--psem,
+null::char(1),--pversuch,
+null::char(1),--prueck,
+null::char(1),--pversion,
+W.date_of_application,--antrdat,
+null::char(1),--meldat,
+null::char(1),--beabeg,
+null::char(1),--dauer,
+null::char(1),--verlkz,
+null::char(1),--abdat,
+null::char(1),--tabdat,
+null::char(1),--pnoteges,
+null::char(1),--zeudat,
+L.examplan_id, --labnr
+case when '$DIPL_THEMA'='true' then substring(W.title from 1 for 255) else null::char(10) end as thema,
+null::char(1), --betreu1
+null::char(1) --betreu2
+FROM
+period P,
+ tmp_lab L,
+ exam_written W
+ where W.examplan_id=L.examplan_id
+ AND (to_number('' || L.term_year || L.termnumber,'99999') ) >= $start_pruef_sem
+;
+
+
+" "txt" "$DBDELIMITER" "false" "unl/sos_dipl.unl" >>$ERR 2>&1
+
+fi
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+select * from k_stg where 1=0;
+
+" "txt" "$DBDELIMITER" "false" "unl/sos_dipl.unl" >>$ERR 2>&1
+
+fi
+
+fi
+
+if [ "$SX_CLIENT" = "dbaccess" ]
+then
+echo "Unload with dbaccess" >>$ERR 2>&1
+
+#Unload sql-Statement
+if [ $VERSION = "6" -o $VERSION = "7" -o $VERSION = "8" -o $VERSION = "9" -o $VERSION = "10" -o $VERSION = "11" -o $VERSION = "12" -o $VERSION = "13" ]
+then
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/sos_dipl.unl"
+
+
+
+SELECT superx_sos.mtknr_ldsg,
+ abschl,
+ stg,
+ vert,
+ schwp,
+ kzfa,
+ pnr,
+ psem,
+ pversuch,
+ prueck,
+ pversion,
+ antrdat,
+ meldat,
+ beabeg,
+ dauer,
+ verlkz,
+ abdat,
+ tabdat,
+ pnoteges,
+ zeudat,
+ labnr,
+ case when '$DIPL_THEMA'='true' then substring(thema from 1 for 255) else null::char(10) end as thema,
+ case when '$PRUEFER_NAME'='true' then betreu1 else null::char(10) end as betreu1,
+ case when '$PRUEFER_NAME'='true' then betreu2 else null::char(10) end as betreu2
+FROM dipl, superx_sos
+WHERE dipl.mtknr = superx_sos.mtknr
+AND dipl.psem >= $start_pruef_sem
+;
+
+
+--Ende
+END_sos_dipl678910111213
+fi
+
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/sos_dipl.unl"
+
+
+ SELECT L.mtknr_ldsg,
+null::char(1),--abschl,
+null::char(1),--stg,
+null::char(1),--vert,
+null::char(1),--schwp,
+null::char(1),--kzfa,
+null::char(1),--pnr,
+'' || L.term_year || L.termnumber,--psem,
+null::char(1),--pversuch,
+null::char(1),--prueck,
+null::char(1),--pversion,
+W.date_of_application,--antrdat,
+null::char(1),--meldat,
+null::char(1),--beabeg,
+null::char(1),--dauer,
+null::char(1),--verlkz,
+null::char(1),--abdat,
+null::char(1),--tabdat,
+null::char(1),--pnoteges,
+null::char(1),--zeudat,
+L.examplan_id, --labnr
+case when '$DIPL_THEMA'='true' then substring(W.title from 1 for 255) else null::char(10) end as thema,
+null::char(1), --betreu1
+null::char(1) --betreu2
+FROM
+period P,
+ tmp_lab L,
+ exam_written W
+ where W.examplan_id=L.examplan_id
+ AND (to_number('' || L.term_year || L.termnumber,'99999') ) >= $start_pruef_sem
+;
+
+
+--Ende
+END_sos_dipl
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/sos_dipl.unl"
+
+
+select * from k_stg where 1=0;
+
+--Ende
+END_sos_dipl
+fi
+
+fi
+
+#
+#Unload-Job sos_minder
+#
+echo "--------------------------------------------------------------" >>$ERR
+echo "Unload-Job: sos_minder" >>$ERR
+
+
+if [ "$SX_CLIENT" = "psql" ]
+then
+echo "Unload with jdbc for Postgres" >>$ERR 2>&1
+
+if [ $VERSION = "6" -o $VERSION = "7" -o $VERSION = "8" -o $VERSION = "9" -o $VERSION = "10" -o $VERSION = "11" -o $VERSION = "12" -o $VERSION = "13" ]
+then
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+
+SELECT superx_sos.mtknr_ldsg,
+ art,
+ grund,
+ vonsem,
+ bissem,
+ bonus,
+ betrag,
+ -- bemerkung,
+ gewicht,
+ hskfzkz,
+ hskfz,
+ hsart,
+ lfdnr,
+ bewnr,
+-- herkunft,
+ antr_genehmigt,
+ antr_datum
+FROM minder, superx_sos
+WHERE minder.mtknr = superx_sos.mtknr
+AND (minder.vonsem >= $start_stud_sem or minder.vonsem is null)
+;
+
+
+" "txt" "$DBDELIMITER" "false" "unl/sos_minder.unl" >>$ERR 2>&1
+
+fi
+
+fi
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+ SELECT * from tmp_xdummy
+where 1=0;
+
+
+" "txt" "$DBDELIMITER" "false" "unl/sos_minder.unl" >>$ERR 2>&1
+
+fi
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+select * from k_stg where 1=0;
+
+" "txt" "$DBDELIMITER" "false" "unl/sos_minder.unl" >>$ERR 2>&1
+
+fi
+
+fi
+
+if [ "$SX_CLIENT" = "dbaccess" ]
+then
+echo "Unload with dbaccess" >>$ERR 2>&1
+
+#Unload sql-Statement
+if [ $VERSION = "6" -o $VERSION = "7" -o $VERSION = "8" -o $VERSION = "9" -o $VERSION = "10" -o $VERSION = "11" -o $VERSION = "12" -o $VERSION = "13" ]
+then
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/sos_minder.unl"
+
+
+
+SELECT superx_sos.mtknr_ldsg,
+ art,
+ grund,
+ vonsem,
+ bissem,
+ bonus,
+ betrag,
+ -- bemerkung,
+ gewicht,
+ hskfzkz,
+ hskfz,
+ hsart,
+ lfdnr,
+ bewnr,
+-- herkunft,
+ antr_genehmigt,
+ antr_datum
+FROM minder, superx_sos
+WHERE minder.mtknr = superx_sos.mtknr
+AND (minder.vonsem >= $start_stud_sem or minder.vonsem is null)
+;
+
+
+--Ende
+END_sos_minder678910111213
+fi
+
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/sos_minder.unl"
+
+
+ SELECT * from tmp_xdummy
+where 1=0;
+
+
+--Ende
+END_sos_minder
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/sos_minder.unl"
+
+
+select * from k_stg where 1=0;
+
+--Ende
+END_sos_minder
+fi
+
+fi
+
+#
+#Unload-Job sos_stud_d
+#
+echo "--------------------------------------------------------------" >>$ERR
+echo "Unload-Job: sos_stud_d" >>$ERR
+
+
+if [ "$SX_CLIENT" = "psql" ]
+then
+echo "Unload with jdbc for Postgres" >>$ERR 2>&1
+
+if [ $VERSION = "6" -o $VERSION = "7" -o $VERSION = "8" -o $VERSION = "9" -o $VERSION = "10" -o $VERSION = "11" -o $VERSION = "12" -o $VERSION = "13" ]
+then
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+
+select
+ distinct S.mtknr_ldsg,
+ R.identnr,
+ I.name,
+ I.vorname,
+ T.tel,
+ T.artkz,
+ T.anschrkz,
+ O.res13,
+ null::integer -- person_id
+FROM identroll R, sos O, superx_sos S, ident I left outer join telefon T
+on (T.identnr=I.identnr)
+WHERE R.verbindung_integer = S.mtknr
+and O.mtknr=S.mtknr
+and I.identnr=R.identnr
+and R.rolle='S'
+and '$STUD_IDENT'='true';
+
+
+
+
+" "txt" "$DBDELIMITER" "false" "unl/sos_stud_d.unl" >>$ERR 2>&1
+
+fi
+
+fi
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+-- detaillierte Personendaten
+select
+S.mtknr_ldsg,
+U.id,--identnr (student id)
+P.surname, --name
+COALESCE(P.firstname,P.surname), --vorname,
+'',--tel,
+'',--artkz,
+'',--anschrkz,
+'', -- O.res13
+S.person_id --(person_id
+FROM student U, superx_sos S, person P, term_type TT
+where
+U.term_year * 10 + TT.termnumber >= $start_stud_sem
+and P.id=U.person_id
+and U.id=S.id
+and S.person_id=P.id
+and U.term_type_id = TT.id
+and '$STUD_IDENT'='true'
+UNION
+
+-- einfache Personendaten
+-- Beispiel 11200321^20^^Wern^^^^^
+ select
+S.mtknr_ldsg,
+U.id, --identnr (student id)
+'', --name
+SUBSTRING(COALESCE(P.firstname,P.surname) FROM 1 FOR 4), --vorname,
+'',--tel,
+'',--artkz,
+'',--anschrkz,
+'', -- O.res13
+S.person_id --(person_id
+FROM student U, superx_sos S, person P, term_type TT
+where
+U.term_year * 10 + TT.termnumber >= $start_stud_sem
+and P.id=U.person_id
+and U.id=S.id
+and S.person_id=P.id
+and U.term_type_id = TT.id
+and '$STUD_IDENT'='false'
+;
+
+
+" "txt" "$DBDELIMITER" "false" "unl/sos_stud_d.unl" >>$ERR 2>&1
+
+fi
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+select
+ distinct S.mtknr_ldsg,
+ S.mtknr_ldsg,
+ O.nachname,
+ O.vorname,
+ '',--T.tel,
+ '',--T.artkz,
+ '',--T.anschrkz,
+ '',--O.res13,
+ S.mtknr_ldsg -- person_id
+FROM sos O, superx_sos S
+where
+O.mtknr=S.mtknr
+and '$STUD_IDENT'='true';
+
+" "txt" "$DBDELIMITER" "false" "unl/sos_stud_d.unl" >>$ERR 2>&1
+
+fi
+
+fi
+
+if [ "$SX_CLIENT" = "dbaccess" ]
+then
+echo "Unload with dbaccess" >>$ERR 2>&1
+
+#Unload sql-Statement
+if [ $VERSION = "6" -o $VERSION = "7" -o $VERSION = "8" -o $VERSION = "9" -o $VERSION = "10" -o $VERSION = "11" -o $VERSION = "12" -o $VERSION = "13" ]
+then
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/sos_stud_d.unl"
+
+
+
+select
+ distinct S.mtknr_ldsg,
+ R.identnr,
+ I.name,
+ I.vorname,
+ T.tel,
+ T.artkz,
+ T.anschrkz,
+ O.res13,
+ null::integer -- person_id
+FROM identroll R, sos O, superx_sos S, ident I left outer join telefon T
+on (T.identnr=I.identnr)
+WHERE R.verbindung_integer = S.mtknr
+and O.mtknr=S.mtknr
+and I.identnr=R.identnr
+and R.rolle='S'
+and '$STUD_IDENT'='true';
+
+
+
+
+--Ende
+END_sos_stud_d678910111213
+fi
+
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/sos_stud_d.unl"
+
+
+-- detaillierte Personendaten
+select
+S.mtknr_ldsg,
+U.id,--identnr (student id)
+P.surname, --name
+COALESCE(P.firstname,P.surname), --vorname,
+'',--tel,
+'',--artkz,
+'',--anschrkz,
+'', -- O.res13
+S.person_id --(person_id
+FROM student U, superx_sos S, person P, term_type TT
+where
+U.term_year * 10 + TT.termnumber >= $start_stud_sem
+and P.id=U.person_id
+and U.id=S.id
+and S.person_id=P.id
+and U.term_type_id = TT.id
+and '$STUD_IDENT'='true'
+UNION
+
+-- einfache Personendaten
+-- Beispiel 11200321^20^^Wern^^^^^
+ select
+S.mtknr_ldsg,
+U.id, --identnr (student id)
+'', --name
+SUBSTRING(COALESCE(P.firstname,P.surname) FROM 1 FOR 4), --vorname,
+'',--tel,
+'',--artkz,
+'',--anschrkz,
+'', -- O.res13
+S.person_id --(person_id
+FROM student U, superx_sos S, person P, term_type TT
+where
+U.term_year * 10 + TT.termnumber >= $start_stud_sem
+and P.id=U.person_id
+and U.id=S.id
+and S.person_id=P.id
+and U.term_type_id = TT.id
+and '$STUD_IDENT'='false'
+;
+
+
+--Ende
+END_sos_stud_d
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/sos_stud_d.unl"
+
+
+select
+ distinct S.mtknr_ldsg,
+ S.mtknr_ldsg,
+ O.nachname,
+ O.vorname,
+ '',--T.tel,
+ '',--T.artkz,
+ '',--T.anschrkz,
+ '',--O.res13,
+ S.mtknr_ldsg -- person_id
+FROM sos O, superx_sos S
+where
+O.mtknr=S.mtknr
+and '$STUD_IDENT'='true';
+
+--Ende
+END_sos_stud_d
+fi
+
+fi
+
+#
+#Unload-Job sos_pords
+#
+echo "--------------------------------------------------------------" >>$ERR
+echo "Unload-Job: sos_pords" >>$ERR
+
+
+if [ "$SX_CLIENT" = "psql" ]
+then
+echo "Unload with jdbc for Postgres" >>$ERR 2>&1
+
+if [ $VERSION = "6" -o $VERSION = "7" -o $VERSION = "8" -o $VERSION = "9" -o $VERSION = "10" -o $VERSION = "11" -o $VERSION = "12" -o $VERSION = "13" ]
+then
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+
+SELECT pordnr,
+ pktxt,
+ pdtxt,
+ pltxt1,
+ pordsnr,
+ sprache
+FROM pords
+
+
+
+" "txt" "$DBDELIMITER" "false" "unl/sos_pords.unl" >>$ERR 2>&1
+
+fi
+
+fi
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+ SELECT * from tmp_xdummy
+where 1=0;
+
+
+" "txt" "$DBDELIMITER" "false" "unl/sos_pords.unl" >>$ERR 2>&1
+
+fi
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+select * from k_stg where 1=0;
+
+" "txt" "$DBDELIMITER" "false" "unl/sos_pords.unl" >>$ERR 2>&1
+
+fi
+
+fi
+
+if [ "$SX_CLIENT" = "dbaccess" ]
+then
+echo "Unload with dbaccess" >>$ERR 2>&1
+
+#Unload sql-Statement
+if [ $VERSION = "6" -o $VERSION = "7" -o $VERSION = "8" -o $VERSION = "9" -o $VERSION = "10" -o $VERSION = "11" -o $VERSION = "12" -o $VERSION = "13" ]
+then
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/sos_pords.unl"
+
+
+
+SELECT pordnr,
+ pktxt,
+ pdtxt,
+ pltxt1,
+ pordsnr,
+ sprache
+FROM pords
+
+
+
+--Ende
+END_sos_pords678910111213
+fi
+
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/sos_pords.unl"
+
+
+ SELECT * from tmp_xdummy
+where 1=0;
+
+
+--Ende
+END_sos_pords
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/sos_pords.unl"
+
+
+select * from k_stg where 1=0;
+
+--Ende
+END_sos_pords
+fi
+
+fi
+
+#
+#Unload-Job sos_porg
+#
+echo "--------------------------------------------------------------" >>$ERR
+echo "Unload-Job: sos_porg" >>$ERR
+
+
+if [ "$SX_CLIENT" = "psql" ]
+then
+echo "Unload with jdbc for Postgres" >>$ERR 2>&1
+
+if [ $VERSION = "6" -o $VERSION = "7" -o $VERSION = "8" -o $VERSION = "9" -o $VERSION = "10" -o $VERSION = "11" -o $VERSION = "12" -o $VERSION = "13" ]
+then
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+
+SELECT porgnr,
+pordnr,
+abschl,
+ stg,
+ vert,
+ schwp,
+ kzfa,
+ pversion,
+ angeboten,
+pdauer,
+ppruefer,
+zweitpruefer,
+psem,
+pnr
+from porg
+
+
+
+" "txt" "$DBDELIMITER" "false" "unl/sos_porg.unl" >>$ERR 2>&1
+
+fi
+
+fi
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+ SELECT * from tmp_xdummy
+where 1=0;
+
+
+" "txt" "$DBDELIMITER" "false" "unl/sos_porg.unl" >>$ERR 2>&1
+
+fi
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+select * from k_stg where 1=0;
+
+" "txt" "$DBDELIMITER" "false" "unl/sos_porg.unl" >>$ERR 2>&1
+
+fi
+
+fi
+
+if [ "$SX_CLIENT" = "dbaccess" ]
+then
+echo "Unload with dbaccess" >>$ERR 2>&1
+
+#Unload sql-Statement
+if [ $VERSION = "6" -o $VERSION = "7" -o $VERSION = "8" -o $VERSION = "9" -o $VERSION = "10" -o $VERSION = "11" -o $VERSION = "12" -o $VERSION = "13" ]
+then
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/sos_porg.unl"
+
+
+
+SELECT porgnr,
+pordnr,
+abschl,
+ stg,
+ vert,
+ schwp,
+ kzfa,
+ pversion,
+ angeboten,
+pdauer,
+ppruefer,
+zweitpruefer,
+psem,
+pnr
+from porg
+
+
+
+--Ende
+END_sos_porg678910111213
+fi
+
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/sos_porg.unl"
+
+
+ SELECT * from tmp_xdummy
+where 1=0;
+
+
+--Ende
+END_sos_porg
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/sos_porg.unl"
+
+
+select * from k_stg where 1=0;
+
+--Ende
+END_sos_porg
+fi
+
+fi
+
+#
+#Unload-Job sos_labzuord
+#
+echo "--------------------------------------------------------------" >>$ERR
+echo "Unload-Job: sos_labzuord" >>$ERR
+
+
+if [ "$SX_CLIENT" = "psql" ]
+then
+echo "Unload with jdbc for Postgres" >>$ERR 2>&1
+
+if [ $VERSION = "6" -o $VERSION = "7" -o $VERSION = "8" -o $VERSION = "9" -o $VERSION = "10" -o $VERSION = "11" -o $VERSION = "12" -o $VERSION = "13" ]
+then
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+select
+superx_sos.mtknr_ldsg,
+labzuord.labnr,
+labzuord.artzuordnung,
+labzuord.pordnrzu,
+labzuord.labnrzu,
+labzuord.bonus,
+labzuord.malus
+FROM labzuord,lab,
+ superx_sos
+WHERE lab.mtknr = superx_sos.mtknr
+and labzuord.mtknr = superx_sos.mtknr
+and labzuord.labnr=lab.labnr
+AND (lab.pstatus is null or lab.pstatus != 'SO')
+$LAB_FILTER
+AND lab.prueck = 0
+AND lab.psem >= $start_pruef_sem
+and
+((lab.pnr in ($POS_PNR) or '"0"'='"$POS_PNR"')
+or lab.pnr in
+ (
+select distinct pnr from tmp_hskonst
+)
+)
+
+
+
+" "txt" "$DBDELIMITER" "false" "unl/sos_labzuord.unl" >>$ERR 2>&1
+
+fi
+
+fi
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+ select
+L.mtknr_ldsg,
+L.examplan_id as labnr,
+K.uniquename as artzuordnung,
+null::integer as pordnrzu,
+R.parent_examplan_id as labnrzu,
+R.bonus,
+R.malus
+ FROM
+tmp_lab L, examrelation R, k_unitrelationtype K
+WHERE
+L.examplan_id = R.child_examplan_id
+and K.id=R.k_unitrelationtype_id
+AND (to_number('' || L.term_year || L.termnumber,'99999') ) >= $start_pruef_sem
+
+
+
+
+" "txt" "$DBDELIMITER" "false" "unl/sos_labzuord.unl" >>$ERR 2>&1
+
+fi
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+select * from k_stg where 1=0;
+
+" "txt" "$DBDELIMITER" "false" "unl/sos_labzuord.unl" >>$ERR 2>&1
+
+fi
+
+fi
+
+if [ "$SX_CLIENT" = "dbaccess" ]
+then
+echo "Unload with dbaccess" >>$ERR 2>&1
+
+#Unload sql-Statement
+if [ $VERSION = "6" -o $VERSION = "7" -o $VERSION = "8" -o $VERSION = "9" -o $VERSION = "10" -o $VERSION = "11" -o $VERSION = "12" -o $VERSION = "13" ]
+then
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/sos_labzuord.unl"
+
+
+select
+superx_sos.mtknr_ldsg,
+labzuord.labnr,
+labzuord.artzuordnung,
+labzuord.pordnrzu,
+labzuord.labnrzu,
+labzuord.bonus,
+labzuord.malus
+FROM labzuord,lab,
+ superx_sos
+WHERE lab.mtknr = superx_sos.mtknr
+and labzuord.mtknr = superx_sos.mtknr
+and labzuord.labnr=lab.labnr
+AND (lab.pstatus is null or lab.pstatus != 'SO')
+$LAB_FILTER
+AND lab.prueck = 0
+AND lab.psem >= $start_pruef_sem
+and
+((lab.pnr in ($POS_PNR) or "0"="$POS_PNR")
+or lab.pnr in
+ (
+select distinct pnr from tmp_hskonst
+)
+)
+
+
+
+--Ende
+END_sos_labzuord678910111213
+fi
+
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/sos_labzuord.unl"
+
+
+ select
+L.mtknr_ldsg,
+L.examplan_id as labnr,
+K.uniquename as artzuordnung,
+null::integer as pordnrzu,
+R.parent_examplan_id as labnrzu,
+R.bonus,
+R.malus
+ FROM
+tmp_lab L, examrelation R, k_unitrelationtype K
+WHERE
+L.examplan_id = R.child_examplan_id
+and K.id=R.k_unitrelationtype_id
+AND (to_number('' || L.term_year || L.termnumber,'99999') ) >= $start_pruef_sem
+
+
+
+
+--Ende
+END_sos_labzuord
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/sos_labzuord.unl"
+
+
+select * from k_stg where 1=0;
+
+--Ende
+END_sos_labzuord
+fi
+
+fi
+
+#
+#Unload-Job sos_pnrzuord
+#
+echo "--------------------------------------------------------------" >>$ERR
+echo "Unload-Job: sos_pnrzuord" >>$ERR
+
+
+if [ "$SX_CLIENT" = "psql" ]
+then
+echo "Unload with jdbc for Postgres" >>$ERR 2>&1
+
+
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+select
+ lfdnr,
+ artzuord,
+ pordnr,
+ pordnrzu,
+ bonus,
+ malus,
+ bez,
+ bonus_bei_nb,
+ ppflicht,
+ freivsem,
+ semester
+FROM pnrzuord
+
+
+
+" "txt" "$DBDELIMITER" "false" "unl/sos_pnrzuord.unl" >>$ERR 2>&1
+
+fi
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+ select
+null::smallint as lfdnr,--R.sortorder
+K.uniquename as artzuord,
+R.child_unit_id as pordnr,
+R.parent_unit_id as pordnrzu,
+R.bonus,
+R.malus,
+null::char(1) as bez,
+null::char(1) as bonus_bei_nb,
+null::char(1) as ppflicht,
+R.firsttrial_semester as freivsem,
+R.recommended_semester::integer as semester
+FROM unitrelation R, k_unitrelationtype K
+where K.id=R.k_unitrelationtype_id
+
+
+" "txt" "$DBDELIMITER" "false" "unl/sos_pnrzuord.unl" >>$ERR 2>&1
+
+fi
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+select * from k_stg where 1=0;
+
+" "txt" "$DBDELIMITER" "false" "unl/sos_pnrzuord.unl" >>$ERR 2>&1
+
+fi
+
+fi
+
+if [ "$SX_CLIENT" = "dbaccess" ]
+then
+echo "Unload with dbaccess" >>$ERR 2>&1
+
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/sos_pnrzuord.unl"
+
+
+select
+ lfdnr,
+ artzuord,
+ pordnr,
+ pordnrzu,
+ bonus,
+ malus,
+ bez,
+ bonus_bei_nb,
+ ppflicht,
+ freivsem,
+ semester
+FROM pnrzuord
+
+
+
+--Ende
+END_sos_pnrzuord
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/sos_pnrzuord.unl"
+
+
+ select
+null::smallint as lfdnr,--R.sortorder
+K.uniquename as artzuord,
+R.child_unit_id as pordnr,
+R.parent_unit_id as pordnrzu,
+R.bonus,
+R.malus,
+null::char(1) as bez,
+null::char(1) as bonus_bei_nb,
+null::char(1) as ppflicht,
+R.firsttrial_semester as freivsem,
+R.recommended_semester::integer as semester
+FROM unitrelation R, k_unitrelationtype K
+where K.id=R.k_unitrelationtype_id
+
+
+--Ende
+END_sos_pnrzuord
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/sos_pnrzuord.unl"
+
+
+select * from k_stg where 1=0;
+
+--Ende
+END_sos_pnrzuord
+fi
+
+fi
+
+#
+#Unload-Job sos_gewichtungsvariante
+#
+echo "--------------------------------------------------------------" >>$ERR
+echo "Unload-Job: sos_gewichtungsvariante" >>$ERR
+
+
+if [ "$SX_CLIENT" = "psql" ]
+then
+echo "Unload with jdbc for Postgres" >>$ERR 2>&1
+
+
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+select 'nix' FROM pnrzuord where 1=0
+
+" "txt" "$DBDELIMITER" "false" "unl/sos_gewichtungsvariante.unl" >>$ERR 2>&1
+
+fi
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+ SELECT id,
+ defaulttext
+FROM student_weighting_variant;
+
+
+" "txt" "$DBDELIMITER" "false" "unl/sos_gewichtungsvariante.unl" >>$ERR 2>&1
+
+fi
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+select * from k_stg where 1=0;
+
+" "txt" "$DBDELIMITER" "false" "unl/sos_gewichtungsvariante.unl" >>$ERR 2>&1
+
+fi
+
+fi
+
+if [ "$SX_CLIENT" = "dbaccess" ]
+then
+echo "Unload with dbaccess" >>$ERR 2>&1
+
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/sos_gewichtungsvariante.unl"
+
+
+select 'nix' FROM pnrzuord where 1=0
+
+--Ende
+END_sos_gewichtungsvariante
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/sos_gewichtungsvariante.unl"
+
+
+ SELECT id,
+ defaulttext
+FROM student_weighting_variant;
+
+
+--Ende
+END_sos_gewichtungsvariante
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/sos_gewichtungsvariante.unl"
+
+
+select * from k_stg where 1=0;
+
+--Ende
+END_sos_gewichtungsvariante
+fi
+
+fi
+
+#
+#Unload-Job sos_gewichtungregel_filter
+#
+echo "--------------------------------------------------------------" >>$ERR
+echo "Unload-Job: sos_gewichtungregel_filter" >>$ERR
+
+
+if [ "$SX_CLIENT" = "psql" ]
+then
+echo "Unload with jdbc for Postgres" >>$ERR 2>&1
+
+
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+select 'nix' FROM pnrzuord where 1=0
+
+" "txt" "$DBDELIMITER" "false" "unl/sos_gewichtungregel_filter.unl" >>$ERR 2>&1
+
+fi
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+ SELECT k_student_weighting_filter_type_id,
+ filter_value,
+ student_weighting_rule_id FROM student_weighting_filter;
+
+" "txt" "$DBDELIMITER" "false" "unl/sos_gewichtungregel_filter.unl" >>$ERR 2>&1
+
+fi
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+select * from k_stg where 1=0;
+
+" "txt" "$DBDELIMITER" "false" "unl/sos_gewichtungregel_filter.unl" >>$ERR 2>&1
+
+fi
+
+fi
+
+if [ "$SX_CLIENT" = "dbaccess" ]
+then
+echo "Unload with dbaccess" >>$ERR 2>&1
+
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/sos_gewichtungregel_filter.unl"
+
+
+select 'nix' FROM pnrzuord where 1=0
+
+--Ende
+END_sos_gewichtungregel_filter
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/sos_gewichtungregel_filter.unl"
+
+
+ SELECT k_student_weighting_filter_type_id,
+ filter_value,
+ student_weighting_rule_id FROM student_weighting_filter;
+
+--Ende
+END_sos_gewichtungregel_filter
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/sos_gewichtungregel_filter.unl"
+
+
+select * from k_stg where 1=0;
+
+--Ende
+END_sos_gewichtungregel_filter
+fi
+
+fi
+
+#
+#Unload-Job sos_gewichtungregel
+#
+echo "--------------------------------------------------------------" >>$ERR
+echo "Unload-Job: sos_gewichtungregel" >>$ERR
+
+
+if [ "$SX_CLIENT" = "psql" ]
+then
+echo "Unload with jdbc for Postgres" >>$ERR 2>&1
+
+
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+select 'nix' FROM pnrzuord where 1=0
+
+" "txt" "$DBDELIMITER" "false" "unl/sos_gewichtungregel.unl" >>$ERR 2>&1
+
+fi
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+ -- die _list Felder bleiben leer, werden später im ETL gefüllt
+ SELECT id,
+ shorttext,
+ student_weighting_variant_id,
+ sortorder,
+ weight,
+ k_student_weighting_weight_usage_type_id,
+ k_student_weighting_action_type_id,
+ weighting_ident_operator_id,
+ ''::char(1) as weighting_ident_list,
+ new_weighting_ident,
+ degree_counter_operator_id,
+ ''::char(1) as degree_counter_list,
+ new_degree_counter,
+ subject_counter_operator_id,
+ ''::char(1) as subject_counter_list,
+ new_subject_counter,
+ subject_count_operator_id,
+ ''::char(1) as subject_count_list,
+ degree_count_operator_id,
+ ''::char(1) as degree_count_list,
+ ects_operator_id,
+ ''::char(1) as ects_list,
+ newects,
+ teaching_unit_operator_id,
+ ''::char(1) as teachning_unit_list,
+ ''::char(1) as new_teachning_unit,
+ department_operator_id,
+ ''::char(1) as department_list,
+ new_department,
+ subject_operator_id,
+ ''::char(1) as subject_list,
+ new_subject,
+ degree_operator_id,
+ ''::char(1) as degree_list,
+ new_degree,
+ subject_indicator_operator_id,
+ ''::char(1) as subject_indicator_operator_list,
+ new_subject_indicator,
+ type_of_study_operator_id,
+ ''::char(1) as type_of_study_operator_list,
+ new_type_of_study,
+ form_of_study_operator_id,
+ ''::char(1) as form_of_study_list,
+ new_form_of_study
+FROM student_weighting_rule
+
+
+" "txt" "$DBDELIMITER" "false" "unl/sos_gewichtungregel.unl" >>$ERR 2>&1
+
+fi
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+select * from k_stg where 1=0;
+
+" "txt" "$DBDELIMITER" "false" "unl/sos_gewichtungregel.unl" >>$ERR 2>&1
+
+fi
+
+fi
+
+if [ "$SX_CLIENT" = "dbaccess" ]
+then
+echo "Unload with dbaccess" >>$ERR 2>&1
+
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/sos_gewichtungregel.unl"
+
+
+select 'nix' FROM pnrzuord where 1=0
+
+--Ende
+END_sos_gewichtungregel
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/sos_gewichtungregel.unl"
+
+
+ -- die _list Felder bleiben leer, werden später im ETL gefüllt
+ SELECT id,
+ shorttext,
+ student_weighting_variant_id,
+ sortorder,
+ weight,
+ k_student_weighting_weight_usage_type_id,
+ k_student_weighting_action_type_id,
+ weighting_ident_operator_id,
+ ''::char(1) as weighting_ident_list,
+ new_weighting_ident,
+ degree_counter_operator_id,
+ ''::char(1) as degree_counter_list,
+ new_degree_counter,
+ subject_counter_operator_id,
+ ''::char(1) as subject_counter_list,
+ new_subject_counter,
+ subject_count_operator_id,
+ ''::char(1) as subject_count_list,
+ degree_count_operator_id,
+ ''::char(1) as degree_count_list,
+ ects_operator_id,
+ ''::char(1) as ects_list,
+ newects,
+ teaching_unit_operator_id,
+ ''::char(1) as teachning_unit_list,
+ ''::char(1) as new_teachning_unit,
+ department_operator_id,
+ ''::char(1) as department_list,
+ new_department,
+ subject_operator_id,
+ ''::char(1) as subject_list,
+ new_subject,
+ degree_operator_id,
+ ''::char(1) as degree_list,
+ new_degree,
+ subject_indicator_operator_id,
+ ''::char(1) as subject_indicator_operator_list,
+ new_subject_indicator,
+ type_of_study_operator_id,
+ ''::char(1) as type_of_study_operator_list,
+ new_type_of_study,
+ form_of_study_operator_id,
+ ''::char(1) as form_of_study_list,
+ new_form_of_study
+FROM student_weighting_rule
+
+
+--Ende
+END_sos_gewichtungregel
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/sos_gewichtungregel.unl"
+
+
+select * from k_stg where 1=0;
+
+--Ende
+END_sos_gewichtungregel
+fi
+
+fi
+
+#
+#Unload-Job finalize1
+#
+echo "--------------------------------------------------------------" >>$ERR
+echo "Unload-Job: finalize1" >>$ERR
+
+
+if [ "$SX_CLIENT" = "psql" ]
+then
+echo "Unload with jdbc for Postgres" >>$ERR 2>&1
+
+
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+drop table superx_sos;
+
+" "txt" "$DBDELIMITER" "false" "" >>$ERR 2>&1
+
+fi
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+drop table superx_sos;
+drop table tmp_xdummy;
+
+" "txt" "$DBDELIMITER" "false" "" >>$ERR 2>&1
+
+fi
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+drop table superx_sos;
+drop table tmp_xdummy;
+
+" "txt" "$DBDELIMITER" "false" "" >>$ERR 2>&1
+
+fi
+
+fi
+
+if [ "$SX_CLIENT" = "dbaccess" ]
+then
+echo "Unload with dbaccess" >>$ERR 2>&1
+
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+
+drop table superx_sos;
+
+--Ende
+END_finalize1
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+
+drop table superx_sos;
+drop table tmp_xdummy;
+
+--Ende
+END_finalize1
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+
+drop table superx_sos;
+drop table tmp_xdummy;
+
+--Ende
+END_finalize1
+fi
+
+fi
+
+#
+#Unload-Job finalize2
+#
+echo "--------------------------------------------------------------" >>$ERR
+echo "Unload-Job: finalize2" >>$ERR
+
+
+if [ "$SX_CLIENT" = "psql" ]
+then
+echo "Unload with jdbc for Postgres" >>$ERR 2>&1
+
+
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+drop table tmp_hskonst;
+
+" "txt" "$DBDELIMITER" "false" "" >>$ERR 2>&1
+
+fi
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+
+
+drop table tmp_course_of_study;
+
+" "txt" "$DBDELIMITER" "false" "" >>$ERR 2>&1
+
+fi
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+drop table tmp_hskonst;
+
+" "txt" "$DBDELIMITER" "false" "" >>$ERR 2>&1
+
+fi
+
+fi
+
+if [ "$SX_CLIENT" = "dbaccess" ]
+then
+echo "Unload with dbaccess" >>$ERR 2>&1
+
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+
+drop table tmp_hskonst;
+
+--Ende
+END_finalize2
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+
+
+
+drop table tmp_course_of_study;
+
+--Ende
+END_finalize2
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+
+drop table tmp_hskonst;
+
+--Ende
+END_finalize2
+fi
+
+fi
+
+#
+#Unload-Job personattribute
+#
+echo "--------------------------------------------------------------" >>$ERR
+echo "Unload-Job: personattribute" >>$ERR
+
+
+if [ "$SX_CLIENT" = "psql" ]
+then
+echo "Unload with jdbc for Postgres" >>$ERR 2>&1
+
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+select
+P.id,
+P.person_id,
+S.registrationnumber,
+10 as systeminfo_id,
+P.personattributetype_id,
+P.attributevalue,
+P.valid_from,
+P.valid_to,
+'' ,--semester_von
+'' --semester_bis
+from personattribute P, student S where S.person_id= P.person_id and P.personattributetype_id in ($PERSONATTRIBUTE_IDS) order by person_id;
+" "txt" "$DBDELIMITER" "false" "unl/personattribute.unl" >>$ERR 2>&1
+
+fi
+
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+select * from k_stg where 1=0;
+
+" "txt" "$DBDELIMITER" "false" "unl/personattribute.unl" >>$ERR 2>&1
+
+fi
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+select * from k_stg where 1=0;
+
+" "txt" "$DBDELIMITER" "false" "unl/personattribute.unl" >>$ERR 2>&1
+
+fi
+
+fi
+
+if [ "$SX_CLIENT" = "dbaccess" ]
+then
+echo "Unload with dbaccess" >>$ERR 2>&1
+
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/personattribute.unl"
+
+select
+P.id,
+P.person_id,
+S.registrationnumber,
+10 as systeminfo_id,
+P.personattributetype_id,
+P.attributevalue,
+P.valid_from,
+P.valid_to,
+'' ,--semester_von
+'' --semester_bis
+from personattribute P, student S where S.person_id= P.person_id and P.personattributetype_id in ($PERSONATTRIBUTE_IDS) order by person_id;
+--Ende
+END_personattribute
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/personattribute.unl"
+
+
+select * from k_stg where 1=0;
+
+--Ende
+END_personattribute
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/personattribute.unl"
+
+
+select * from k_stg where 1=0;
+
+--Ende
+END_personattribute
+fi
+
+fi
+
+#
+#Unload-Job personattributetype
+#
+echo "--------------------------------------------------------------" >>$ERR
+echo "Unload-Job: personattributetype" >>$ERR
+
+
+if [ "$SX_CLIENT" = "psql" ]
+then
+echo "Unload with jdbc for Postgres" >>$ERR 2>&1
+
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+select
+id,
+fieldname
+from personattributetype where '$PERSONATTRIBUTE_IDS' != '0';
+" "txt" "$DBDELIMITER" "false" "unl/personattributetype.unl" >>$ERR 2>&1
+
+fi
+
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+select * from k_stg where 1=0;
+
+" "txt" "$DBDELIMITER" "false" "unl/personattributetype.unl" >>$ERR 2>&1
+
+fi
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+select * from k_stg where 1=0;
+
+" "txt" "$DBDELIMITER" "false" "unl/personattributetype.unl" >>$ERR 2>&1
+
+fi
+
+fi
+
+if [ "$SX_CLIENT" = "dbaccess" ]
+then
+echo "Unload with dbaccess" >>$ERR 2>&1
+
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/personattributetype.unl"
+
+select
+id,
+fieldname
+from personattributetype where '$PERSONATTRIBUTE_IDS' != '0';
+--Ende
+END_personattributetype
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/personattributetype.unl"
+
+
+select * from k_stg where 1=0;
+
+--Ende
+END_personattributetype
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/personattributetype.unl"
+
+
+select * from k_stg where 1=0;
+
+--Ende
+END_personattributetype
+fi
+
+fi
+
+#
+#Unload-Job personattribute_value_list
+#
+echo "--------------------------------------------------------------" >>$ERR
+echo "Unload-Job: personattribute_value_list" >>$ERR
+
+
+if [ "$SX_CLIENT" = "psql" ]
+then
+echo "Unload with jdbc for Postgres" >>$ERR 2>&1
+
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+select
+personattributetype_id,
+attributevalue,
+shorttext,
+defaulttext,
+longtext
+from personattribute_value_list where '$PERSONATTRIBUTE_IDS' != '0';
+" "txt" "$DBDELIMITER" "false" "unl/personattribute_value_list.unl" >>$ERR 2>&1
+
+fi
+
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+select * from k_stg where 1=0;
+
+" "txt" "$DBDELIMITER" "false" "unl/personattribute_value_list.unl" >>$ERR 2>&1
+
+fi
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+select * from k_stg where 1=0;
+
+" "txt" "$DBDELIMITER" "false" "unl/personattribute_value_list.unl" >>$ERR 2>&1
+
+fi
+
+fi
+
+if [ "$SX_CLIENT" = "dbaccess" ]
+then
+echo "Unload with dbaccess" >>$ERR 2>&1
+
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/personattribute_value_list.unl"
+
+select
+personattributetype_id,
+attributevalue,
+shorttext,
+defaulttext,
+longtext
+from personattribute_value_list where '$PERSONATTRIBUTE_IDS' != '0';
+--Ende
+END_personattribute_value_list
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/personattribute_value_list.unl"
+
+
+select * from k_stg where 1=0;
+
+--Ende
+END_personattribute_value_list
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/personattribute_value_list.unl"
+
+
+select * from k_stg where 1=0;
+
+--Ende
+END_personattribute_value_list
+fi
+
+fi
+
+#
+#Unload-Job stu_update_prot
+#
+echo "--------------------------------------------------------------" >>$ERR
+echo "Unload-Job: stu_update_prot" >>$ERR
+
+
+if [ "$SX_CLIENT" = "psql" ]
+then
+echo "Unload with jdbc for Postgres" >>$ERR 2>&1
+
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+SELECT 7::integer,'stu'::char(40), cast(extract(epoch from (select max(updated_at)))as integer), max(updated_at) from student;
+
+" "txt" "$DBDELIMITER" "false" "unl/stu_update_prot.unl" >>$ERR 2>&1
+
+fi
+
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+select * from k_stg where 1=0;
+
+" "txt" "$DBDELIMITER" "false" "unl/stu_update_prot.unl" >>$ERR 2>&1
+
+fi
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+select * from k_stg where 1=0;
+
+" "txt" "$DBDELIMITER" "false" "unl/stu_update_prot.unl" >>$ERR 2>&1
+
+fi
+
+fi
+
+if [ "$SX_CLIENT" = "dbaccess" ]
+then
+echo "Unload with dbaccess" >>$ERR 2>&1
+
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/stu_update_prot.unl"
+
+
+SELECT 7::integer,'stu'::char(40), cast(extract(epoch from (select max(updated_at)))as integer), max(updated_at) from student;
+
+--Ende
+END_stu_update_prot
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/stu_update_prot.unl"
+
+
+select * from k_stg where 1=0;
+
+--Ende
+END_stu_update_prot
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/stu_update_prot.unl"
+
+
+select * from k_stg where 1=0;
+
+--Ende
+END_stu_update_prot
+fi
+
+fi
+
+#
+#Unload-Job exa_update_prot
+#
+echo "--------------------------------------------------------------" >>$ERR
+echo "Unload-Job: exa_update_prot" >>$ERR
+
+
+if [ "$SX_CLIENT" = "psql" ]
+then
+echo "Unload with jdbc for Postgres" >>$ERR 2>&1
+
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+SELECT 7::integer,'exa'::char(40), cast(extract(epoch from (select max(updated_at)))as integer), max(updated_at) from examplan;
+
+" "txt" "$DBDELIMITER" "false" "unl/exa_update_prot.unl" >>$ERR 2>&1
+
+fi
+
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+select * from k_stg where 1=0;
+
+" "txt" "$DBDELIMITER" "false" "unl/exa_update_prot.unl" >>$ERR 2>&1
+
+fi
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+select * from k_stg where 1=0;
+
+" "txt" "$DBDELIMITER" "false" "unl/exa_update_prot.unl" >>$ERR 2>&1
+
+fi
+
+fi
+
+if [ "$SX_CLIENT" = "dbaccess" ]
+then
+echo "Unload with dbaccess" >>$ERR 2>&1
+
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/exa_update_prot.unl"
+
+
+SELECT 7::integer,'exa'::char(40), cast(extract(epoch from (select max(updated_at)))as integer), max(updated_at) from examplan;
+
+--Ende
+END_exa_update_prot
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/exa_update_prot.unl"
+
+
+select * from k_stg where 1=0;
+
+--Ende
+END_exa_update_prot
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/exa_update_prot.unl"
+
+
+select * from k_stg where 1=0;
+
+--Ende
+END_exa_update_prot
+fi
+
+fi
+
+#
+#Unload-Job sos_accredited_ects
+#
+echo "--------------------------------------------------------------" >>$ERR
+echo "Unload-Job: sos_accredited_ects" >>$ERR
+
+
+if [ "$SX_CLIENT" = "psql" ]
+then
+echo "Unload with jdbc for Postgres" >>$ERR 2>&1
+
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+select
+TL.mtknr_ldsg,
+AE.examplan_id,
+AE.abroad_ects,
+AE.professional_experience_ects,
+AE.total_accredited_ects,
+'' || TL.term_year || TL.termnumber, --psem
+extract(day from TL.date_of_work)::varchar(2) || '.' || extract(month from TL.date_of_work)::varchar(2) || '.' || extract(year from TL.date_of_work)::varchar(4) --Prüfungsdatum
+from accredited_ects AE, tmp_lab TL where AE.examplan_id = TL.examplan_id;
+
+" "txt" "$DBDELIMITER" "false" "unl/sos_accredited_ects.unl" >>$ERR 2>&1
+
+fi
+
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+select
+*,
+null::integer AS sem_der_pruefung, --psem
+null::integer as d_abg_pruefung --Prüfungsdatum
+from k_stg where 1=0;
+
+" "txt" "$DBDELIMITER" "false" "unl/sos_accredited_ects.unl" >>$ERR 2>&1
+
+fi
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+select * from k_stg where 1=0;
+
+" "txt" "$DBDELIMITER" "false" "unl/sos_accredited_ects.unl" >>$ERR 2>&1
+
+fi
+
+fi
+
+if [ "$SX_CLIENT" = "dbaccess" ]
+then
+echo "Unload with dbaccess" >>$ERR 2>&1
+
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/sos_accredited_ects.unl"
+
+
+select
+TL.mtknr_ldsg,
+AE.examplan_id,
+AE.abroad_ects,
+AE.professional_experience_ects,
+AE.total_accredited_ects,
+'' || TL.term_year || TL.termnumber, --psem
+extract(day from TL.date_of_work)::varchar(2) || '.' || extract(month from TL.date_of_work)::varchar(2) || '.' || extract(year from TL.date_of_work)::varchar(4) --Prüfungsdatum
+from accredited_ects AE, tmp_lab TL where AE.examplan_id = TL.examplan_id;
+
+--Ende
+END_sos_accredited_ects
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/sos_accredited_ects.unl"
+
+
+select
+*,
+null::integer AS sem_der_pruefung, --psem
+null::integer as d_abg_pruefung --Prüfungsdatum
+from k_stg where 1=0;
+
+--Ende
+END_sos_accredited_ects
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/sos_accredited_ects.unl"
+
+
+select * from k_stg where 1=0;
+
+--Ende
+END_sos_accredited_ects
+fi
+
+fi
+
+#
+#Unload-Job finalize_sos_pruefungen
+#
+echo "--------------------------------------------------------------" >>$ERR
+echo "Unload-Job: finalize_sos_pruefungen" >>$ERR
+
+
+if [ "$SX_CLIENT" = "psql" ]
+then
+echo "Unload with jdbc for Postgres" >>$ERR 2>&1
+
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+drop table IF EXISTS tmp_lab;
+" "txt" "$DBDELIMITER" "false" "" >>$ERR 2>&1
+
+fi
+
+fi
+
+if [ "$SX_CLIENT" = "dbaccess" ]
+then
+echo "Unload with dbaccess" >>$ERR 2>&1
+
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+
+drop table IF EXISTS tmp_lab;
+--Ende
+END_finalize_sos_pruefungen
+fi
+
+fi
+
+#
+#Unload-Job sos_pord_orgeinheit
+#
+echo "--------------------------------------------------------------" >>$ERR
+echo "Unload-Job: sos_pord_orgeinheit" >>$ERR
+
+
+if [ "$SX_CLIENT" = "psql" ]
+then
+echo "Unload with jdbc for Postgres" >>$ERR 2>&1
+
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+SELECT U.unit_id as pordnr,
+ 6 as sourcesystem,
+ O.id as institution,
+ U.valid_from,
+ U.valid_to,
+ R.uniquename as art,
+ O.sortorder
+FROM hisinone.orgunit O, hisinone.unit_orgunit U left outer join hisinone.k_unit_orgunit_relation R
+on (R.id=U.k_unit_orgunit_relation_id)
+where O.lid=U.orgunit_lid
+ ;
+
+" "txt" "$DBDELIMITER" "false" "unl/sos_pord_orgeinheit.unl" >>$ERR 2>&1
+
+fi
+
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+select * from k_stg where 1=0;
+
+" "txt" "$DBDELIMITER" "false" "unl/sos_pord_orgeinheit.unl" >>$ERR 2>&1
+
+fi
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+
+
+
+java $LOCALE $JAVA_OPTS -cp $CP de.superx.bin.Doquery $LOGGER_PROPERTIES $DB_PROPERTIES "
+
+$JDBC_PARAM
+
+
+
+select * from k_stg where 1=0;
+
+" "txt" "$DBDELIMITER" "false" "unl/sos_pord_orgeinheit.unl" >>$ERR 2>&1
+
+fi
+
+fi
+
+if [ "$SX_CLIENT" = "dbaccess" ]
+then
+echo "Unload with dbaccess" >>$ERR 2>&1
+
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "hisinone" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/sos_pord_orgeinheit.unl"
+
+
+SELECT U.unit_id as pordnr,
+ 6 as sourcesystem,
+ O.id as institution,
+ U.valid_from,
+ U.valid_to,
+ R.uniquename as art,
+ O.sortorder
+FROM hisinone.orgunit O, hisinone.unit_orgunit U left outer join hisinone.k_unit_orgunit_relation R
+on (R.id=U.k_unit_orgunit_relation_id)
+where O.lid=U.orgunit_lid
+ ;
+
+--Ende
+END_sos_pord_orgeinheit
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "sospos" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/sos_pord_orgeinheit.unl"
+
+
+select * from k_stg where 1=0;
+
+--Ende
+END_sos_pord_orgeinheit
+fi
+#Unload sql-Statement
+
+if [ "$SOURCESYSTEM" = "co" ]
+then
+$INFORMIXDIR/bin/dbaccess $DBASE - <>$ERR 2>&1
+
+unload to "unl/sos_pord_orgeinheit.unl"
+
+
+select * from k_stg where 1=0;
+
+--Ende
+END_sos_pord_orgeinheit
+fi
+
+fi
+
+#Nachbearbeitung der unl-Dateien:
+#Zumächst maskierte "\ " entfernen, Postgres kommt damit nicht klar
+sed '/\\ /s///g' unl/konstanten.unl >tmp.unl
+mv tmp.unl unl/konstanten.unl >>$ERR 2>&1
+sed '/\\ /s///g' unl/sos_studenten.unl >tmp.unl
+mv tmp.unl unl/sos_studenten.unl >>$ERR 2>&1
+sed '/\\ /s///g' unl/sos_hzb.unl >tmp.unl
+mv tmp.unl unl/sos_hzb.unl >>$ERR 2>&1
+sed '/\\ /s///g' unl/sos_faecher.unl >tmp.unl
+mv tmp.unl unl/sos_faecher.unl >>$ERR 2>&1
+sed '/\\ /s///g' unl/sos_pord_to_stg.unl >tmp.unl
+mv tmp.unl unl/sos_pord_to_stg.unl >>$ERR 2>&1
+sed '/\\ /s///g' unl/sos_pruefungenext.unl >tmp.unl
+mv tmp.unl unl/sos_pruefungenext.unl >>$ERR 2>&1
+sed '/\\ /s///g' unl/sos_pruefungen.unl >tmp.unl
+mv tmp.unl unl/sos_pruefungen.unl >>$ERR 2>&1
+sed '/\\ /s///g' unl/sos_lab_astat_attributes.unl >tmp.unl
+mv tmp.unl unl/sos_lab_astat_attributes.unl >>$ERR 2>&1
+sed '/\\ /s///g' unl/sos_stud_loe.unl >tmp.unl
+mv tmp.unl unl/sos_stud_loe.unl >>$ERR 2>&1
+sed '/\\ /s///g' unl/sos_faecher_ext.unl >tmp.unl
+mv tmp.unl unl/sos_faecher_ext.unl >>$ERR 2>&1
+sed '/\\ /s///g' unl/sos_faecher_kontrolle.unl >tmp.unl
+mv tmp.unl unl/sos_faecher_kontrolle.unl >>$ERR 2>&1
+sed '/\\ /s///g' unl/sos_pruefungen_kontrolle.unl >tmp.unl
+mv tmp.unl unl/sos_pruefungen_kontrolle.unl >>$ERR 2>&1
+sed '/\\ /s///g' unl/sos_anschri.unl >tmp.unl
+mv tmp.unl unl/sos_anschri.unl >>$ERR 2>&1
+sed '/\\ /s///g' unl/sos_parstg.unl >tmp.unl
+mv tmp.unl unl/sos_parstg.unl >>$ERR 2>&1
+sed '/\\ /s///g' unl/sos_hsnr.unl >tmp.unl
+mv tmp.unl unl/sos_hsnr.unl >>$ERR 2>&1
+sed '/\\ /s///g' unl/semester.unl >tmp.unl
+mv tmp.unl unl/semester.unl >>$ERR 2>&1
+sed '/\\ /s///g' unl/cif.unl >tmp.unl
+mv tmp.unl unl/cif.unl >>$ERR 2>&1
+sed '/\\ /s///g' unl/cifx.unl >tmp.unl
+mv tmp.unl unl/cifx.unl >>$ERR 2>&1
+sed '/\\ /s///g' unl/k_pvers.unl >tmp.unl
+mv tmp.unl unl/k_pvers.unl >>$ERR 2>&1
+sed '/\\ /s///g' unl/k_stg.unl >tmp.unl
+mv tmp.unl unl/k_stg.unl >>$ERR 2>&1
+sed '/\\ /s///g' unl/k_stgext.unl >tmp.unl
+mv tmp.unl unl/k_stgext.unl >>$ERR 2>&1
+sed '/\\ /s///g' unl/k_abstgv.unl >tmp.unl
+mv tmp.unl unl/k_abstgv.unl >>$ERR 2>&1
+sed '/\\ /s///g' unl/sos_pord.unl >tmp.unl
+mv tmp.unl unl/sos_pord.unl >>$ERR 2>&1
+sed '/\\ /s///g' unl/sos_dipl.unl >tmp.unl
+mv tmp.unl unl/sos_dipl.unl >>$ERR 2>&1
+sed '/\\ /s///g' unl/sos_minder.unl >tmp.unl
+mv tmp.unl unl/sos_minder.unl >>$ERR 2>&1
+sed '/\\ /s///g' unl/sos_stud_d.unl >tmp.unl
+mv tmp.unl unl/sos_stud_d.unl >>$ERR 2>&1
+sed '/\\ /s///g' unl/sos_pords.unl >tmp.unl
+mv tmp.unl unl/sos_pords.unl >>$ERR 2>&1
+sed '/\\ /s///g' unl/sos_porg.unl >tmp.unl
+mv tmp.unl unl/sos_porg.unl >>$ERR 2>&1
+sed '/\\ /s///g' unl/sos_labzuord.unl >tmp.unl
+mv tmp.unl unl/sos_labzuord.unl >>$ERR 2>&1
+sed '/\\ /s///g' unl/sos_pnrzuord.unl >tmp.unl
+mv tmp.unl unl/sos_pnrzuord.unl >>$ERR 2>&1
+sed '/\\ /s///g' unl/sos_gewichtungsvariante.unl >tmp.unl
+mv tmp.unl unl/sos_gewichtungsvariante.unl >>$ERR 2>&1
+sed '/\\ /s///g' unl/sos_gewichtungregel_filter.unl >tmp.unl
+mv tmp.unl unl/sos_gewichtungregel_filter.unl >>$ERR 2>&1
+sed '/\\ /s///g' unl/sos_gewichtungregel.unl >tmp.unl
+mv tmp.unl unl/sos_gewichtungregel.unl >>$ERR 2>&1
+sed '/\\ /s///g' unl/personattribute.unl >tmp.unl
+mv tmp.unl unl/personattribute.unl >>$ERR 2>&1
+sed '/\\ /s///g' unl/personattributetype.unl >tmp.unl
+mv tmp.unl unl/personattributetype.unl >>$ERR 2>&1
+sed '/\\ /s///g' unl/personattribute_value_list.unl >tmp.unl
+mv tmp.unl unl/personattribute_value_list.unl >>$ERR 2>&1
+sed '/\\ /s///g' unl/stu_update_prot.unl >tmp.unl
+mv tmp.unl unl/stu_update_prot.unl >>$ERR 2>&1
+sed '/\\ /s///g' unl/exa_update_prot.unl >tmp.unl
+mv tmp.unl unl/exa_update_prot.unl >>$ERR 2>&1
+sed '/\\ /s///g' unl/sos_accredited_ects.unl >tmp.unl
+mv tmp.unl unl/sos_accredited_ects.unl >>$ERR 2>&1
+sed '/\\ /s///g' unl/sos_pord_orgeinheit.unl >tmp.unl
+mv tmp.unl unl/sos_pord_orgeinheit.unl >>$ERR 2>&1
+
+
+chmod go+r $ERR
+chmod go+r $SRC_PFAD/superx.datum
+chmod go+r $SRC_PFAD/superx.datum.alt
+chmod go+w $SRC_PFAD/superx.datum
+chmod go+w $SRC_PFAD/superx.datum.alt
+
+chmod go+r $SRC_PFAD/unl/*
+
+##Herstellen altes Entladedatum bei Fehler
+fgrep -s "not found" $ERR >/dev/null
+FLAG1=$?
+fgrep -i -s "nicht gefunden" $ERR >/dev/null
+FLAG2=$?
+fgrep -i -s "error" $ERR >/dev/null
+FLAG3=$? >/dev/null
+fgrep -i -s "exception" $ERR >/dev/null
+FLAG4=$? >/dev/null
+
+if [ $FLAG1 -eq 0 -o $FLAG2 -eq 0 -o $FLAG3 -eq 0 -o $FLAG4 -eq 0 ]
+then
+ echo "Fehler beim Entladen. Das Datum wird zurückgesetzt."
+ echo "---------------------------------------"
+ echo "Prüfen Sie Fehlerprotokoll: $ERR"
+ echo "---------------------------------------"
+ cp $SRC_PFAD/superx.datum.alt $SRC_PFAD/superx.datum
+fi
diff --git a/src-modules/module/sos/rohdaten/sos_costage_unload.xml b/src-modules/module/sos/rohdaten/sos_costage_unload.xml
new file mode 100644
index 0000000..9adf697
--- /dev/null
+++ b/src-modules/module/sos/rohdaten/sos_costage_unload.xml
@@ -0,0 +1,7208 @@
+
+
+SOS-Modul
+
+
+Sollen alle Datensätze entladen werden, oder nur die geänderten?(true,false).
+SOSPOS-Version, möglich sind 6,7,8,9,10,11,12,13. Bei HISinOne wird sie automatisch gesetzt.
+Ab welchem Semester sollen Studierende entladen werden? z.B. 20011 für SS 2001
+Ab welchem Semester sollen Prüfungen entladen werden? z.B. 20021 für SS 2002
+Matrikelnummern pseudonymisieren (true, false). Muss bei Datenquelle HISinOne auf "false" gesetzt sein.
+Welche Prüfungsnummern (Vor- Hauptprüfun../../../superx/WEB-INF/web.xmlgen) sollen entladen werden? Wird bei Datenquelle HISinOne nicht ausgewertet.
+Weiterer Filter für Einzelprüfungen. Standardmäßig werden anerkannte Prüfungen nicht entladen. Wird bei Datenquelle HISinOne nicht ausgewertet.
+Filter für Studierende, um z.B. Teststudenten nicht zu entladen (nur HISinOne).
+Filter für Studierende, um z.B. Teststudenten nicht zu entladen (nur sospos/co).
+Datum ab dem entladen werden soll (bei SOS_UNL_COMPLETE=false). Wird bei Datenquelle HISinOne nicht ausgewertet.
+ Wenn ja, dann ist der Wert "true", wenn nein, dann ist er "false"
+ Wenn ja, dann ist der Wert "true", wenn nein, dann ist es "false". Wird bei Datenquelle HISinOne nicht ausgewertet.
+ Wenn ja, dann ist der Wert "true", wenn nein, dann ist es "false". Wird bei Datenquelle HISinOne nicht ausgewertet.
+Wird bei Datenquelle HISinOne ausgewertet.
+Letzte Protokollid beim inkrementellen Laden, wird automatisch gesetzt, bitte nicht ändern. Gilt nur für HISinOne-STU als Quellsystem
+Letzter entladener Datensatz beim inkrementellen Laden, wird automatisch gesetzt, bitte nicht ändern. Gilt nur für HISinOne-STU als Quellsystem
+Letzte Protokollid beim inkrementellen Laden, wird automatisch gesetzt, bitte nicht ändern. Gilt nur für HISinOne-EXA als Quellsystem
+Letzter entladener Datensatz beim inkrementellen Laden, wird automatisch gesetzt, bitte nicht ändern. Gilt nur für HISinOne-EXA als Quellsystem
+ Wenn ja, dann ist der Wert "pltxt1", wenn nein, dann ist es null::char(1).
+ Wenn ja, dann ist der Wert "pltxt2", wenn nein, dann ist es null::char(1).
+ Wenn ja, dann ist der Wert "pltxt3", wenn nein, dann ist es null::char(1).
+ Wenn ja, dann ist der Wert "pltxt4", wenn nein, dann ist es null::char(1).
+
+
+
+
+
+
+
+
+
+
+ wichtige Konstanten aus SOS entladen, z.B. HISSOS-Version.
+
+
+
+
+
+
+
+
+
+
+
+ wichtige Konstanten aus SOS entladen, z.B. HISSOS-Version.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ PNR Konstanten aus POS entladen
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ PNR Konstanten aus POS entladen
+
+
+
+
+
+
+
+= tmp_course_of_study.valid_to
+or D.valid_to is null
+or ( D.valid_from is null and tmp_course_of_study.valid_from is null)
+)
+);
+--wenn degree nicht ermittelt werden kann, dann ohne Historisierung
+update tmp_course_of_study set degree_id=(select min(D.id) from degree D
+where D.lid=tmp_course_of_study.degree_lid
+)
+where degree_id is null
+;
+--subject
+update tmp_course_of_study set subject_id=(select D.id from subject D
+where D.lid=tmp_course_of_study.subject_lid
+and (D.valid_from <= tmp_course_of_study.valid_from
+or D.valid_from is null
+or ( D.valid_from is null and tmp_course_of_study.valid_from is null)
+)
+and (D.valid_to >= tmp_course_of_study.valid_to
+or D.valid_to is null
+or ( D.valid_from is null and tmp_course_of_study.valid_from is null)
+)
+);
+--wenn subject nicht ermittelt werden kann, dann ohne Historisierung
+update tmp_course_of_study set subject_id=(select min(D.id) from subject D
+where D.lid=tmp_course_of_study.subject_lid
+)
+where subject_id is null
+;
+--major_field_of_study
+update tmp_course_of_study set major_field_of_study_id=(select D.id from major_field_of_study D
+where D.lid=tmp_course_of_study.major_field_of_study_lid
+and (D.valid_from <= tmp_course_of_study.valid_from
+or D.valid_from is null
+or ( D.valid_from is null and tmp_course_of_study.valid_from is null)
+)
+and (D.valid_to >= tmp_course_of_study.valid_to
+or D.valid_to is null
+or ( D.valid_from is null and tmp_course_of_study.valid_from is null)
+)
+);
+--course_specialization_lid
+update tmp_course_of_study set course_specialization_id=(select D.id from course_specialization D
+where D.lid=tmp_course_of_study.course_specialization_lid
+and (D.valid_from <= tmp_course_of_study.valid_from
+or D.valid_from is null
+or ( D.valid_from is null and tmp_course_of_study.valid_from is null)
+)
+and (D.valid_to >= tmp_course_of_study.valid_to
+or D.valid_to is null
+or ( D.valid_from is null and tmp_course_of_study.valid_from is null)
+)
+);
+--orgunit
+update tmp_course_of_study set orgunit_id=(select D.id from orgunit D
+where D.lid=tmp_course_of_study.orgunit_lid
+and (D.valid_from <= tmp_course_of_study.valid_from
+or D.valid_from is null
+or ( D.valid_from is null and tmp_course_of_study.valid_from is null)
+)
+and (D.valid_to >= tmp_course_of_study.valid_to
+or D.valid_to is null
+or ( D.valid_from is null and tmp_course_of_study.valid_from is null)
+)
+);
+--wenn Studiengang heute gültig ist und orgunit historisiert, nimmt er den aktuellen FB
+update tmp_course_of_study set orgunit_id=(select D.id from orgunit D
+where D.lid=tmp_course_of_study.orgunit_lid
+and current_date between D.valid_from and D.valid_to)
+where current_date between valid_from and valid_to
+and orgunit_id is null;
+
+
+--teachingunit_orgunit_lid
+
+update tmp_course_of_study set teachingunit_orgunit_id=(select D.id from orgunit D
+where D.lid=tmp_course_of_study.teachingunit_orgunit_lid
+and (D.valid_from <= tmp_course_of_study.valid_from
+or D.valid_from is null
+or ( D.valid_from is null and tmp_course_of_study.valid_from is null)
+)
+and (D.valid_to >= tmp_course_of_study.valid_to
+or D.valid_to is null
+or ( D.valid_from is null and tmp_course_of_study.valid_from is null)
+)
+)
+where teachingunit_orgunit_lid is not null;
+
+--wenn Studiengang heute gültig ist und orgunit historisiert, nimmt er aktuelle LE
+update tmp_course_of_study set teachingunit_orgunit_id=(select D.id from orgunit D
+where D.lid=tmp_course_of_study.teachingunit_orgunit_lid
+and current_date between D.valid_from and D.valid_to)
+where current_date between valid_from and valid_to
+and teachingunit_orgunit_id is null;
+
+
+--k_field_of_study
+update tmp_course_of_study set k_field_of_study_id=(select S.k_field_of_study_id
+from subject S
+where S.id=tmp_course_of_study.subject_id)
+where k_field_of_study_id is null;
+--hochprojizieren auf Fächergruppe
+update tmp_course_of_study set k_field_of_study_id=(select K.parent_id
+from k_field_of_study K
+where K.id=tmp_course_of_study.k_field_of_study_id);
+
+--is_historized=1 wenn es mehrere Studiengänge pro LID gibt
+update tmp_course_of_study set is_historized=1
+where 1 < (select count(*) from course_of_study C
+where C.lid=tmp_course_of_study.lid);
+
+create index i_tc1 on tmp_course_of_study(lid);
+
+]]>
+
+
+
+
+
+
+
+
+
+
+ wichtige Konstanten aus SOS entladen, z.B. HISSOS-Version.
+
+= date("$DATUM")
+ OR ruebeudat >= date("$DATUM")
+ OR exmdat >= date("$DATUM"))
+ )
+ --oder pro
+or (S.mtknr in (select mtknr
+FROM pro
+WHERE datum >= date("$DATUM")
+-- keine Berücksichtigung von archivierten Daten
+and fktkz not in ("ARC", "REA", "NER", "AAE"))
+)
+--oder pprot
+or (S.mtknr in (select
+ DISTINCT mtknr
+FROM pprot
+WHERE datlae >= date("$DATUM")) )
+
+);
+]]>
+
+
+= date('"$DATUM"')
+ OR ruebeudat >= date('"$DATUM"')
+ OR exmdat >= date('"$DATUM"'))
+ )
+ --oder pro
+or (S.mtknr in (select mtknr
+FROM pro
+WHERE datum >= date('"$DATUM"')
+-- keine Berücksichtigung von archivierten Daten
+and fktkz not in ('ARC', 'REA', 'NER', 'AAE'))
+)
+--oder pprot
+or (S.mtknr in (select
+ DISTINCT mtknr
+FROM pprot
+WHERE datlae >= date('"$DATUM"')) )
+
+)
+
+
+ ;
+
+]]>
+
+
+ '$stu_updated_at') OR (S.updated_at IS NULL AND '$stu_updated_at' = '1900-01-01'))
+ --keine vorläufigen Studierenden #118453
+ --nur Rolle "Student" (hiskey_id=5)
+ AND 0 < (
+ SELECT
+ count(*)
+ FROM
+ orgrole O,
+ role R
+ WHERE
+ R.id = O.role_id
+ AND S.person_id = O.person_id
+ AND R.hiskey_id IN (5, 8)
+ );
+ --Promovierende 81
+ --Gasthörer 8
+
+-- Ermittlung semesterwohnsitz
+-- alle Studierenden id-s aus Tabelle student
+-- die Postleitzahl der Hinterlegten Adresse des Studierendens (-> welcher Adresstype(n) ist richtig? Ein Studierenden kann verschiedene Adressarten hinterlegen...)
+-- und die country_lid ueber die der Staat ermittelt werden kann (superx_sos.country_lid->country.country_lid)
+UPDATE
+ superx_sos
+SET
+ semester_postcode = addr.postcode,
+ semester_country_lid = addr.country_lid
+FROM
+ address AS addr
+ LEFT JOIN address_k_notificationcategory adnocat ON addr.id = adnocat.address_id
+ LEFT JOIN k_notificationcategory knocat ON (adnocat.k_notificationcategory_id = knocat.id AND knocat.hiskey_id = 2), -- hiskey_id=2 -> STU
+ person prs,
+ k_addresstag atag
+WHERE
+ superx_sos.person_id = prs.id and addr.person_id=prs.id
+ AND addr.eaddresstype_id IS NULL -- -> address.addresstype = 'Postaddress'
+ AND atag.id = addr.k_addresstag_id
+ AND atag.hiskey_id = 2 --semesterwohnsitz
+;
+
+
+-- Semesterwohnsitz = Heimatwohnsitz falls Semesterwohnsitz nicht gesetzt ist
+UPDATE
+ superx_sos
+SET
+ semester_postcode = substring(addr.postcode FOR 50),
+ semester_country_lid = addr.country_lid
+FROM
+ address addr
+ LEFT JOIN address_k_notificationcategory adnocat ON addr.id = adnocat.address_id
+ LEFT JOIN k_notificationcategory knocat ON adnocat.k_notificationcategory_id = knocat.id AND knocat.hiskey_id = 2, -- hiskey_id=2 -> STU
+ person prs,
+ k_addresstag atag
+WHERE
+ superx_sos.person_id = prs.id
+ AND addr.person_id = prs.id
+ AND addr.eaddresstype_id IS NULL -- -> address.addresstype = 'Postaddress'
+ AND atag.id = addr.k_addresstag_id
+ -- Ab hier Anpassungen
+ AND atag.hiskey_id = 1 --heimatwohnsitz
+ AND semester_postcode IS NULL
+ AND semester_country_lid IS NULL
+;
+
+-- für jeden Studierenden mit Postleitzahl den astat-Schlüssel des Landkreises aus k_postcode holen
+create index i_tmp_k_postcode1 on k_postcode(postcode,astat);
+create index i_tmp_ss1 on superx_sos(semester_postcode);
+
+UPDATE
+ superx_sos
+SET
+ semester_astat = (
+ SELECT
+ k_postcode.astat
+ FROM
+ k_postcode
+ WHERE
+ superx_sos.semester_postcode = k_postcode.postcode
+ LIMIT 1
+ );
+
+drop index i_tmp_k_postcode1;
+drop index i_tmp_ss1;
+
+
+-- Astat-Schlüssel aus Country
+UPDATE
+ superx_sos
+SET
+ semester_country_astat = (
+ SELECT
+ country.astat
+ FROM
+ country
+ WHERE
+ superx_sos.semester_country_lid = country.lid
+ AND current_date BETWEEN valid_from AND valid_to
+ LIMIT 1
+ );
+
+CREATE index i_ts1 ON superx_sos(mtknr_ldsg);
+CREATE index i_ts2 ON superx_sos(person_id);
+
+--Erstes Studium (erhssembrd etc.) ermitteln
+UPDATE
+ superx_sos
+SET
+ erhssembrd = to_number(('' || STUBE.first_term_year || TETY.termnumber),'99999'),
+ discontinuationsemester = STUBE.discontinuationsemester,
+ study_before_university_lid = STUBE.university_lid,
+ study_before_country_lid = STUBE.country_lid,
+ k_study_interruption_type_id = STUBE.k_study_interruption_type_id
+FROM
+ term_type TETY,
+ study_before STUBE
+WHERE
+ STUBE.person_id = superx_sos.person_id
+ AND STUBE.first_term_type_id = TETY.id;
+
+UPDATE
+ superx_sos
+SET
+ study_before_place_of_study = (
+ SELECT
+ UNI.astat
+ FROM
+ university UNI
+ WHERE
+ UNI.lid = superx_sos.study_before_university_lid
+ )
+WHERE
+ study_before_university_lid IS NOT NULL
+;
+
+UPDATE
+ superx_sos
+SET
+ study_before_country_of_study = (
+ SELECT
+ CNT.astat
+ FROM
+ country CNT
+ WHERE
+ CNT.lid = superx_sos.study_before_country_lid
+ )
+WHERE
+ study_before_country_lid IS NOT NULL
+;
+
+UPDATE
+ superx_sos
+SET
+ k_study_interruption_type_astat = (
+ SELECT
+ STINTY.astat
+ FROM
+ k_study_interruption_type STINTY
+ WHERE
+ STINTY.id = superx_sos.k_study_interruption_type_id
+ )
+WHERE
+ k_study_interruption_type_id IS NOT NULL
+;
+
+UPDATE
+ superx_sos
+SET
+ second_nationality_country_lid = prsinf.second_nationality_country_lid,
+ personinfo_country_id = cnt.id
+FROM
+ personinfo prsinf
+ LEFT OUTER JOIN country cnt ON cnt.lid = prsinf.country_lid AND current_date between cnt.valid_from and cnt.valid_to
+WHERE
+ prsinf.person_id = superx_sos.person_id
+;
+
+UPDATE
+ superx_sos
+SET
+ second_nationality_astat = (
+ SELECT
+ cnt.astat
+ FROM
+ country cnt
+ WHERE
+ cnt.lid = superx_sos.second_nationality_country_lid
+ AND current_date BETWEEN cnt.valid_from AND cnt.valid_to
+ )
+WHERE
+ second_nationality_country_lid IS NOT NULL
+;
+
+UPDATE
+ superx_sos
+SET
+ orgrole_valid_from = OrgR.valid_from,
+ orgrole_valid_to = OrgR.valid_to
+FROM
+ orgrole OrgR
+WHERE
+ OrgR.person_id = superx_sos.person_id
+ AND OrgR.role_id = 5
+;
+
+CREATE INDEX tmp_i_ts99 ON superx_sos(id);
+
+]]>
+
+
+= $start_stud_sem
+
+ ;
+
+]]>
+
+
+
+
+
+ wichtige Konstanten aus SOS entladen, z.B. HISSOS-Version.
+
+
+
+
+
+'J'
+union
+select 32,'1','sos_unload_complete' from hskonst
+where '$SOS_UNL_COMPLETE'='true'
+union
+select 32,'0','sos_unload_complete' from hskonst
+where '$SOS_UNL_COMPLETE'!='true'
+union
+select 33,'5','SOS_Quellsystem' from hskonst
+union
+select 34,'0','SOS_Trimester' from hskonst
+;
+]]>
+
+
+0
+union
+select 33,'6','SOS_Quellsystem' from tmp_xdummy
+union
+select 34,'0','SOS_Trimester' from tmp_xdummy
+where 0=(SELECT count(*)
+FROM k_period_usage K,period_usage U,period P,term_type T
+where K.id=U.k_period_usage_id
+and K.hiskey_id=7 --Semesterzeitraum
+and U.period_id=P.id
+and T.id=P.term_type_id
+and T.termcategory=3 --Trimester
+)
+union
+select 34,'1','SOS_Trimester' from tmp_xdummy
+where 0< (SELECT count(*)
+FROM k_period_usage K,period_usage U,period P,term_type T
+where K.id=U.k_period_usage_id
+and K.hiskey_id=7 --Semesterzeitraum
+and U.period_id=P.id
+and T.id=P.term_type_id
+and T.termcategory=3 --Trimester
+)
+;
+]]>
+
+
+
+
+
+
+
+Studi-Sätze aus SOS. Die KFZ-Kennzeichen werden erst in SuperX umgeschlüsselt.
+
+= $start_stud_sem;
+]]>
+
+
+= $start_stud_sem;
+]]>
+
+
+= $start_stud_sem
+;
+
+]]>
+
+
+= $start_stud_sem)
+;
+
+
+]]>
+
+
+= $start_stud_sem
+;
+
+]]>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+stg-Sätze aus sos
+
+
+= $start_stud_sem {ab hier werden Daten ausgewertet}
+;
+]]>
+
+
+= $start_stud_sem {ab hier werden Daten ausgewertet}
+;
+]]>
+
+
+= $start_stud_sem
+;
+]]>
+
+
+= current_date and DegP.belongs_to='STUDENT') D,
+superx_sos S,
+student U,
+tmp_course_of_study C,
+(select tmpSUB.*, tmpFOS.id as fosid
+from subject as tmpSUB
+left outer join k_field_of_study as tmpFOS
+on tmpSUB.k_field_of_study_id = tmpFOS.id) SUB
+-- district DIS,
+-- country CNT
+WHERE T.id=P.term_type_id
+and D.id=DP.degree_program_id
+and DP.course_of_study_id=C.id
+and DP.period_id=P.id
+and S.person_id = U.person_id
+and S.person_id = D.person_id
+and U.id=S.id
+and SUB.id = C.subject_id
+-- and DIS.id = D.final_exam_district_id
+-- and CNT.id = D.final_exam_country_lid
+-- and CNT.valid_from <= current_date and CNT.valid_to >= current_date
+AND to_number('' || P.term_year || T.termnumber,'99999') >= $start_stud_sem
+;
+]]>
+
+
+= $start_stud_sem
+;
+]]>
+
+
+
+ wichtige Konstanten aus SOS entladen, z.B. HISSOS-Version.
+
+ '${exa_updated_at}'
+ OR (
+ E.updated_at IS NULL
+ AND '${exa_updated_at}' = '1900-01-01')
+ )
+ AND (to_number('' || E.term_year || T.termnumber,'99999') ) >= $start_pruef_sem
+;
+
+UPDATE
+ tmp_lab
+SET
+ examrelation_id = default_examrelation_id
+WHERE
+ examrelation_id IS NULL
+;
+
+UPDATE
+ tmp_lab
+SET
+ examrelation_k_workstatus_id = R.k_workstatus_id,
+ examrelation_malus = R.malus,
+ examrelation_bonus = R.bonus,
+ examrelation_parent_examplan_id = R.parent_examplan_id
+FROM
+ examrelation R
+WHERE
+ R.id = tmp_lab.examrelation_id
+;
+
+UPDATE
+ tmp_lab
+SET
+ type_of_grading = gt.type_of_grading
+FROM
+ examplan exp,
+ unitrelation unr,
+ unit u,
+ grading_type gt
+WHERE
+ exp.id = tmp_lab.examplan_id
+ AND exp.unit_id = u.id
+ AND u.default_unitrelation_id = unr.id
+ AND unr.grading_type_id = gt.id
+;
+
+UPDATE
+ tmp_lab
+SET
+ official_statistics = (
+ SELECT
+ official_statistics
+ FROM
+ unit U
+ WHERE
+ U.id = tmp_lab.unit_id
+ )
+;
+
+UPDATE
+ tmp_lab
+SET
+ official_statistics = 3
+WHERE EXISTS (
+ SELECT
+ unit_id
+ FROM
+ examination X
+ WHERE
+ X.unit_id = tmp_lab.unit_id
+ AND k_examination_type_id IN (
+ SELECT
+ id
+ FROM
+ k_examination_type
+ WHERE
+ hiskey_id = 99
+ )
+ )
+;
+
+UPDATE
+ tmp_lab
+SET
+ grade = (
+ SELECT
+ R.grade
+ FROM
+ examresult R
+ WHERE
+ R.examrelation_id = tmp_lab.examrelation_id
+ )
+;
+
+--Studienverlauf ermitteln
+UPDATE
+ tmp_lab
+SET
+ degree_program_progress_id = DP.id,
+ degree_program_progress_studynumber = DP.studynumber,
+ degree_program_progress_subjectnumber = DP.subjectnumber,
+ degree_program_progress_studysemester = DP.studysemester,
+ degree_program_id = D.id,
+ course_of_study_id = C.id,
+ studysemester_acknowledgement_id = DP.studysemester_acknowledgement_id,
+ type_of_doctorate_id = D.k_type_of_doctorate_id
+FROM
+ degree_program D,
+ degree_program_progress DP,
+ period P,
+ unit_studies US,
+ tmp_course_of_study C
+WHERE
+ D.id = DP.degree_program_id
+ AND P.id = DP.period_id
+ AND C.lid = US.course_of_study_lid
+ AND DP.course_of_study_id = C.id
+ AND (
+ tmp_lab.date_of_work BETWEEN C.valid_from AND C.valid_to
+ OR tmp_lab.date_of_work IS NULL
+ OR C.is_historized = 0
+ OR (
+ C.valid_from IS NULL
+ AND tmp_lab.date_of_work <= C.valid_to
+ )
+ OR (
+ C.valid_to IS NULL
+ AND tmp_lab.date_of_work >= C.valid_from
+ )
+ )
+ AND tmp_lab.unit_id = US.unit_id
+ AND tmp_lab.person_id = D.person_id
+ AND tmp_lab.term_type_id = P.term_type_id
+ AND tmp_lab.term_year = P.term_year
+;
+
+--evt. früheren Studienverlauf ermitteln
+UPDATE
+ tmp_lab
+SET
+ degree_program_progress_id = DP.id,
+ degree_program_progress_studynumber = DP.studynumber,
+ degree_program_progress_subjectnumber = DP.subjectnumber,
+ degree_program_progress_studysemester = DP.studysemester,
+ degree_program_id = D.id,
+ course_of_study_id = C.id,
+ studysemester_acknowledgement_id = DP.studysemester_acknowledgement_id,
+ type_of_doctorate_id = D.k_type_of_doctorate_id
+FROM
+ degree_program D,
+ degree_program_progress DP ,
+ tmp_course_of_study C
+WHERE
+ D.id = DP.degree_program_id
+ AND DP.id = (
+ SELECT
+ DP.id
+ FROM
+ degree_program D,
+ degree_program_progress DP
+ WHERE
+ tmp_lab.person_id = D.person_id
+ AND DP.degree_program_id = D.id
+ AND DP.course_of_study_id IN (
+ SELECT
+ cos.id
+ FROM
+ unit_studies us,
+ course_of_study cos
+ WHERE
+ us.unit_id = tmp_lab.unit_id
+ AND us.course_of_study_lid = cos.lid
+ AND (
+ tmp_lab.date_of_work BETWEEN cos.valid_from AND cos.valid_to
+ OR (
+ tmp_lab.date_of_work IS NULL
+ AND (
+ SELECT
+ startdate
+ FROM
+ period P,
+ period_usage PU,
+ k_period_usage KPU
+ WHERE
+ KPU.hiskey_id = 7
+ AND PU.k_period_usage_id = KPU.id
+ AND PU.period_id = P.id
+ AND P.term_year = tmp_lab.term_year
+ AND P.term_type_id = tmp_lab.term_type_id
+ ) BETWEEN cos.valid_from AND cos.valid_to
+ )
+ )
+ )
+ ORDER BY
+ enddate desc
+ LIMIT
+ 1
+ )
+ AND C.id = DP.course_of_study_id
+ AND tmp_lab.course_of_study_id IS NULL
+;
+
+-- zusätzlich schauen nach Sätzen mit abgelaufener Gültigkeit, dabei den aktuellsten Gültigkeitszeitraum wählen
+UPDATE
+ tmp_lab
+SET
+ degree_program_progress_id = DP.id,
+ degree_program_progress_studynumber = DP.studynumber,
+ degree_program_progress_subjectnumber = DP.subjectnumber,
+ degree_program_progress_studysemester = DP.studysemester,
+ degree_program_id = D.id,
+ course_of_study_id = C.id,
+ studysemester_acknowledgement_id = DP.studysemester_acknowledgement_id,
+ type_of_doctorate_id = D.k_type_of_doctorate_id
+FROM
+ degree_program D,
+ degree_program_progress DP ,
+ tmp_course_of_study C
+WHERE
+ D.id = DP.degree_program_id
+ AND DP.id = (
+ SELECT
+ DP.id
+ FROM
+ degree_program D,
+ degree_program_progress DP
+ WHERE
+ tmp_lab.person_id = D.person_id
+ AND DP.degree_program_id = D.id
+ AND DP.course_of_study_id IN (
+ SELECT
+ cos.id from unit_studies us,
+ course_of_study cos
+ WHERE
+ us.unit_id = tmp_lab.unit_id
+ AND us.course_of_study_lid = cos.lid
+ )
+ ORDER BY
+ enddate DESC
+ LIMIT
+ 1
+ )
+ AND C.id = DP.course_of_study_id
+ AND tmp_lab.course_of_study_id IS NULL
+;
+
+-- kein Studienverlauf vorhanden, sehen ob ein Studiengang passt
+UPDATE
+ tmp_lab
+SET
+ course_of_study_id = (
+ SELECT
+ cos.id
+ FROM
+ unit_studies us,
+ course_of_study cos
+ WHERE
+ us.unit_id = tmp_lab.unit_id
+ AND us.course_of_study_lid = cos.lid
+ AND (
+ tmp_lab.date_of_work BETWEEN cos.valid_from AND cos.valid_to
+ OR tmp_lab.date_of_work IS NULL)
+ limit 1
+)
+WHERE
+ course_of_study_id IS NULL
+ AND 0 = (
+ SELECT
+ count(*)
+ FROM
+ unit u,
+ k_elementtype k
+ WHERE
+ u.id = tmp_lab.unit_id
+ AND u.k_elementtype_id = k.id
+ AND k.hiskey_id NOT IN (2,3)
+ )
+;
+
+-- Sonderbehandlung Umrechnung Punkte bei Staatsexamen Jura in Noten
+UPDATE
+ tmp_lab
+SET
+ grade =
+ CASE
+ WHEN grade BETWEEN 14 AND 18 THEN 1
+ WHEN grade BETWEEN 11.5 AND 13.99 THEN 2
+ WHEN grade BETWEEN 9 AND 11.49 THEN 7
+ WHEN grade BETWEEN 6.5 AND 8.99 THEN 3
+ WHEN grade BETWEEN 4 AND 6.49 THEN 4
+ WHEN grade BETWEEN 0 AND 3.99 THEN 5
+ ELSE
+ grade
+ END
+WHERE
+ course_of_study_id IN (
+ SELECT
+ cos.id
+ FROM
+ course_of_study cos,
+ subject s,
+ degree d
+ WHERE
+ cos.subject_lid = s.lid
+ AND cos.degree_lid = d.lid
+ AND coalesce(d.astat_bund, d.astat_land) IN ('08','09') -- Staatsexamen
+ AND coalesce(s.astat_bund, s.astat_land) = '0135' -- Jura (Rechtswissenschaft)
+ )
+ AND type_of_grading IS NULL OR type_of_grading = 1 -- unbekannt oder Punkte
+;
+
+UPDATE
+ tmp_lab
+SET
+ type_of_doctorate_astat = (
+ SELECT
+ to_number(D.astat,'99999')
+ FROM
+ k_type_of_doctorate D
+ WHERE
+ D.id = tmp_lab.type_of_doctorate_id
+ )
+WHERE
+ type_of_doctorate_id IS NOT NULL
+;
+
+--Anerkennung
+UPDATE
+ tmp_lab
+SET
+ studysemester_acknowledgement_semester_overall = S.semester_overall,
+ studysemester_acknowledgement_former_degree_program = S.former_degree_program,
+ studysemester_acknowledgement_practice_semester = S.practice_semester,
+ studysemester_acknowledgement_semester_abroad = S.semester_abroad
+FROM
+ studysemester_acknowledgement S
+WHERE
+ S.id = tmp_lab.studysemester_acknowledgement_id
+;
+
+UPDATE
+ tmp_lab
+SET
+ panerk = 'J'
+WHERE
+ examplan_id IN (
+ SELECT
+ examplan_id
+ FROM
+ accreditation
+ )
+;
+
+CREATE index i_tl1 ON tmp_lab(student_id);
+
+]]>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Externe Abschlussprüfungen
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Verzeichnis der Prüfungen.
+
+= $start_pruef_sem {ab hier werden Daten ausgewertet}
+and
+((lab.pnr in ($POS_PNR) or "0"="$POS_PNR")
+or lab.pnr in
+ (
+select distinct pnr from tmp_hskonst
+)
+)
+;
+
+]]>
+
+
+= $start_pruef_sem
+and
+((lab.pnr in ($POS_PNR) or '"0"'='"$POS_PNR"')
+or lab.pnr in
+ (
+select distinct pnr from tmp_hskonst
+)
+)
+;
+
+]]>
+
+
+
+
+
+
+
+
+
+
+zusätzliche Merkmale für amtliche Prüfungsstatistik
+
+
+
+
+= $start_pruef_sem
+;
+
+]]>
+
+
+
+
+
+
+
+
+
+
+ falls Studenten gelöscht wurden, werden diese durch die obigen Proz. in
+ SuperX nicht berührt
+
+
+
+
+= date('$DATUM')
+and fktkz = 'LOE'
+and sos.mtknr is null;
+]]>
+
+
+
+
+
+
+
+
+
+
+Vorheriges Studium und Zweitstudiengänge
+
+
+
+
+ 9 then 1 else DP.studynumber end AS studiengang_nr
+,DP.subjectnumber AS fach_nr
+,DE.astat_land AS ang_abschl
+,SU.astat_land AS fach
+,DP.number_of_studysemester::INT AS fachsem_zahl
+,C.astat AS country_astat
+,D.k_form_of_studies_id
+FROM studentexternal SE
+JOIN student S ON SE.person_id = S.person_id AND S.registrationnumber IS NOT NULL
+JOIN superx_sos SS on SS.id=S.id
+JOIN degree_program_before D ON D.studentexternal_id = SE.id
+JOIN degree_program_progress_before DP ON DP.degree_program_before_id = D.id
+JOIN subject SU ON SU.lid = DP.subject_lid AND now() BETWEEN SU.valid_from AND SU.valid_to
+JOIN degree DE ON DE.lid = D.degree_lid AND now() BETWEEN DE.valid_from AND DE.valid_to
+LEFT JOIN k_studystatus KSS ON KSS.id=DP.k_studystatus_id
+LEFT JOIN k_type_of_study KTS ON KTS.id=DP.id
+LEFT JOIN k_enrollment KEN ON KEN.id = DP.k_enrollment_id
+LEFT JOIN term_type TT ON DP.term_type_id = TT.id
+LEFT JOIN university U ON SE.university_lid = U.lid AND now() BETWEEN U.valid_from AND U.valid_to
+LEFT JOIN country C ON C.lid = SE.country_lid
+
+;
+]]>
+
+
+
+
+
+
+
+
+
+= $start_stud_sem
+group by stg.semester
+order by stg.semester;
+
+]]>
+
+
+
+
+
+= $start_stud_sem
+group by stg.semester
+order by stg.semester;
+
+
+]]>
+
+
+= $start_stud_sem
+and DP.startdate=date(P.startdate)
+and DP.enddate=date(P.enddate)
+group by 1
+;
+
+]]>
+
+
+
+
+
+
+
+
+ 'J')
+--AND lab.prueck = 0
+AND (S.fehlerkz not in ('F', 'V') or S.fehlerkz is null)
+group by lab.psem
+;
+
+]]>
+
+
+= $start_pruef_sem
+and lab.pnr in (select distinct pnr from tmp_hskonst)
+group by 1,2
+;
+
+]]>
+
+
+= $start_pruef_sem
+and lab.pnr in (select distinct pnr from tmp_hskonst)
+group by lab.psem
+;
+
+
+]]>
+
+
+= $start_pruef_sem
+group by 1,2
+;
+
+
+]]>
+
+
+
+
+
+
+
+ Anschriften aus SOS
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Stichtage für Studiengänge aus POS
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+SuperX-Hochschulnr.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+SuperX-semester
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+= $start_stud_sem
+;
+
+]]>
+
+
+
+
+
+
+cif-Schlüssel
+
+
+
+
+
+
+
+
+
+
+
+
+
+= valid_from
+ or valid_from is null)
+ and (current_date <= valid_to
+ or valid_to is null)
+
+union
+SELECT
+ 9010,
+ -1,
+ '2','VD','Vorprüfung',
+ 'Vorprüfung',
+ null::char(1) , --astat
+ null::char(1), --parent
+ null::char(1), --sortc1
+ null::char(1), --bund_apnr
+ null::char(1) --sprache
+FROM tmp_xdummy
+union
+SELECT
+ 9010,
+-1,
+ '1','HD','Hauptprüfung',
+ 'Hauptprüfung',
+null::char(1) , --astat
+null::char(1), --parent
+null::char(1), --sortc1
+null::char(1), --bund_apnr
+null::char(1) --sprache
+FROM tmp_xdummy
+union
+SELECT
+ 9010,
+-1,
+ '3','AA','Abschlussarbeit',
+ 'Abschlussarbeit',
+null::char(1) , --astat
+null::char(1), --parent
+null::char(1), --sortc1
+null::char(1), --bund_apnr
+null::char(1) --sprache
+FROM tmp_xdummy
+union
+SELECT
+ 9003,
+ 0,
+ substring('' || astat from 1 for 10),--astat,
+ substring(shorttext from 1 for 10),
+ substring(defaulttext from 1 for 100),
+ substring(longtext from 1 for 150),
+ substring('' || astat from 1 for 10),--astat,
+ null::char(1),
+ null::char(1),
+ null::char(1),
+ null::char(1)
+ FROM k_gender
+ WHERE astat is not null
+ union
+SELECT
+ 631,
+ -1,
+ '' || id,
+ substring(shorttext from 1 for 10),
+ substring(defaulttext from 1 for 100),
+ substring(longtext from 1 for 150),
+ null::char(1) , --astat
+ null::char(1),
+ '' || sortorder ,--sortc1
+ null::char(1),
+ substring('' || k_language_id from 1 for 3)--sprache
+ FROM k_examination_type
+ union
+SELECT
+ 632,
+-1,
+ '' || id,
+ substring(shorttext from 1 for 10),
+ substring(defaulttext from 1 for 100),
+ substring(longtext from 1 for 150),
+'' || hiskey_id , --astat
+null::char(1), --parent
+uniquename,
+null::char(1),--bund_apnr
+substring('' || k_language_id from 1 for 3)--sprache
+ FROM k_examinationversion;
+
+
+]]>
+
+
+
+
+
+
+Schlüsseltabelle cifx
+
+
+
+
+= current_date or valid_to is null)
+ union
+SELECT
+ 12,
+0,
+ '' || id,
+ substring(shorttext from 1 for 10),
+ substring(defaulttext from 1 for 100),
+ substring(longtext from 1 for 150),
+substring('' || astat from 1 for 10),--astat,
+null::char(1),--parent
+substring('' || uniquename from 1 for 10), --sortc1
+substring('' || continent from 1 for 10), -- erdteil
+substring('' || k_language_id from 1 for 3),--sprache,
+valid_from, --gueltig von
+valid_to, --gueltig bis
+id , --sourcesystem_id
+'' || lid, --hiskey_id
+'I', --struktur_c
+lid::char(255) as lid,
+null::char(255) as parent_lid,
+sortorder
+ FROM country
+ where valid_to < current_date
+ union
+SELECT
+ 12,
+0,
+ '' || id,
+ substring(shorttext from 1 for 10),
+ substring(defaulttext from 1 for 100),
+ substring(longtext from 1 for 150),
+substring('' || astat from 1 for 10),--astat,
+null::char(1),--parent
+substring('' || uniquename from 1 for 10), --sortc1
+substring('' || continent from 1 for 10), -- erdteil
+substring('' || k_language_id from 1 for 3),--sprache,
+valid_from, --gueltig von
+valid_to, --gueltig bis
+id , --sourcesystem_id
+'' || lid, --hiskey_id
+'A' , --struktur_c
+lid::char(255) as lid,
+null::char(255) as parent_lid,
+sortorder
+ FROM country
+ where (valid_to >= current_date or valid_to is null)
+ union
+ SELECT
+ 8,
+ -1,
+ uniquename,
+ substring(shorttext from 1 for 10),
+ substring(defaulttext from 1 for 100),
+ substring(longtext from 1 for 150),
+substring('' || astat from 1 for 10),--astat,
+null::char(1),--parent
+uniquename,
+null::char(1), --bund_apnr
+substring('' || k_language_id from 1 for 3),--sprache,
+null::date, --gueltig von
+null::date, --gueltig bis
+id , --sourcesystem_id
+'' ,--hiskey_id,
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+sortorder
+ FROM k_federal_state
+ WHERE uniquename not in ('99','BO') --ohne Ausland und Berlin Ost
+ union
+SELECT
+ 9001,
+ 0,
+ '' || id, -- status,
+substring(shorttext from 1 for 10),
+ substring(defaulttext from 1 for 100),
+ substring(longtext from 1 for 150),
+substring(astat from 1 for 10), -- astat,
+null::char(1), --parent
+uniquename,
+ null::char(1) ,--bund_apnr
+substring('' || k_language_id from 1 for 3),--sprache,
+date('01.01.1900'), --gueltig von
+date('01.01.2900'), --gueltig bis
+id , --sourcesystem_id
+'' || hiskey_id, -- his_hrst,
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+sortorder
+ FROM k_studystatus
+ union
+SELECT
+ 9013,
+ 0,
+ '' || id, -- modulart,
+substring(shorttext from 1 for 10),
+ substring(defaulttext from 1 for 100),
+ substring(longtext from 1 for 150),
+null::char(1) , -- astat,
+null::char(1), --parent
+substring(uniquename from 1 for 10),--uniquename
+ null::char(1) ,--bund_apnr
+substring('' || k_language_id from 1 for 3),--sprache,
+date('01.01.1900'), --gueltig von
+date('01.01.2900'), --gueltig bis
+id , --sourcesystem_id
+'' || hiskey_id , --hiskey_id
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+sortorder
+FROM k_elementtype
+union
+ SELECT
+ 90,
+-1,
+ '' || O.id,
+ substring(O.shorttext from 1 for 10),
+ substring(O.defaulttext from 1 for 100),
+ substring(O.longtext from 1 for 150),
+substring(O.astat from 1 for 10),--astat,
+substring('' || O.parent_lid from 1 for 3),--parent
+O.uniquename,
+null::char(1), --bund_apnr
+substring('' || O.k_language_id from 1 for 3),--sprache,
+O.valid_from, --gueltig von
+O.valid_to, --gueltig bis
+O.id, --sourcesystem_id
+'' || T.hiskey_id,
+null::char(1), --struktur_c
+O.lid::char(255) as lid,
+O.parent_lid::char(255) as parent_lid,
+O.sortorder
+ FROM orgunit O,k_orgunittype T
+ where O.k_orgunittype_id=T.id
+ and T.hiskey_id=4 --Fachbereich
+union
+ SELECT
+ 619,
+-1,
+ '' || O.id,
+ substring(O.shorttext from 1 for 10),
+ substring(O.defaulttext from 1 for 100),
+ substring(O.longtext from 1 for 150),
+substring(O.astat from 1 for 10),--astat,
+substring('' || O.parent_lid from 1 for 3),--parent
+substring(O.uniquename from 1 for 10), --sortc1
+null::char(1), --bund_apnr
+substring('' || O.k_language_id from 1 for 3),--sprache,
+O.valid_from, --gueltig von
+O.valid_to, --gueltig bis
+O.id, --sourcesystem_id
+'' || T.hiskey_id,
+null::char(1), --struktur_c
+O.lid::char(255) as lid,
+O.parent_lid::char(255) as parent_lid,
+O.sortorder
+ FROM orgunit O,k_orgunittype T
+ where O.k_orgunittype_id=T.id
+ and T.hiskey_id=7 --Lehreinheit
+ union
+ --Standorte
+ SELECT
+ 9012,
+ -1,
+ '' || id,
+ substring(shorttext from 1 for 10),
+ substring(defaulttext from 1 for 100),
+ substring(longtext from 1 for 150),
+substring(astat from 1 for 10), --astat,
+null::char(1),--parent
+uniquename,
+substring('' || hiskey_id from 1 for 10), --bund_apnr
+substring('' || k_language_id from 1 for 3),--sprache,
+date('01.01.1900'), --gueltig von
+date('01.01.2900'), --gueltig bis
+id, --sourcesystem_id
+null::char(1), --hiskey_id
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+sortorder
+ FROM k_place_of_studies
+ union
+ --pstatus
+ SELECT
+ 622,
+ -1,
+ '' || id,
+ substring(shorttext from 1 for 10),
+ substring(defaulttext from 1 for 100),
+ substring(longtext from 1 for 150),
+ null::char(1),
+null::char(1),--parent
+uniquename,
+null::char(1), --bund_apnr
+substring('' || k_language_id from 1 for 3),--sprache,
+date('01.01.1900'), --gueltig von
+date('01.01.2900'), --gueltig bis
+id, --sourcesystem_id
+'' || hiskey_id,
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+sortorder
+ FROM k_workstatus
+
+ union
+ --Beurlaubungsgründe
+SELECT
+ 27,
+ 0,
+ '' || id, -- gdbu,
+substring(shorttext from 1 for 10),
+ substring(defaulttext from 1 for 100),
+ substring(longtext from 1 for 150),
+substring(astat from 1 for 10), -- astat,
+null::char(1), --parent
+uniquename,
+ null::char(1) ,--bund_apnr
+substring('' || k_language_id from 1 for 3),--sprache,
+valid_from, --gueltig von
+valid_to, --gueltig bis
+id , --sourcesystem_id
+null::char(1) , -- hiskey,
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+sortorder
+ FROM k_reason_of_leave
+
+union
+
+SELECT -- Exmatrikulationsgründe
+ 62,
+ 0,
+ '' || S.id, -- gdbu,
+ substring(S.shorttext from 1 for 10),
+ substring(S.defaulttext from 1 for 100),
+ substring(S.longtext from 1 for 150),
+ substring(S.astat from 1 for 10), -- astat,
+ '', --parent
+ S.uniquename,
+ substring(S.astat from 1 for 10), --bund_apnr
+ substring('' || S.k_language_id from 1 for 3),--sprache,
+ S.valid_from, --gueltig von
+ S.valid_to, --gueltig bis
+ S.id , --sourcesystem_id
+ '' || S.hiskey_id, -- hiskey,
+ '', --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+sortorder
+FROM k_reason_of_finishing S
+
+union
+
+SELECT
+ 9002,
+ 0,
+ '' || id, -- ,
+ substring(shorttext from 1 for 10),
+ substring(defaulttext from 1 for 100),
+ substring(longtext from 1 for 150),
+ null::char(1),-- astat,
+ null::char(1), --parent
+ uniquename,
+ null::char(1) ,--bund_apnr
+ substring('' || k_language_id from 1 for 3),--sprache,
+ date('01.01.1900'), --gueltig von
+ date('01.01.2900'), --gueltig bis
+ id , --sourcesystem_id
+ '' || hiskey_id , -- hiskey,
+ null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+sortorder
+FROM k_examination_type
+
+union
+
+SELECT
+ 9014,
+ 0,
+ '' || id, -- ,
+substring(shorttext from 1 for 10),
+ substring(defaulttext from 1 for 100),
+ substring(longtext from 1 for 150),
+null::char(1),-- astat,
+null::char(1), --parent
+uniquename,
+ null::char(1) ,--bund_apnr
+substring('' || k_language_id from 1 for 3),--sprache,
+date('01.01.1900'), --gueltig von
+date('01.01.2900'), --gueltig bis
+id , --sourcesystem_id
+'' || hiskey_id , -- hiskey,
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+sortorder
+ FROM k_examform
+
+ union
+SELECT
+ 41,
+ 0,
+ '' || id, -- ,
+substring(shorttext from 1 for 10),
+ substring(defaulttext from 1 for 100),
+ substring(longtext from 1 for 150),
+null::char(1),-- astat,
+null::char(1), --parent
+uniquename,
+ null::char(1) ,--bund_apnr
+substring('' || k_language_id from 1 for 3),--sprache,
+date('01.01.1900'), --gueltig von
+date('01.01.2900'), --gueltig bis
+id , --sourcesystem_id
+'' || hiskey_id , -- hiskey,
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+sortorder
+ FROM course_specialization
+
+ union
+
+ SELECT
+ 9005,
+ 0,
+ '' || id, -- ,
+substring(shorttext from 1 for 10),
+ substring(defaulttext from 1 for 100),
+ substring(longtext from 1 for 150),
+null::char(1),-- astat,
+null::char(1), --parent
+uniquename,
+ null::char(1) ,--bund_apnr
+substring('' || k_language_id from 1 for 3),--sprache,
+date('01.01.1900'), --gueltig von
+date('01.01.2900'), --gueltig bis
+id , --sourcesystem_id
+'' || hiskey_id , -- hiskey,
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+sortorder
+ FROM k_accreditationtype
+
+ union
+
+ SELECT
+ 9006,
+ 0,
+ '' || id, -- ,
+substring(shorttext from 1 for 10),
+ substring(defaulttext from 1 for 100),
+ substring(longtext from 1 for 150),
+ astat,
+null::char(1), --parent
+uniquename,
+astat_guest_auditor ,--bund_apnr
+substring('' || k_language_id from 1 for 3),--sprache,
+date('01.01.1900'), --gueltig von
+date('01.01.2900'), --gueltig bis
+id , --sourcesystem_id
+'' || hiskey_id , -- hiskey,
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+sortorder
+ FROM k_field_of_study
+
+ union
+
+ SELECT DISTINCT
+ 9008,
+ 0,
+ '' || examination_office_no, -- ,
+substring(examination_office_no::varchar from 1 for 10),
+ substring(examination_office_no::varchar from 1 for 100),
+ substring(examination_office_no::varchar from 1 for 150),
+ '',
+null::char(1), --parent
+examination_office_no, --uniquename
+'' ,--bund_apnr
+'',--sprache,
+date('01.01.1900'), --gueltig von
+date('01.01.2900'), --gueltig bis
+examination_office_no::int , --sourcesystem_id
+'' , -- hiskey,
+null::char(1), --struktur_c
+null::char(255) as lid,
+null::char(255) as parent_lid,
+0
+ FROM tmp_course_of_study
+ ;
+]]>
+
+
+
+
+
+
+PO-Versionen aus SOS, werden im GANG-Modul gelesen.
+
+
+
+
+
+
+
+
+
+
+
+Fächer aus SOS.
+
+
+
+
+
+
+
+
+
+
+
+Externe Studienfächer aus SOS.
+
+
+
+
+
+
+
+
+
+
+
+
+Studiengänge aus SOS.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Pruefungsordnungsdaten
+
+
+
+
+
+
+
+
+
+
+
+
+
+= $start_pruef_sem
+;
+
+]]>
+
+
+= $start_pruef_sem
+;
+
+]]>
+
+
+
+
+
+
+
+= $start_stud_sem or minder.vonsem is null)
+;
+
+]]>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ = $start_stud_sem
+and P.id=U.person_id
+and U.id=S.id
+and S.person_id=P.id
+and U.term_type_id = TT.id
+and '$STUD_IDENT'='true'
+UNION
+
+-- einfache Personendaten
+-- Beispiel 11200321^20^^Wern^^^^^
+ select
+S.mtknr_ldsg,
+U.id, --identnr (student id)
+'', --name
+SUBSTRING(COALESCE(P.firstname,P.surname) FROM 1 FOR 4), --vorname,
+'',--tel,
+'',--artkz,
+'',--anschrkz,
+'', -- O.res13
+S.person_id --(person_id
+FROM student U, superx_sos S, person P, term_type TT
+where
+U.term_year * 10 + TT.termnumber >= $start_stud_sem
+and P.id=U.person_id
+and U.id=S.id
+and S.person_id=P.id
+and U.term_type_id = TT.id
+and '$STUD_IDENT'='false'
+;
+
+]]>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+= $start_pruef_sem
+and
+((lab.pnr in ($POS_PNR) or "0"="$POS_PNR")
+or lab.pnr in
+ (
+select distinct pnr from tmp_hskonst
+)
+)
+
+
+]]>
+
+
+= $start_pruef_sem
+and
+((lab.pnr in ($POS_PNR) or '"0"'='"$POS_PNR"')
+or lab.pnr in
+ (
+select distinct pnr from tmp_hskonst
+)
+)
+
+
+]]>
+
+
+= $start_pruef_sem
+
+
+
+]]>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Beendigung
+
+
+
+
+
+
+
+
+
+
+
+Beendigung
+
+
+
+
+
+
+
+
+
+
+
+
+Personenattribute
+
+select
+P.id,
+P.person_id,
+S.registrationnumber,
+10 as systeminfo_id,
+P.personattributetype_id,
+coalesce(P.attributevalue, (select attributevalue from personattribute_value_list pav where pav.id=P.personattribute_value_list_id) ) attributevalue,
+P.valid_from,
+P.valid_to,
+'' ,--semester_von
+'' --semester_bis
+from personattribute P, student S where S.person_id= P.person_id and P.personattributetype_id in ($PERSONATTRIBUTE_IDS) order by person_id;
+
+
+
+
+
+
+
+
+
+Typ der Personattributen
+
+select
+id,
+fieldname
+from personattributetype where '$PERSONATTRIBUTE_IDS' != '0';
+
+
+
+
+
+
+
+
+
+Einzelne Ausprägungen der Personenattribute
+
+select
+personattributetype_id,
+attributevalue,
+shorttext,
+defaulttext,
+longtext
+from personattribute_value_list where '$PERSONATTRIBUTE_IDS' != '0';
+
+
+
+
+
+
+
+
+
+
+Letzter entladener Protokollsatz (STU)
+
+
+
+
+
+
+
+
+
+
+
+Letzter entladener Protokollsatz (EXA)
+
+
+
+
+
+
+
+
+
+
+
+
+
+Summierte ECTS-Punkte
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+drop table IF EXISTS tmp_lab;
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+