Browse Source

Stammdaten Upload-Job und Ausgabe-Maske; sxc_zahl_wert eingefuehrt

master
Imo John 16 hours ago
parent
commit
15dbe86797
  1. 71
      src-modules/module/sxc/conf/sxc.xml
  2. 529
      src-modules/module/sxc/etl/import_bestand/2025_5_22_mwk_nrw_hochschulkennzahlen_alt/import_bestand_mwk_nrw_hskennz.kjb
  3. 998
      src-modules/module/sxc/etl/import_bestand/2025_5_22_mwk_nrw_hochschulkennzahlen_alt/import_bestand_mwk_nrw_hskennz_1.ktr
  4. 690
      src-modules/module/sxc/etl/import_bestand/2025_5_22_mwk_nrw_hochschulkennzahlen_alt/import_bestand_mwk_nrw_hskennz_2.ktr
  5. 491
      src-modules/module/sxc/etl/import_bestand/mwk_nrw_hochschulkennzahlen/import_bestand_mwk_nrw_hskennz.kjb
  6. 1292
      src-modules/module/sxc/etl/import_bestand/mwk_nrw_hochschulkennzahlen/import_bestand_mwk_nrw_hskennz_1.ktr
  7. 666
      src-modules/module/sxc/etl/import_bestand/mwk_nrw_hochschulkennzahlen/import_bestand_mwk_nrw_hskennz_2.ktr
  8. 26
      src-modules/module/sxc/masken/47110_felderinfo.unl
  9. 1
      src-modules/module/sxc/masken/47110_maske_system_bez.unl
  10. 12
      src-modules/module/sxc/masken/47110_masken_felder_bez.unl
  11. 817
      src-modules/module/sxc/masken/47110_maskeninfo.unl
  12. 1
      src-modules/module/sxc/masken/47110_sachgeb_maske_bez.unl
  13. 7
      src-modules/module/sxc/schluesseltabellen/sichten_fuellen.sql

71
src-modules/module/sxc/conf/sxc.xml

@ -314,6 +314,71 @@ rightname="CS_BIA_STANDARDREPORTS_ADMIN[SXC]" /> @@ -314,6 +314,71 @@ rightname="CS_BIA_STANDARDREPORTS_ADMIN[SXC]" />
</rs></privileges>
</table>
<table name="sxc_zahl_wert" typ="Datentabelle" thema="">
<description>Kennzahlen aus manueller Schnittstelle</description>
<columns>
<column name="tid" type ="SERIAL" size ="4" default ="" notnull ="true" ><comment>Primaerschluessel</comment></column>
<column name="hs_nr" type ="INTEGER" size ="" default ="" notnull ="false" description="Hochschulnummer" />
<column name="kenn_zahl" type ="CHAR" size ="100" default ="" notnull ="true" description="Name der Kennzahl"/>
<column name="jahr" type ="SMALLINT" size ="4" default ="" notnull ="false" description="Bezugsjahr" />
<column name="sem" type ="SMALLINT" size ="4" default ="" notnull ="false" description="Bezugssemester" />
<column name="ch110_institut" type ="CHAR" size ="10" default ="" notnull ="false" description="Kostenstelle/Institut" />
<column name="sxc_bestand_id" type ="INTEGER" size ="" default ="" notnull ="false" description="ID des Bestandes" />
<column name="wert" type ="DECIMAL" size ="(20,10)" default ="" notnull ="false" description="Wert der Kennzahl" />
<column name="generic_dim1" type ="CHAR" size ="100" default ="" notnull ="false" description="Generische Definition 1" ><comment></comment></column>
<column name="generic_dim2" type ="CHAR" size ="100" default ="" notnull ="false" description="Generische Definition 2" ><comment></comment></column>
</columns>
<indexes>
<index name="i_sxc_zahl_wert" unique="false">
<index-column name="kenn_zahl"/>
<index-column name="sem"/>
</index>
<index name="i_sxc_zahl_wert2" unique="false">
<index-column name="kenn_zahl"/>
<index-column name="jahr"/>
<index-column name="ch110_institut"/>
</index>
</indexes>
<!--
<primaryKeys><rs>
<row>
<fld name='table_cat'></fld>
<fld name='table_schem'>public</fld>
<fld name='table_name'>sxc_zahl_wert</fld>
<fld name='column_name'>tid</fld>
<fld name='key_seq'>1</fld>
<fld name='pk_name'>i_sxc_zahl_wert</fld>
</row>
</rs></primaryKeys>
<foreignKeys></foreignKeys>
<importedKeys></importedKeys>
<privileges><rs>
</rs></privileges>-->
</table>
<table name="sxc_bestand" typ="Datentabelle" thema="">
<description>Bestände und deren Quellen</description>
<columns>
<column name="tid" type ="SERIAL" size ="4" default ="" notnull ="true" ><comment>Primaerschluessel</comment></column>
<column name="name" type ="VARCHAR" size ="255" default ="" notnull ="false" description="Name des Bestandes" ><comment>bspw. MKW NRW Hochschulkennzahlen</comment></column>
<column name="quelle" type ="VARCHAR" size ="255" default ="" notnull ="false" description="Quelle des Bestandes" ><comment>bspw. MKW NRW</comment></column>
<column name="bland" type ="INTEGER" size ="" default ="" notnull ="false" description="Bundesland" ><comment>0 heißt deutschlandweit</comment></column>
</columns>
</table>
<table name="sxc_mapping_bestand" typ="Datentabelle" thema="">
<description>Bestände und deren Quellen</description>
<columns>
<column name="sxc_bestand_id" type ="INTEGER" size ="4" default ="" notnull ="true" ><comment>bspw. 1</comment></column>
<column name="object_type" type ="VARCHAR" size ="255" default ="" notnull ="false" description="Objekt-Typ" ><comment>bspw. Hochschule</comment></column>
<column name="object_value" type ="VARCHAR" size ="255" default ="" notnull ="false" description="Objekt-Wert" ><comment>bspw. Uni Leipzig</comment></column>
<column name="target_table" type ="VARCHAR" size ="255" default ="" notnull ="false" description="Zieltabelle" ><comment>bspw. sxc_zahl_wert</comment></column>
<column name="target_table_bestand_id" type ="INTEGER" size ="255" default ="" notnull ="false" description="Bestand-ID in Zieltabelle" ><comment>bspw. 1</comment></column>
<column name="target_column" type ="VARCHAR" size ="255" default ="" notnull ="false" description="Zielspalte" ><comment>bspw. hs_nr</comment></column>
<column name="target_value" type ="INTEGER" size ="255" default ="" notnull ="false" description="Wert in Zielspalte" ><comment>bspw. 361</comment></column>
</columns>
</table>
<views>
<view name="sxc_hochschulen_art">
@ -422,6 +487,12 @@ parent="SuperX-Connect">Abfragen zur Administration von SuperX-Connect </thema> @@ -422,6 +487,12 @@ parent="SuperX-Connect">Abfragen zur Administration von SuperX-Connect </thema>
<path>$SXC_PFAD/masken</path>
</src>
</maske>
<maske tid="47110" name="Stammdaten NRW" thema="Hochschulvergleich">
<description></description>
<src>
<path>$SXC_PFAD/masken</path>
</src>
</maske>
</masken>
<data-integrity>

529
src-modules/module/sxc/etl/import_bestand/2025_5_22_mwk_nrw_hochschulkennzahlen_alt/import_bestand_mwk_nrw_hskennz.kjb

@ -0,0 +1,529 @@ @@ -0,0 +1,529 @@
<?xml version="1.0" encoding="UTF-8"?>
<job>
<name>import_bestand_mwk_nrw_hskennz</name>
<description/>
<extended_description/>
<job_version/>
<directory>&#x2f;</directory>
<created_user>-</created_user>
<created_date>2025&#x2f;05&#x2f;09 08&#x3a;04&#x3a;01.642</created_date>
<modified_user>-</modified_user>
<modified_date>2025&#x2f;05&#x2f;09 08&#x3a;04&#x3a;01.642</modified_date>
<parameters>
</parameters>
<connection>
<name>eduetl</name>
<server>localhost</server>
<type>POSTGRESQL</type>
<access>Native</access>
<database>eduetl_muster_2024_12</database>
<port>9996</port>
<username>superx</username>
<password>Encrypted 2be98afc86aa7f285a51faf7ed9c3fd89</password>
<servername/>
<data_tablespace/>
<index_tablespace/>
<attributes>
<attribute><code>FORCE_IDENTIFIERS_TO_LOWERCASE</code><attribute>N</attribute></attribute>
<attribute><code>FORCE_IDENTIFIERS_TO_UPPERCASE</code><attribute>N</attribute></attribute>
<attribute><code>IS_CLUSTERED</code><attribute>N</attribute></attribute>
<attribute><code>PORT_NUMBER</code><attribute>9996</attribute></attribute>
<attribute><code>PRESERVE_RESERVED_WORD_CASE</code><attribute>Y</attribute></attribute>
<attribute><code>QUOTE_ALL_FIELDS</code><attribute>N</attribute></attribute>
<attribute><code>SUPPORTS_BOOLEAN_DATA_TYPE</code><attribute>Y</attribute></attribute>
<attribute><code>SUPPORTS_TIMESTAMP_DATA_TYPE</code><attribute>Y</attribute></attribute>
<attribute><code>USE_POOLING</code><attribute>N</attribute></attribute>
</attributes>
</connection>
<slaveservers>
</slaveservers>
<job-log-table>
<connection/>
<schema/>
<table/>
<size_limit_lines/>
<interval/>
<timeout_days/>
<field>
<id>ID_JOB</id>
<enabled>Y</enabled>
<name>ID_JOB</name>
</field>
<field>
<id>CHANNEL_ID</id>
<enabled>Y</enabled>
<name>CHANNEL_ID</name>
</field>
<field>
<id>JOBNAME</id>
<enabled>Y</enabled>
<name>JOBNAME</name>
</field>
<field>
<id>STATUS</id>
<enabled>Y</enabled>
<name>STATUS</name>
</field>
<field>
<id>LINES_READ</id>
<enabled>Y</enabled>
<name>LINES_READ</name>
</field>
<field>
<id>LINES_WRITTEN</id>
<enabled>Y</enabled>
<name>LINES_WRITTEN</name>
</field>
<field>
<id>LINES_UPDATED</id>
<enabled>Y</enabled>
<name>LINES_UPDATED</name>
</field>
<field>
<id>LINES_INPUT</id>
<enabled>Y</enabled>
<name>LINES_INPUT</name>
</field>
<field>
<id>LINES_OUTPUT</id>
<enabled>Y</enabled>
<name>LINES_OUTPUT</name>
</field>
<field>
<id>LINES_REJECTED</id>
<enabled>Y</enabled>
<name>LINES_REJECTED</name>
</field>
<field>
<id>ERRORS</id>
<enabled>Y</enabled>
<name>ERRORS</name>
</field>
<field>
<id>STARTDATE</id>
<enabled>Y</enabled>
<name>STARTDATE</name>
</field>
<field>
<id>ENDDATE</id>
<enabled>Y</enabled>
<name>ENDDATE</name>
</field>
<field>
<id>LOGDATE</id>
<enabled>Y</enabled>
<name>LOGDATE</name>
</field>
<field>
<id>DEPDATE</id>
<enabled>Y</enabled>
<name>DEPDATE</name>
</field>
<field>
<id>REPLAYDATE</id>
<enabled>Y</enabled>
<name>REPLAYDATE</name>
</field>
<field>
<id>LOG_FIELD</id>
<enabled>Y</enabled>
<name>LOG_FIELD</name>
</field>
<field>
<id>EXECUTING_SERVER</id>
<enabled>N</enabled>
<name>EXECUTING_SERVER</name>
</field>
<field>
<id>EXECUTING_USER</id>
<enabled>N</enabled>
<name>EXECUTING_USER</name>
</field>
<field>
<id>START_JOB_ENTRY</id>
<enabled>N</enabled>
<name>START_JOB_ENTRY</name>
</field>
<field>
<id>CLIENT</id>
<enabled>N</enabled>
<name>CLIENT</name>
</field>
</job-log-table>
<jobentry-log-table>
<connection/>
<schema/>
<table/>
<timeout_days/>
<field>
<id>ID_BATCH</id>
<enabled>Y</enabled>
<name>ID_BATCH</name>
</field>
<field>
<id>CHANNEL_ID</id>
<enabled>Y</enabled>
<name>CHANNEL_ID</name>
</field>
<field>
<id>LOG_DATE</id>
<enabled>Y</enabled>
<name>LOG_DATE</name>
</field>
<field>
<id>JOBNAME</id>
<enabled>Y</enabled>
<name>TRANSNAME</name>
</field>
<field>
<id>JOBENTRYNAME</id>
<enabled>Y</enabled>
<name>STEPNAME</name>
</field>
<field>
<id>LINES_READ</id>
<enabled>Y</enabled>
<name>LINES_READ</name>
</field>
<field>
<id>LINES_WRITTEN</id>
<enabled>Y</enabled>
<name>LINES_WRITTEN</name>
</field>
<field>
<id>LINES_UPDATED</id>
<enabled>Y</enabled>
<name>LINES_UPDATED</name>
</field>
<field>
<id>LINES_INPUT</id>
<enabled>Y</enabled>
<name>LINES_INPUT</name>
</field>
<field>
<id>LINES_OUTPUT</id>
<enabled>Y</enabled>
<name>LINES_OUTPUT</name>
</field>
<field>
<id>LINES_REJECTED</id>
<enabled>Y</enabled>
<name>LINES_REJECTED</name>
</field>
<field>
<id>ERRORS</id>
<enabled>Y</enabled>
<name>ERRORS</name>
</field>
<field>
<id>RESULT</id>
<enabled>Y</enabled>
<name>RESULT</name>
</field>
<field>
<id>NR_RESULT_ROWS</id>
<enabled>Y</enabled>
<name>NR_RESULT_ROWS</name>
</field>
<field>
<id>NR_RESULT_FILES</id>
<enabled>Y</enabled>
<name>NR_RESULT_FILES</name>
</field>
<field>
<id>LOG_FIELD</id>
<enabled>N</enabled>
<name>LOG_FIELD</name>
</field>
<field>
<id>COPY_NR</id>
<enabled>N</enabled>
<name>COPY_NR</name>
</field>
</jobentry-log-table>
<channel-log-table>
<connection/>
<schema/>
<table/>
<timeout_days/>
<field>
<id>ID_BATCH</id>
<enabled>Y</enabled>
<name>ID_BATCH</name>
</field>
<field>
<id>CHANNEL_ID</id>
<enabled>Y</enabled>
<name>CHANNEL_ID</name>
</field>
<field>
<id>LOG_DATE</id>
<enabled>Y</enabled>
<name>LOG_DATE</name>
</field>
<field>
<id>LOGGING_OBJECT_TYPE</id>
<enabled>Y</enabled>
<name>LOGGING_OBJECT_TYPE</name>
</field>
<field>
<id>OBJECT_NAME</id>
<enabled>Y</enabled>
<name>OBJECT_NAME</name>
</field>
<field>
<id>OBJECT_COPY</id>
<enabled>Y</enabled>
<name>OBJECT_COPY</name>
</field>
<field>
<id>REPOSITORY_DIRECTORY</id>
<enabled>Y</enabled>
<name>REPOSITORY_DIRECTORY</name>
</field>
<field>
<id>FILENAME</id>
<enabled>Y</enabled>
<name>FILENAME</name>
</field>
<field>
<id>OBJECT_ID</id>
<enabled>Y</enabled>
<name>OBJECT_ID</name>
</field>
<field>
<id>OBJECT_REVISION</id>
<enabled>Y</enabled>
<name>OBJECT_REVISION</name>
</field>
<field>
<id>PARENT_CHANNEL_ID</id>
<enabled>Y</enabled>
<name>PARENT_CHANNEL_ID</name>
</field>
<field>
<id>ROOT_CHANNEL_ID</id>
<enabled>Y</enabled>
<name>ROOT_CHANNEL_ID</name>
</field>
</channel-log-table>
<pass_batchid>N</pass_batchid>
<shared_objects_file/>
<entries>
<entry>
<name>START</name>
<description/>
<type>SPECIAL</type>
<start>Y</start>
<dummy>N</dummy>
<repeat>N</repeat>
<schedulerType>0</schedulerType>
<intervalSeconds>0</intervalSeconds>
<intervalMinutes>60</intervalMinutes>
<hour>12</hour>
<minutes>0</minutes>
<weekDay>1</weekDay>
<DayOfMonth>1</DayOfMonth>
<parallel>N</parallel>
<draw>Y</draw>
<nr>0</nr>
<xloc>96</xloc>
<yloc>192</yloc>
</entry>
<entry>
<name>Success</name>
<description/>
<type>SUCCESS</type>
<parallel>N</parallel>
<draw>Y</draw>
<nr>0</nr>
<xloc>1056</xloc>
<yloc>192</yloc>
</entry>
<entry>
<name>excel_into_tmp</name>
<description/>
<type>TRANS</type>
<specification_method>filename</specification_method>
<trans_object_id/>
<filename>&#x24;&#x7b;Internal.Job.Filename.Directory&#x7d;&#x2f;import_bestand_mwk_nrw_hskennz_1.ktr</filename>
<transname/>
<arg_from_previous>N</arg_from_previous>
<params_from_previous>N</params_from_previous>
<exec_per_row>N</exec_per_row>
<clear_rows>N</clear_rows>
<clear_files>N</clear_files>
<set_logfile>N</set_logfile>
<logfile/>
<logext/>
<add_date>N</add_date>
<add_time>N</add_time>
<loglevel>Basic</loglevel>
<cluster>N</cluster>
<slave_server_name/>
<set_append_logfile>N</set_append_logfile>
<wait_until_finished>Y</wait_until_finished>
<follow_abort_remote>N</follow_abort_remote>
<create_parent_folder>N</create_parent_folder>
<logging_remote_work>N</logging_remote_work>
<parameters>
<pass_all_parameters>Y</pass_all_parameters>
</parameters>
<parallel>N</parallel>
<draw>Y</draw>
<nr>0</nr>
<xloc>272</xloc>
<yloc>320</yloc>
</entry>
<entry>
<name>create tmp_sxc_zahl_wert</name>
<description/>
<type>SQL</type>
<sql>drop table if exists tmp_sxc_zahl_wert&#x3b;&#xa;&#xa;CREATE TABLE tmp_sxc_zahl_wert&#xa;&#x28;&#xa; tid serial,&#xa; hs_nr_str varchar&#x28;255&#x29;,&#xa; hs_nr integer,&#xa; kenn_zahl char&#x28;100&#x29; NOT NULL,&#xa; jahr smallint,&#xa; sem smallint,&#xa; ch110_institut char&#x28;10&#x29;,&#xa; bland integer,&#xa; sxc_bestand_id integer,&#xa; wert_str varchar&#x28;255&#x29;,&#xa; wert decimal&#x28;20,10&#x29;,&#xa; generic_dim1 char&#x28;100&#x29;,&#xa; generic_dim2 char&#x28;100&#x29;&#xa;&#x29;&#x3b;</sql>
<useVariableSubstitution>F</useVariableSubstitution>
<sqlfromfile>F</sqlfromfile>
<sqlfilename/>
<sendOneStatement>F</sendOneStatement>
<connection>eduetl</connection>
<parallel>N</parallel>
<draw>Y</draw>
<nr>0</nr>
<xloc>272</xloc>
<yloc>192</yloc>
</entry>
<entry>
<name>update tmp_sxc_zahl_wert</name>
<description/>
<type>SQL</type>
<sql>update tmp_sxc_zahl_wert set&#xa; hs_nr&#x3d;M.target_value&#xa;from &#xa; sxc_mapping_bestand M&#xa;where&#xa; M.sxc_bestand_id&#x3d;1&#xa; and M.object_type&#x3d;&#x27;Hochschule&#x27;&#xa; and M.object_value&#x3d;tmp_sxc_zahl_wert.hs_nr_str&#xa;&#x3b;&#xa;&#xa;&#xa;update tmp_sxc_zahl_wert&#xa;set wert &#x3d; &#xa; case &#xa; when wert_str &#x21;&#x3d; &#x27;--&#x27; &#xa; and wert_str is not null &#xa; and wert_str &#x3c;&#x3e; &#x27;&#x27; &#xa; then cast&#x28;replace&#x28;wert_str, &#x27;,&#x27; , &#x27;.&#x27;&#x29; as decimal&#x28;20,10&#x29;&#x29; &#x2a; 100&#xa; else null&#xa; end&#xa;where kenn_zahl like &#x27;&#x25;_proz&#x25;&#x27;&#xa;&#x3b;&#xa;&#xa;update tmp_sxc_zahl_wert&#xa;set wert &#x3d; &#xa; case &#xa; when wert_str &#x21;&#x3d; &#x27;--&#x27; &#xa; and wert_str is not null &#xa; and wert_str &#x3c;&#x3e; &#x27;&#x27; &#xa; then cast&#x28;replace&#x28;wert_str, &#x27;,&#x27; , &#x27;.&#x27;&#x29; as decimal&#x28;20,10&#x29;&#x29; &#xa; else null&#xa; end&#xa;where wert is null&#xa;&#x3b;&#xa;&#xa;update tmp_sxc_zahl_wert set sxc_bestand_id&#x3d;1&#x3b; -- MKW NRW Hochschulkennzahlen&#xa;update tmp_sxc_zahl_wert set bland&#x3d;5&#x3b; -- NRW&#xa;&#xa;&#xa;</sql>
<useVariableSubstitution>F</useVariableSubstitution>
<sqlfromfile>F</sqlfromfile>
<sqlfilename>&#x24;&#x7b;Internal.Job.Filename.Directory&#x7d;&#x2f;update_tmp_sxc_zahl_wert.sql</sqlfilename>
<sendOneStatement>F</sendOneStatement>
<connection>eduetl</connection>
<parallel>N</parallel>
<draw>Y</draw>
<nr>0</nr>
<xloc>688</xloc>
<yloc>192</yloc>
</entry>
<entry>
<name>insert into sxc_zahl_wert</name>
<description/>
<type>SQL</type>
<sql>delete from sxc_zahl_wert&#xa;where &#xa; sxc_bestand_id&#x3d;1&#xa; and jahr in &#x28;select jahr from tmp_sxc_zahl_wert&#x29;&#xa; and hs_nr in &#x28;select hs_nr from tmp_sxc_zahl_wert&#x29;&#xa;&#x3b;&#xa;&#xa;INSERT INTO sxc_zahl_wert&#xa;&#x28;&#xa; hs_nr,&#xa; kenn_zahl,&#xa; jahr,&#xa; sem,&#xa; bland,&#xa; ch110_institut,&#xa; sxc_bestand_id,&#xa; wert,&#xa; generic_dim1,&#xa; generic_dim2&#xa;&#x29;&#xa;select&#xa; hs_nr,&#xa; kenn_zahl,&#xa; jahr,&#xa; sem,&#xa; bland,&#xa; ch110_institut,&#xa; sxc_bestand_id,&#xa; wert,&#xa; generic_dim1,&#xa; generic_dim2&#xa;from tmp_sxc_zahl_wert&#xa;where&#xa; hs_nr is not null&#xa;order by&#xa; sxc_bestand_id,1,2,3,4&#xa;&#x3b;&#xa;&#xa;&#xa;&#xa;&#xa;drop table if exists tmp_sxc_zahl_wert&#x3b;</sql>
<useVariableSubstitution>F</useVariableSubstitution>
<sqlfromfile>F</sqlfromfile>
<sqlfilename/>
<sendOneStatement>F</sendOneStatement>
<connection>eduetl</connection>
<parallel>N</parallel>
<draw>Y</draw>
<nr>0</nr>
<xloc>880</xloc>
<yloc>272</yloc>
</entry>
<entry>
<name>excel_into_tmp 2</name>
<description/>
<type>TRANS</type>
<specification_method>filename</specification_method>
<trans_object_id/>
<filename>&#x24;&#x7b;Internal.Job.Filename.Directory&#x7d;&#x2f;import_bestand_mwk_nrw_hskennz_2.ktr</filename>
<transname/>
<arg_from_previous>N</arg_from_previous>
<params_from_previous>N</params_from_previous>
<exec_per_row>N</exec_per_row>
<clear_rows>N</clear_rows>
<clear_files>N</clear_files>
<set_logfile>N</set_logfile>
<logfile/>
<logext/>
<add_date>N</add_date>
<add_time>N</add_time>
<loglevel>Basic</loglevel>
<cluster>N</cluster>
<slave_server_name/>
<set_append_logfile>N</set_append_logfile>
<wait_until_finished>Y</wait_until_finished>
<follow_abort_remote>N</follow_abort_remote>
<create_parent_folder>N</create_parent_folder>
<logging_remote_work>N</logging_remote_work>
<parameters>
<pass_all_parameters>Y</pass_all_parameters>
</parameters>
<parallel>N</parallel>
<draw>Y</draw>
<nr>0</nr>
<xloc>448</xloc>
<yloc>320</yloc>
</entry>
</entries>
<hops>
<hop>
<from>START</from>
<to>create tmp_sxc_zahl_wert</to>
<from_nr>0</from_nr>
<to_nr>0</to_nr>
<enabled>Y</enabled>
<evaluation>Y</evaluation>
<unconditional>Y</unconditional>
</hop>
<hop>
<from>create tmp_sxc_zahl_wert</from>
<to>excel_into_tmp</to>
<from_nr>0</from_nr>
<to_nr>0</to_nr>
<enabled>Y</enabled>
<evaluation>Y</evaluation>
<unconditional>N</unconditional>
</hop>
<hop>
<from>insert into sxc_zahl_wert</from>
<to>Success</to>
<from_nr>0</from_nr>
<to_nr>0</to_nr>
<enabled>Y</enabled>
<evaluation>Y</evaluation>
<unconditional>N</unconditional>
</hop>
<hop>
<from>update tmp_sxc_zahl_wert</from>
<to>insert into sxc_zahl_wert</to>
<from_nr>0</from_nr>
<to_nr>0</to_nr>
<enabled>Y</enabled>
<evaluation>Y</evaluation>
<unconditional>N</unconditional>
</hop>
<hop>
<from>excel_into_tmp</from>
<to>excel_into_tmp 2</to>
<from_nr>0</from_nr>
<to_nr>0</to_nr>
<enabled>Y</enabled>
<evaluation>Y</evaluation>
<unconditional>N</unconditional>
</hop>
<hop>
<from>excel_into_tmp 2</from>
<to>update tmp_sxc_zahl_wert</to>
<from_nr>0</from_nr>
<to_nr>0</to_nr>
<enabled>Y</enabled>
<evaluation>Y</evaluation>
<unconditional>N</unconditional>
</hop>
<hop>
<from>update tmp_sxc_zahl_wert</from>
<to>Success</to>
<from_nr>0</from_nr>
<to_nr>0</to_nr>
<enabled>N</enabled>
<evaluation>Y</evaluation>
<unconditional>N</unconditional>
</hop>
</hops>
<notepads>
</notepads>
</job>

998
src-modules/module/sxc/etl/import_bestand/2025_5_22_mwk_nrw_hochschulkennzahlen_alt/import_bestand_mwk_nrw_hskennz_1.ktr

@ -0,0 +1,998 @@ @@ -0,0 +1,998 @@
<?xml version="1.0" encoding="UTF-8"?>
<transformation>
<info>
<name>import_bestand_mwk_nrw_hskennz_1</name>
<description/>
<extended_description/>
<trans_version/>
<trans_type>Normal</trans_type>
<trans_status>0</trans_status>
<directory>&#x2f;</directory>
<parameters>
<parameter>
<name>PATH_TO_UPLOADFILE</name>
<default_value>file&#x3a;&#x2f;&#x2f;&#x2f;home&#x2f;superx&#x2f;git&#x2f;Memtext-Interna&#x2f;Projekte&#x2f;duisburg-essen_uni&#x2f;muster&#x2f;2025_stammdaten_nrw&#x2f;Stammdaten_MKW_orig_2023.xlsx</default_value>
<description/>
</parameter>
</parameters>
<log>
<trans-log-table>
<connection/>
<schema/>
<table/>
<size_limit_lines/>
<interval/>
<timeout_days/>
<field>
<id>ID_BATCH</id>
<enabled>Y</enabled>
<name>ID_BATCH</name>
</field>
<field>
<id>CHANNEL_ID</id>
<enabled>Y</enabled>
<name>CHANNEL_ID</name>
</field>
<field>
<id>TRANSNAME</id>
<enabled>Y</enabled>
<name>TRANSNAME</name>
</field>
<field>
<id>STATUS</id>
<enabled>Y</enabled>
<name>STATUS</name>
</field>
<field>
<id>LINES_READ</id>
<enabled>Y</enabled>
<name>LINES_READ</name>
<subject/>
</field>
<field>
<id>LINES_WRITTEN</id>
<enabled>Y</enabled>
<name>LINES_WRITTEN</name>
<subject/>
</field>
<field>
<id>LINES_UPDATED</id>
<enabled>Y</enabled>
<name>LINES_UPDATED</name>
<subject/>
</field>
<field>
<id>LINES_INPUT</id>
<enabled>Y</enabled>
<name>LINES_INPUT</name>
<subject/>
</field>
<field>
<id>LINES_OUTPUT</id>
<enabled>Y</enabled>
<name>LINES_OUTPUT</name>
<subject/>
</field>
<field>
<id>LINES_REJECTED</id>
<enabled>Y</enabled>
<name>LINES_REJECTED</name>
<subject/>
</field>
<field>
<id>ERRORS</id>
<enabled>Y</enabled>
<name>ERRORS</name>
</field>
<field>
<id>STARTDATE</id>
<enabled>Y</enabled>
<name>STARTDATE</name>
</field>
<field>
<id>ENDDATE</id>
<enabled>Y</enabled>
<name>ENDDATE</name>
</field>
<field>
<id>LOGDATE</id>
<enabled>Y</enabled>
<name>LOGDATE</name>
</field>
<field>
<id>DEPDATE</id>
<enabled>Y</enabled>
<name>DEPDATE</name>
</field>
<field>
<id>REPLAYDATE</id>
<enabled>Y</enabled>
<name>REPLAYDATE</name>
</field>
<field>
<id>LOG_FIELD</id>
<enabled>Y</enabled>
<name>LOG_FIELD</name>
</field>
<field>
<id>EXECUTING_SERVER</id>
<enabled>N</enabled>
<name>EXECUTING_SERVER</name>
</field>
<field>
<id>EXECUTING_USER</id>
<enabled>N</enabled>
<name>EXECUTING_USER</name>
</field>
<field>
<id>CLIENT</id>
<enabled>N</enabled>
<name>CLIENT</name>
</field>
</trans-log-table>
<perf-log-table>
<connection/>
<schema/>
<table/>
<interval/>
<timeout_days/>
<field>
<id>ID_BATCH</id>
<enabled>Y</enabled>
<name>ID_BATCH</name>
</field>
<field>
<id>SEQ_NR</id>
<enabled>Y</enabled>
<name>SEQ_NR</name>
</field>
<field>
<id>LOGDATE</id>
<enabled>Y</enabled>
<name>LOGDATE</name>
</field>
<field>
<id>TRANSNAME</id>
<enabled>Y</enabled>
<name>TRANSNAME</name>
</field>
<field>
<id>STEPNAME</id>
<enabled>Y</enabled>
<name>STEPNAME</name>
</field>
<field>
<id>STEP_COPY</id>
<enabled>Y</enabled>
<name>STEP_COPY</name>
</field>
<field>
<id>LINES_READ</id>
<enabled>Y</enabled>
<name>LINES_READ</name>
</field>
<field>
<id>LINES_WRITTEN</id>
<enabled>Y</enabled>
<name>LINES_WRITTEN</name>
</field>
<field>
<id>LINES_UPDATED</id>
<enabled>Y</enabled>
<name>LINES_UPDATED</name>
</field>
<field>
<id>LINES_INPUT</id>
<enabled>Y</enabled>
<name>LINES_INPUT</name>
</field>
<field>
<id>LINES_OUTPUT</id>
<enabled>Y</enabled>
<name>LINES_OUTPUT</name>
</field>
<field>
<id>LINES_REJECTED</id>
<enabled>Y</enabled>
<name>LINES_REJECTED</name>
</field>
<field>
<id>ERRORS</id>
<enabled>Y</enabled>
<name>ERRORS</name>
</field>
<field>
<id>INPUT_BUFFER_ROWS</id>
<enabled>Y</enabled>
<name>INPUT_BUFFER_ROWS</name>
</field>
<field>
<id>OUTPUT_BUFFER_ROWS</id>
<enabled>Y</enabled>
<name>OUTPUT_BUFFER_ROWS</name>
</field>
</perf-log-table>
<channel-log-table>
<connection/>
<schema/>
<table/>
<timeout_days/>
<field>
<id>ID_BATCH</id>
<enabled>Y</enabled>
<name>ID_BATCH</name>
</field>
<field>
<id>CHANNEL_ID</id>
<enabled>Y</enabled>
<name>CHANNEL_ID</name>
</field>
<field>
<id>LOG_DATE</id>
<enabled>Y</enabled>
<name>LOG_DATE</name>
</field>
<field>
<id>LOGGING_OBJECT_TYPE</id>
<enabled>Y</enabled>
<name>LOGGING_OBJECT_TYPE</name>
</field>
<field>
<id>OBJECT_NAME</id>
<enabled>Y</enabled>
<name>OBJECT_NAME</name>
</field>
<field>
<id>OBJECT_COPY</id>
<enabled>Y</enabled>
<name>OBJECT_COPY</name>
</field>
<field>
<id>REPOSITORY_DIRECTORY</id>
<enabled>Y</enabled>
<name>REPOSITORY_DIRECTORY</name>
</field>
<field>
<id>FILENAME</id>
<enabled>Y</enabled>
<name>FILENAME</name>
</field>
<field>
<id>OBJECT_ID</id>
<enabled>Y</enabled>
<name>OBJECT_ID</name>
</field>
<field>
<id>OBJECT_REVISION</id>
<enabled>Y</enabled>
<name>OBJECT_REVISION</name>
</field>
<field>
<id>PARENT_CHANNEL_ID</id>
<enabled>Y</enabled>
<name>PARENT_CHANNEL_ID</name>
</field>
<field>
<id>ROOT_CHANNEL_ID</id>
<enabled>Y</enabled>
<name>ROOT_CHANNEL_ID</name>
</field>
</channel-log-table>
<step-log-table>
<connection/>
<schema/>
<table/>
<timeout_days/>
<field>
<id>ID_BATCH</id>
<enabled>Y</enabled>
<name>ID_BATCH</name>
</field>
<field>
<id>CHANNEL_ID</id>
<enabled>Y</enabled>
<name>CHANNEL_ID</name>
</field>
<field>
<id>LOG_DATE</id>
<enabled>Y</enabled>
<name>LOG_DATE</name>
</field>
<field>
<id>TRANSNAME</id>
<enabled>Y</enabled>
<name>TRANSNAME</name>
</field>
<field>
<id>STEPNAME</id>
<enabled>Y</enabled>
<name>STEPNAME</name>
</field>
<field>
<id>STEP_COPY</id>
<enabled>Y</enabled>
<name>STEP_COPY</name>
</field>
<field>
<id>LINES_READ</id>
<enabled>Y</enabled>
<name>LINES_READ</name>
</field>
<field>
<id>LINES_WRITTEN</id>
<enabled>Y</enabled>
<name>LINES_WRITTEN</name>
</field>
<field>
<id>LINES_UPDATED</id>
<enabled>Y</enabled>
<name>LINES_UPDATED</name>
</field>
<field>
<id>LINES_INPUT</id>
<enabled>Y</enabled>
<name>LINES_INPUT</name>
</field>
<field>
<id>LINES_OUTPUT</id>
<enabled>Y</enabled>
<name>LINES_OUTPUT</name>
</field>
<field>
<id>LINES_REJECTED</id>
<enabled>Y</enabled>
<name>LINES_REJECTED</name>
</field>
<field>
<id>ERRORS</id>
<enabled>Y</enabled>
<name>ERRORS</name>
</field>
<field>
<id>LOG_FIELD</id>
<enabled>N</enabled>
<name>LOG_FIELD</name>
</field>
</step-log-table>
<metrics-log-table>
<connection/>
<schema/>
<table/>
<timeout_days/>
<field>
<id>ID_BATCH</id>
<enabled>Y</enabled>
<name>ID_BATCH</name>
</field>
<field>
<id>CHANNEL_ID</id>
<enabled>Y</enabled>
<name>CHANNEL_ID</name>
</field>
<field>
<id>LOG_DATE</id>
<enabled>Y</enabled>
<name>LOG_DATE</name>
</field>
<field>
<id>METRICS_DATE</id>
<enabled>Y</enabled>
<name>METRICS_DATE</name>
</field>
<field>
<id>METRICS_CODE</id>
<enabled>Y</enabled>
<name>METRICS_CODE</name>
</field>
<field>
<id>METRICS_DESCRIPTION</id>
<enabled>Y</enabled>
<name>METRICS_DESCRIPTION</name>
</field>
<field>
<id>METRICS_SUBJECT</id>
<enabled>Y</enabled>
<name>METRICS_SUBJECT</name>
</field>
<field>
<id>METRICS_TYPE</id>
<enabled>Y</enabled>
<name>METRICS_TYPE</name>
</field>
<field>
<id>METRICS_VALUE</id>
<enabled>Y</enabled>
<name>METRICS_VALUE</name>
</field>
</metrics-log-table>
</log>
<maxdate>
<connection/>
<table/>
<field/>
<offset>0.0</offset>
<maxdiff>0.0</maxdiff>
</maxdate>
<size_rowset>10000</size_rowset>
<sleep_time_empty>50</sleep_time_empty>
<sleep_time_full>50</sleep_time_full>
<unique_connections>N</unique_connections>
<feedback_shown>Y</feedback_shown>
<feedback_size>50000</feedback_size>
<using_thread_priorities>Y</using_thread_priorities>
<shared_objects_file/>
<capture_step_performance>N</capture_step_performance>
<step_performance_capturing_delay>1000</step_performance_capturing_delay>
<step_performance_capturing_size_limit>100</step_performance_capturing_size_limit>
<dependencies>
</dependencies>
<partitionschemas>
</partitionschemas>
<slaveservers>
</slaveservers>
<clusterschemas>
</clusterschemas>
<created_user>-</created_user>
<created_date>2025&#x2f;05&#x2f;09 08&#x3a;34&#x3a;54.065</created_date>
<modified_user>-</modified_user>
<modified_date>2025&#x2f;05&#x2f;09 08&#x3a;34&#x3a;54.065</modified_date>
<key_for_session_key>H4sIAAAAAAAAAAMAAAAAAAAAAAA&#x3d;</key_for_session_key>
<is_key_private>N</is_key_private>
</info>
<notepads>
</notepads>
<connection>
<name>eduetl</name>
<server>localhost</server>
<type>POSTGRESQL</type>
<access>Native</access>
<database>eduetl_muster_2024_12</database>
<port>9996</port>
<username>superx</username>
<password>Encrypted 2be98afc86aa7f285a51faf7ed9c3fd89</password>
<servername/>
<data_tablespace/>
<index_tablespace/>
<attributes>
<attribute><code>FORCE_IDENTIFIERS_TO_LOWERCASE</code><attribute>N</attribute></attribute>
<attribute><code>FORCE_IDENTIFIERS_TO_UPPERCASE</code><attribute>N</attribute></attribute>
<attribute><code>IS_CLUSTERED</code><attribute>N</attribute></attribute>
<attribute><code>PORT_NUMBER</code><attribute>9996</attribute></attribute>
<attribute><code>PRESERVE_RESERVED_WORD_CASE</code><attribute>Y</attribute></attribute>
<attribute><code>QUOTE_ALL_FIELDS</code><attribute>N</attribute></attribute>
<attribute><code>SUPPORTS_BOOLEAN_DATA_TYPE</code><attribute>Y</attribute></attribute>
<attribute><code>SUPPORTS_TIMESTAMP_DATA_TYPE</code><attribute>Y</attribute></attribute>
<attribute><code>USE_POOLING</code><attribute>N</attribute></attribute>
</attributes>
</connection>
<order>
<hop>
<from>Microsoft Excel Input 2</from>
<to>Row Normaliser</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Row Normaliser</from>
<to>Table output</to>
<enabled>Y</enabled>
</hop>
</order>
<step>
<name>Microsoft Excel Input 2</name>
<type>ExcelInput</type>
<description/>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<header>Y</header>
<noempty>Y</noempty>
<stoponempty>N</stoponempty>
<filefield/>
<sheetfield/>
<sheetrownumfield/>
<rownumfield/>
<sheetfield/>
<filefield/>
<limit>0</limit>
<encoding/>
<add_to_result_filenames>Y</add_to_result_filenames>
<accept_filenames>N</accept_filenames>
<accept_field/>
<accept_stepname/>
<file>
<name>&#x24;&#x7b;PATH_TO_UPLOADFILE&#x7d;</name>
<filemask/>
<exclude_filemask/>
<file_required>N</file_required>
<include_subfolders>N</include_subfolders>
</file>
<fields>
<field>
<name>Hochschule</name>
<type>String</type>
<length>-1</length>
<precision>-1</precision>
<trim_type>none</trim_type>
<repeat>N</repeat>
<format/>
<currency/>
<decimal/>
<group/>
</field>
<field>
<name>1_hssem_kopf</name>
<type>String</type>
<length>-1</length>
<precision>-1</precision>
<trim_type>none</trim_type>
<repeat>N</repeat>
<format/>
<currency/>
<decimal/>
<group/>
</field>
<field>
<name>1_fs_ba_kopf</name>
<type>String</type>
<length>-1</length>
<precision>-1</precision>
<trim_type>none</trim_type>
<repeat>N</repeat>
<format/>
<currency/>
<decimal/>
<group/>
</field>
<field>
<name>1_fs_ma_kopf</name>
<type>String</type>
<length>-1</length>
<precision>-1</precision>
<trim_type>none</trim_type>
<repeat>N</repeat>
<format/>
<currency/>
<decimal/>
<group/>
</field>
<field>
<name>studis_kopf</name>
<type>String</type>
<length>-1</length>
<precision>-1</precision>
<trim_type>none</trim_type>
<repeat>N</repeat>
<format/>
<currency/>
<decimal/>
<group/>
</field>
<field>
<name>absolv</name>
<type>String</type>
<length>-1</length>
<precision>-1</precision>
<trim_type>none</trim_type>
<repeat>N</repeat>
<format/>
<currency/>
<decimal/>
<group/>
</field>
<field>
<name>absolv_rsz_proz</name>
<type>String</type>
<length>-1</length>
<precision>-1</precision>
<trim_type>none</trim_type>
<repeat>N</repeat>
<format/>
<currency/>
<decimal/>
<group/>
</field>
<field>
<name>absolv_ma</name>
<type>String</type>
<length>-1</length>
<precision>-1</precision>
<trim_type>none</trim_type>
<repeat>N</repeat>
<format/>
<currency/>
<decimal/>
<group/>
</field>
<field>
<name>verbleib_ba_1-5_fs_proz</name>
<type>String</type>
<length>-1</length>
<precision>-1</precision>
<trim_type>none</trim_type>
<repeat>N</repeat>
<format/>
<currency/>
<decimal/>
<group/>
</field>
<field>
<name>erfolg_ba_fs_proz</name>
<type>String</type>
<length>-1</length>
<precision>-1</precision>
<trim_type>none</trim_type>
<repeat>N</repeat>
<format/>
<currency/>
<decimal/>
<group/>
</field>
<field>
<name>erfolg_ba_1_fs_proz</name>
<type>String</type>
<length>-1</length>
<precision>-1</precision>
<trim_type>none</trim_type>
<repeat>N</repeat>
<format/>
<currency/>
<decimal/>
<group/>
</field>
<field>
<name>pers_kopf</name>
<type>String</type>
<length>-1</length>
<precision>-1</precision>
<trim_type>none</trim_type>
<repeat>N</repeat>
<format/>
<currency/>
<decimal/>
<group/>
</field>
<field>
<name>wiss_pers_kopf</name>
<type>String</type>
<length>-1</length>
<precision>-1</precision>
<trim_type>none</trim_type>
<repeat>N</repeat>
<format/>
<currency/>
<decimal/>
<group/>
</field>
<field>
<name>wiss_kunst_pers_kopf</name>
<type>String</type>
<length>-1</length>
<precision>-1</precision>
<trim_type>none</trim_type>
<repeat>N</repeat>
<format/>
<currency/>
<decimal/>
<group/>
</field>
<field>
<name>verw_pers_kopf</name>
<type>String</type>
<length>-1</length>
<precision>-1</precision>
<trim_type>none</trim_type>
<repeat>N</repeat>
<format/>
<currency/>
<decimal/>
<group/>
</field>
<field>
<name>wiss_kunst_pers</name>
<type>String</type>
<length>-1</length>
<precision>-1</precision>
<trim_type>none</trim_type>
<repeat>N</repeat>
<format/>
<currency/>
<decimal/>
<group/>
</field>
<field>
<name>wiss_kunst_pers_haupt_kopf_drittm</name>
<type>String</type>
<length>-1</length>
<precision>-1</precision>
<trim_type>none</trim_type>
<repeat>N</repeat>
<format/>
<currency/>
<decimal/>
<group/>
</field>
<field>
<name>prof_kopf</name>
<type>String</type>
<length>-1</length>
<precision>-1</precision>
<trim_type>none</trim_type>
<repeat>N</repeat>
<format/>
<currency/>
<decimal/>
<group/>
</field>
<field>
<name>angebot</name>
<type>String</type>
<length>-1</length>
<precision>-1</precision>
<trim_type>none</trim_type>
<repeat>N</repeat>
<format/>
<currency/>
<decimal/>
<group/>
</field>
<field>
<name>nachfrage</name>
<type>String</type>
<length>-1</length>
<precision>-1</precision>
<trim_type>none</trim_type>
<repeat>N</repeat>
<format/>
<currency/>
<decimal/>
<group/>
</field>
<field>
<name>auslastung</name>
<type>String</type>
<length>-1</length>
<precision>-1</precision>
<trim_type>none</trim_type>
<repeat>N</repeat>
<format/>
<currency/>
<decimal/>
<group/>
</field>
<field>
<name>einnahmen_ges</name>
<type>String</type>
<length>-1</length>
<precision>-1</precision>
<trim_type>none</trim_type>
<repeat>N</repeat>
<format/>
<currency/>
<decimal/>
<group/>
</field>
<field>
<name>einnahmen_hstraeger</name>
<type>String</type>
<length>-1</length>
<precision>-1</precision>
<trim_type>none</trim_type>
<repeat>N</repeat>
<format/>
<currency/>
<decimal/>
<group/>
</field>
<field>
<name>einnahmen_drittm_ges</name>
<type>String</type>
<length>-1</length>
<precision>-1</precision>
<trim_type>none</trim_type>
<repeat>N</repeat>
<format/>
<currency/>
<decimal/>
<group/>
</field>
</fields>
<sheets>
<sheet>
<name>Tabelle1</name>
<startrow>7</startrow>
<startcol>0</startcol>
</sheet>
</sheets>
<strict_types>N</strict_types>
<error_ignored>N</error_ignored>
<error_line_skipped>N</error_line_skipped>
<bad_line_files_destination_directory/>
<bad_line_files_extension>warning</bad_line_files_extension>
<error_line_files_destination_directory/>
<error_line_files_extension>error</error_line_files_extension>
<line_number_files_destination_directory/>
<line_number_files_extension>line</line_number_files_extension>
<shortFileFieldName/>
<pathFieldName/>
<hiddenFieldName/>
<lastModificationTimeFieldName/>
<uriNameFieldName/>
<rootUriNameFieldName/>
<extensionFieldName/>
<sizeFieldName/>
<spreadsheet_type>POI</spreadsheet_type>
<cluster_schema/>
<remotesteps>
<input>
</input>
<output>
</output>
</remotesteps>
<GUI>
<xloc>192</xloc>
<yloc>320</yloc>
<draw>Y</draw>
</GUI>
</step>
<step>
<name>Row Normaliser</name>
<type>Normaliser</type>
<description/>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<typefield>kenn_zahl</typefield>
<fields> <field> <name>1_hssem_kopf</name>
<value>MKWNRW1_1_hssem_kopf</value>
<norm>wert</norm>
</field> <field> <name>1_fs_ba_kopf</name>
<value>MKWNRW1_1_fs_ba_kopf</value>
<norm>wert</norm>
</field> <field> <name>1_fs_ma_kopf</name>
<value>MKWNRW1_1_fs_ma_kopf</value>
<norm>wert</norm>
</field> <field> <name>studis_kopf</name>
<value>MKWNRW1_studis_kopf</value>
<norm>wert</norm>
</field> <field> <name>absolv</name>
<value>MKWNRW1_absolv</value>
<norm>wert</norm>
</field> <field> <name>absolv_rsz_proz</name>
<value>MKWNRW1_absolv_rsz_proz</value>
<norm>wert</norm>
</field> <field> <name>absolv_ma</name>
<value>MKWNRW1_absolv_ma</value>
<norm>wert</norm>
</field> <field> <name>verbleib_ba_1-5_fs_proz</name>
<value>MKWNRW1_verbleib_ba_1-5_fs_proz</value>
<norm>wert</norm>
</field> <field> <name>erfolg_ba_fs_proz</name>
<value>MKWNRW1_erfolg_ba_fs_proz</value>
<norm>wert</norm>
</field> <field> <name>erfolg_ba_1_fs_proz</name>
<value>MKWNRW1_erfolg_ba_1_fs_proz</value>
<norm>wert</norm>
</field> <field> <name>pers_kopf</name>
<value>MKWNRW1_pers_kopf</value>
<norm>wert</norm>
</field> <field> <name>wiss_pers_kopf</name>
<value>MKWNRW1_wiss_pers_kopf</value>
<norm>wert</norm>
</field> <field> <name>wiss_kunst_pers_kopf</name>
<value>MKWNRW1_wiss_kunst_pers_kopf</value>
<norm>wert</norm>
</field> <field> <name>verw_pers_kopf</name>
<value>MKWNRW1_verw_pers_kopf</value>
<norm>wert</norm>
</field> <field> <name>wiss_kunst_pers</name>
<value>MKWNRW1_wiss_kunst_pers</value>
<norm>wert</norm>
</field> <field> <name>wiss_kunst_pers_haupt_kopf_drittm</name>
<value>MKWNRW1_wiss_kunst_pers_haupt_kopf_drittm</value>
<norm>wert</norm>
</field> <field> <name>prof_kopf</name>
<value>MKWNRW1_prof_kopf</value>
<norm>wert</norm>
</field> <field> <name>angebot</name>
<value>MKWNRW1_angebot</value>
<norm>wert</norm>
</field> <field> <name>nachfrage</name>
<value>MKWNRW1_nachfrage</value>
<norm>wert</norm>
</field> <field> <name>auslastung</name>
<value>MKWNRW1_auslastung</value>
<norm>wert</norm>
</field> <field> <name>einnahmen_ges</name>
<value>MKWNRW1_einnahmen_ges</value>
<norm>wert</norm>
</field> <field> <name>einnahmen_hstraeger</name>
<value>MKWNRW1_einnahmen_hstraeger</value>
<norm>wert</norm>
</field> <field> <name>einnahmen_drittm_ges</name>
<value>MKWNRW1_einnahmen_drittm_ges</value>
<norm>wert</norm>
</field> </fields> <cluster_schema/>
<remotesteps>
<input>
</input>
<output>
</output>
</remotesteps>
<GUI>
<xloc>400</xloc>
<yloc>320</yloc>
<draw>Y</draw>
</GUI>
</step>
<step>
<name>Table output</name>
<type>TableOutput</type>
<description/>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<connection>eduetl</connection>
<schema/>
<table>tmp_sxc_zahl_wert</table>
<commit>1000</commit>
<truncate>N</truncate>
<ignore_errors>N</ignore_errors>
<use_batch>Y</use_batch>
<specify_fields>Y</specify_fields>
<partitioning_enabled>N</partitioning_enabled>
<partitioning_field/>
<partitioning_daily>N</partitioning_daily>
<partitioning_monthly>Y</partitioning_monthly>
<tablename_in_field>N</tablename_in_field>
<tablename_field/>
<tablename_in_table>Y</tablename_in_table>
<return_keys>N</return_keys>
<return_field/>
<fields>
<field>
<column_name>kenn_zahl</column_name>
<stream_name>kenn_zahl</stream_name>
</field>
<field>
<column_name>wert_str</column_name>
<stream_name>wert</stream_name>
</field>
<field>
<column_name>hs_nr_str</column_name>
<stream_name>Hochschule</stream_name>
</field>
</fields>
<cluster_schema/>
<remotesteps>
<input>
</input>
<output>
</output>
</remotesteps>
<GUI>
<xloc>608</xloc>
<yloc>320</yloc>
<draw>Y</draw>
</GUI>
</step>
<step_error_handling>
</step_error_handling>
<slave-step-copy-partition-distribution>
</slave-step-copy-partition-distribution>
<slave_transformation>N</slave_transformation>
</transformation>

690
src-modules/module/sxc/etl/import_bestand/2025_5_22_mwk_nrw_hochschulkennzahlen_alt/import_bestand_mwk_nrw_hskennz_2.ktr

@ -0,0 +1,690 @@ @@ -0,0 +1,690 @@
<?xml version="1.0" encoding="UTF-8"?>
<transformation>
<info>
<name>import_bestand_mwk_nrw_hskennz_2</name>
<description/>
<extended_description/>
<trans_version/>
<trans_type>Normal</trans_type>
<trans_status>0</trans_status>
<directory>&#x2f;</directory>
<parameters>
<parameter>
<name>PATH_TO_UPLOADFILE</name>
<default_value>file&#x3a;&#x2f;&#x2f;&#x2f;home&#x2f;superx&#x2f;git&#x2f;Memtext-Interna&#x2f;Projekte&#x2f;duisburg-essen_uni&#x2f;muster&#x2f;2025_stammdaten_nrw&#x2f;Stammdaten_MKW_orig_2023.xlsx</default_value>
<description/>
</parameter>
</parameters>
<log>
<trans-log-table>
<connection/>
<schema/>
<table/>
<size_limit_lines/>
<interval/>
<timeout_days/>
<field>
<id>ID_BATCH</id>
<enabled>Y</enabled>
<name>ID_BATCH</name>
</field>
<field>
<id>CHANNEL_ID</id>
<enabled>Y</enabled>
<name>CHANNEL_ID</name>
</field>
<field>
<id>TRANSNAME</id>
<enabled>Y</enabled>
<name>TRANSNAME</name>
</field>
<field>
<id>STATUS</id>
<enabled>Y</enabled>
<name>STATUS</name>
</field>
<field>
<id>LINES_READ</id>
<enabled>Y</enabled>
<name>LINES_READ</name>
<subject/>
</field>
<field>
<id>LINES_WRITTEN</id>
<enabled>Y</enabled>
<name>LINES_WRITTEN</name>
<subject/>
</field>
<field>
<id>LINES_UPDATED</id>
<enabled>Y</enabled>
<name>LINES_UPDATED</name>
<subject/>
</field>
<field>
<id>LINES_INPUT</id>
<enabled>Y</enabled>
<name>LINES_INPUT</name>
<subject/>
</field>
<field>
<id>LINES_OUTPUT</id>
<enabled>Y</enabled>
<name>LINES_OUTPUT</name>
<subject/>
</field>
<field>
<id>LINES_REJECTED</id>
<enabled>Y</enabled>
<name>LINES_REJECTED</name>
<subject/>
</field>
<field>
<id>ERRORS</id>
<enabled>Y</enabled>
<name>ERRORS</name>
</field>
<field>
<id>STARTDATE</id>
<enabled>Y</enabled>
<name>STARTDATE</name>
</field>
<field>
<id>ENDDATE</id>
<enabled>Y</enabled>
<name>ENDDATE</name>
</field>
<field>
<id>LOGDATE</id>
<enabled>Y</enabled>
<name>LOGDATE</name>
</field>
<field>
<id>DEPDATE</id>
<enabled>Y</enabled>
<name>DEPDATE</name>
</field>
<field>
<id>REPLAYDATE</id>
<enabled>Y</enabled>
<name>REPLAYDATE</name>
</field>
<field>
<id>LOG_FIELD</id>
<enabled>Y</enabled>
<name>LOG_FIELD</name>
</field>
<field>
<id>EXECUTING_SERVER</id>
<enabled>N</enabled>
<name>EXECUTING_SERVER</name>
</field>
<field>
<id>EXECUTING_USER</id>
<enabled>N</enabled>
<name>EXECUTING_USER</name>
</field>
<field>
<id>CLIENT</id>
<enabled>N</enabled>
<name>CLIENT</name>
</field>
</trans-log-table>
<perf-log-table>
<connection/>
<schema/>
<table/>
<interval/>
<timeout_days/>
<field>
<id>ID_BATCH</id>
<enabled>Y</enabled>
<name>ID_BATCH</name>
</field>
<field>
<id>SEQ_NR</id>
<enabled>Y</enabled>
<name>SEQ_NR</name>
</field>
<field>
<id>LOGDATE</id>
<enabled>Y</enabled>
<name>LOGDATE</name>
</field>
<field>
<id>TRANSNAME</id>
<enabled>Y</enabled>
<name>TRANSNAME</name>
</field>
<field>
<id>STEPNAME</id>
<enabled>Y</enabled>
<name>STEPNAME</name>
</field>
<field>
<id>STEP_COPY</id>
<enabled>Y</enabled>
<name>STEP_COPY</name>
</field>
<field>
<id>LINES_READ</id>
<enabled>Y</enabled>
<name>LINES_READ</name>
</field>
<field>
<id>LINES_WRITTEN</id>
<enabled>Y</enabled>
<name>LINES_WRITTEN</name>
</field>
<field>
<id>LINES_UPDATED</id>
<enabled>Y</enabled>
<name>LINES_UPDATED</name>
</field>
<field>
<id>LINES_INPUT</id>
<enabled>Y</enabled>
<name>LINES_INPUT</name>
</field>
<field>
<id>LINES_OUTPUT</id>
<enabled>Y</enabled>
<name>LINES_OUTPUT</name>
</field>
<field>
<id>LINES_REJECTED</id>
<enabled>Y</enabled>
<name>LINES_REJECTED</name>
</field>
<field>
<id>ERRORS</id>
<enabled>Y</enabled>
<name>ERRORS</name>
</field>
<field>
<id>INPUT_BUFFER_ROWS</id>
<enabled>Y</enabled>
<name>INPUT_BUFFER_ROWS</name>
</field>
<field>
<id>OUTPUT_BUFFER_ROWS</id>
<enabled>Y</enabled>
<name>OUTPUT_BUFFER_ROWS</name>
</field>
</perf-log-table>
<channel-log-table>
<connection/>
<schema/>
<table/>
<timeout_days/>
<field>
<id>ID_BATCH</id>
<enabled>Y</enabled>
<name>ID_BATCH</name>
</field>
<field>
<id>CHANNEL_ID</id>
<enabled>Y</enabled>
<name>CHANNEL_ID</name>
</field>
<field>
<id>LOG_DATE</id>
<enabled>Y</enabled>
<name>LOG_DATE</name>
</field>
<field>
<id>LOGGING_OBJECT_TYPE</id>
<enabled>Y</enabled>
<name>LOGGING_OBJECT_TYPE</name>
</field>
<field>
<id>OBJECT_NAME</id>
<enabled>Y</enabled>
<name>OBJECT_NAME</name>
</field>
<field>
<id>OBJECT_COPY</id>
<enabled>Y</enabled>
<name>OBJECT_COPY</name>
</field>
<field>
<id>REPOSITORY_DIRECTORY</id>
<enabled>Y</enabled>
<name>REPOSITORY_DIRECTORY</name>
</field>
<field>
<id>FILENAME</id>
<enabled>Y</enabled>
<name>FILENAME</name>
</field>
<field>
<id>OBJECT_ID</id>
<enabled>Y</enabled>
<name>OBJECT_ID</name>
</field>
<field>
<id>OBJECT_REVISION</id>
<enabled>Y</enabled>
<name>OBJECT_REVISION</name>
</field>
<field>
<id>PARENT_CHANNEL_ID</id>
<enabled>Y</enabled>
<name>PARENT_CHANNEL_ID</name>
</field>
<field>
<id>ROOT_CHANNEL_ID</id>
<enabled>Y</enabled>
<name>ROOT_CHANNEL_ID</name>
</field>
</channel-log-table>
<step-log-table>
<connection/>
<schema/>
<table/>
<timeout_days/>
<field>
<id>ID_BATCH</id>
<enabled>Y</enabled>
<name>ID_BATCH</name>
</field>
<field>
<id>CHANNEL_ID</id>
<enabled>Y</enabled>
<name>CHANNEL_ID</name>
</field>
<field>
<id>LOG_DATE</id>
<enabled>Y</enabled>
<name>LOG_DATE</name>
</field>
<field>
<id>TRANSNAME</id>
<enabled>Y</enabled>
<name>TRANSNAME</name>
</field>
<field>
<id>STEPNAME</id>
<enabled>Y</enabled>
<name>STEPNAME</name>
</field>
<field>
<id>STEP_COPY</id>
<enabled>Y</enabled>
<name>STEP_COPY</name>
</field>
<field>
<id>LINES_READ</id>
<enabled>Y</enabled>
<name>LINES_READ</name>
</field>
<field>
<id>LINES_WRITTEN</id>
<enabled>Y</enabled>
<name>LINES_WRITTEN</name>
</field>
<field>
<id>LINES_UPDATED</id>
<enabled>Y</enabled>
<name>LINES_UPDATED</name>
</field>
<field>
<id>LINES_INPUT</id>
<enabled>Y</enabled>
<name>LINES_INPUT</name>
</field>
<field>
<id>LINES_OUTPUT</id>
<enabled>Y</enabled>
<name>LINES_OUTPUT</name>
</field>
<field>
<id>LINES_REJECTED</id>
<enabled>Y</enabled>
<name>LINES_REJECTED</name>
</field>
<field>
<id>ERRORS</id>
<enabled>Y</enabled>
<name>ERRORS</name>
</field>
<field>
<id>LOG_FIELD</id>
<enabled>N</enabled>
<name>LOG_FIELD</name>
</field>
</step-log-table>
<metrics-log-table>
<connection/>
<schema/>
<table/>
<timeout_days/>
<field>
<id>ID_BATCH</id>
<enabled>Y</enabled>
<name>ID_BATCH</name>
</field>
<field>
<id>CHANNEL_ID</id>
<enabled>Y</enabled>
<name>CHANNEL_ID</name>
</field>
<field>
<id>LOG_DATE</id>
<enabled>Y</enabled>
<name>LOG_DATE</name>
</field>
<field>
<id>METRICS_DATE</id>
<enabled>Y</enabled>
<name>METRICS_DATE</name>
</field>
<field>
<id>METRICS_CODE</id>
<enabled>Y</enabled>
<name>METRICS_CODE</name>
</field>
<field>
<id>METRICS_DESCRIPTION</id>
<enabled>Y</enabled>
<name>METRICS_DESCRIPTION</name>
</field>
<field>
<id>METRICS_SUBJECT</id>
<enabled>Y</enabled>
<name>METRICS_SUBJECT</name>
</field>
<field>
<id>METRICS_TYPE</id>
<enabled>Y</enabled>
<name>METRICS_TYPE</name>
</field>
<field>
<id>METRICS_VALUE</id>
<enabled>Y</enabled>
<name>METRICS_VALUE</name>
</field>
</metrics-log-table>
</log>
<maxdate>
<connection/>
<table/>
<field/>
<offset>0.0</offset>
<maxdiff>0.0</maxdiff>
</maxdate>
<size_rowset>10000</size_rowset>
<sleep_time_empty>50</sleep_time_empty>
<sleep_time_full>50</sleep_time_full>
<unique_connections>N</unique_connections>
<feedback_shown>Y</feedback_shown>
<feedback_size>50000</feedback_size>
<using_thread_priorities>Y</using_thread_priorities>
<shared_objects_file/>
<capture_step_performance>N</capture_step_performance>
<step_performance_capturing_delay>1000</step_performance_capturing_delay>
<step_performance_capturing_size_limit>100</step_performance_capturing_size_limit>
<dependencies>
</dependencies>
<partitionschemas>
</partitionschemas>
<slaveservers>
</slaveservers>
<clusterschemas>
</clusterschemas>
<created_user>-</created_user>
<created_date>2025&#x2f;05&#x2f;09 08&#x3a;34&#x3a;54.065</created_date>
<modified_user>-</modified_user>
<modified_date>2025&#x2f;05&#x2f;09 08&#x3a;34&#x3a;54.065</modified_date>
<key_for_session_key>H4sIAAAAAAAAAAMAAAAAAAAAAAA&#x3d;</key_for_session_key>
<is_key_private>N</is_key_private>
</info>
<notepads>
</notepads>
<connection>
<name>eduetl</name>
<server>localhost</server>
<type>POSTGRESQL</type>
<access>Native</access>
<database>eduetl_muster_2024_06</database>
<port>5432</port>
<username>superx</username>
<password>Encrypted 2be98afc86aa7f285a51faf7ed9c3fd89</password>
<servername/>
<data_tablespace/>
<index_tablespace/>
<attributes>
<attribute><code>FORCE_IDENTIFIERS_TO_LOWERCASE</code><attribute>N</attribute></attribute>
<attribute><code>FORCE_IDENTIFIERS_TO_UPPERCASE</code><attribute>N</attribute></attribute>
<attribute><code>IS_CLUSTERED</code><attribute>N</attribute></attribute>
<attribute><code>PORT_NUMBER</code><attribute>5432</attribute></attribute>
<attribute><code>PRESERVE_RESERVED_WORD_CASE</code><attribute>Y</attribute></attribute>
<attribute><code>QUOTE_ALL_FIELDS</code><attribute>N</attribute></attribute>
<attribute><code>SUPPORTS_BOOLEAN_DATA_TYPE</code><attribute>Y</attribute></attribute>
<attribute><code>SUPPORTS_TIMESTAMP_DATA_TYPE</code><attribute>Y</attribute></attribute>
<attribute><code>USE_POOLING</code><attribute>N</attribute></attribute>
</attributes>
</connection>
<order>
<hop>
<from>Microsoft Excel Input 2</from>
<to>Join Rows &#x28;cartesian product&#x29;</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Table input</from>
<to>Join Rows &#x28;cartesian product&#x29;</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Join Rows &#x28;cartesian product&#x29;</from>
<to>Update</to>
<enabled>Y</enabled>
</hop>
</order>
<step>
<name>Microsoft Excel Input 2</name>
<type>ExcelInput</type>
<description/>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<header>N</header>
<noempty>Y</noempty>
<stoponempty>N</stoponempty>
<filefield/>
<sheetfield/>
<sheetrownumfield/>
<rownumfield/>
<sheetfield/>
<filefield/>
<limit>1</limit>
<encoding/>
<add_to_result_filenames>Y</add_to_result_filenames>
<accept_filenames>N</accept_filenames>
<accept_field/>
<accept_stepname/>
<file>
<name>&#x24;&#x7b;PATH_TO_UPLOADFILE&#x7d;</name>
<filemask/>
<exclude_filemask/>
<file_required>N</file_required>
<include_subfolders>N</include_subfolders>
</file>
<fields>
<field>
<name>Jahr</name>
<type>Integer</type>
<length>-1</length>
<precision>-1</precision>
<trim_type>none</trim_type>
<repeat>N</repeat>
<format/>
<currency/>
<decimal/>
<group/>
</field>
</fields>
<sheets>
<sheet>
<name>Tabelle1</name>
<startrow>3</startrow>
<startcol>1</startcol>
</sheet>
</sheets>
<strict_types>N</strict_types>
<error_ignored>N</error_ignored>
<error_line_skipped>N</error_line_skipped>
<bad_line_files_destination_directory/>
<bad_line_files_extension>warning</bad_line_files_extension>
<error_line_files_destination_directory/>
<error_line_files_extension>error</error_line_files_extension>
<line_number_files_destination_directory/>
<line_number_files_extension>line</line_number_files_extension>
<shortFileFieldName/>
<pathFieldName/>
<hiddenFieldName/>
<lastModificationTimeFieldName/>
<uriNameFieldName/>
<rootUriNameFieldName/>
<extensionFieldName/>
<sizeFieldName/>
<spreadsheet_type>POI</spreadsheet_type>
<cluster_schema/>
<remotesteps>
<input>
</input>
<output>
</output>
</remotesteps>
<GUI>
<xloc>192</xloc>
<yloc>320</yloc>
<draw>Y</draw>
</GUI>
</step>
<step>
<name>Join Rows &#x28;cartesian product&#x29;</name>
<type>JoinRows</type>
<description/>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<directory>&#x25;&#x25;java.io.tmpdir&#x25;&#x25;</directory>
<prefix>out</prefix>
<cache_size>500</cache_size>
<main/>
<compare>
<condition>
<negated>N</negated>
<leftvalue/>
<function>&#x3d;</function>
<rightvalue/>
</condition>
</compare>
<cluster_schema/>
<remotesteps>
<input>
</input>
<output>
</output>
</remotesteps>
<GUI>
<xloc>496</xloc>
<yloc>256</yloc>
<draw>Y</draw>
</GUI>
</step>
<step>
<name>Table input</name>
<type>TableInput</type>
<description/>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<connection>eduetl</connection>
<sql>SELECT &#x2a; FROM tmp_sxc_zahl_wert</sql>
<limit>0</limit>
<lookup/>
<execute_each_row>N</execute_each_row>
<variables_active>N</variables_active>
<lazy_conversion_active>N</lazy_conversion_active>
<cluster_schema/>
<remotesteps>
<input>
</input>
<output>
</output>
</remotesteps>
<GUI>
<xloc>192</xloc>
<yloc>208</yloc>
<draw>Y</draw>
</GUI>
</step>
<step>
<name>Update</name>
<type>Update</type>
<description/>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<connection>eduetl</connection>
<skip_lookup>N</skip_lookup>
<commit>100</commit>
<use_batch>N</use_batch>
<error_ignored>N</error_ignored>
<ignore_flag_field/>
<lookup>
<schema/>
<table>tmp_sxc_zahl_wert</table>
<key>
<name>tid</name>
<field>tid</field>
<condition>&#x3d;</condition>
<name2/>
</key>
<value>
<name>jahr</name>
<rename>Jahr</rename>
</value>
</lookup>
<cluster_schema/>
<remotesteps>
<input>
</input>
<output>
</output>
</remotesteps>
<GUI>
<xloc>656</xloc>
<yloc>256</yloc>
<draw>Y</draw>
</GUI>
</step>
<step_error_handling>
</step_error_handling>
<slave-step-copy-partition-distribution>
</slave-step-copy-partition-distribution>
<slave_transformation>N</slave_transformation>
</transformation>

491
src-modules/module/sxc/etl/import_bestand/mwk_nrw_hochschulkennzahlen/import_bestand_mwk_nrw_hskennz.kjb

@ -0,0 +1,491 @@ @@ -0,0 +1,491 @@
<?xml version="1.0" encoding="UTF-8"?>
<job>
<name>import_bestand_mwk_nrw_hskennz</name>
<description/>
<extended_description/>
<job_version/>
<job_status>0</job_status>
<directory>&#x2f;</directory>
<created_user>-</created_user>
<created_date>2025&#x2f;05&#x2f;09 08&#x3a;04&#x3a;01.642</created_date>
<modified_user>-</modified_user>
<modified_date>2025&#x2f;05&#x2f;09 08&#x3a;04&#x3a;01.642</modified_date>
<parameters>
<parameter>
<name>PATH_TO_UPLOADFILE</name>
<default_value/>
<description/>
</parameter>
</parameters>
<connection>
<name>eduetl</name>
<server>localhost</server>
<type>POSTGRESQL</type>
<access>Native</access>
<database>eduetl_muster_2024_12</database>
<port>9996</port>
<username>superx</username>
<password>Encrypted 2be98afc86aa7f285a51faf7ed9c3fd89</password>
<servername/>
<data_tablespace/>
<index_tablespace/>
<attributes>
<attribute><code>FORCE_IDENTIFIERS_TO_LOWERCASE</code><attribute>N</attribute></attribute>
<attribute><code>FORCE_IDENTIFIERS_TO_UPPERCASE</code><attribute>N</attribute></attribute>
<attribute><code>IS_CLUSTERED</code><attribute>N</attribute></attribute>
<attribute><code>PORT_NUMBER</code><attribute>9996</attribute></attribute>
<attribute><code>PRESERVE_RESERVED_WORD_CASE</code><attribute>Y</attribute></attribute>
<attribute><code>QUOTE_ALL_FIELDS</code><attribute>N</attribute></attribute>
<attribute><code>SUPPORTS_BOOLEAN_DATA_TYPE</code><attribute>Y</attribute></attribute>
<attribute><code>SUPPORTS_TIMESTAMP_DATA_TYPE</code><attribute>Y</attribute></attribute>
<attribute><code>USE_POOLING</code><attribute>N</attribute></attribute>
</attributes>
</connection>
<slaveservers>
</slaveservers>
<job-log-table>
<connection/>
<schema/>
<table/>
<size_limit_lines/>
<interval/>
<timeout_days/>
<field>
<id>ID_JOB</id>
<enabled>Y</enabled>
<name>ID_JOB</name>
</field>
<field>
<id>CHANNEL_ID</id>
<enabled>Y</enabled>
<name>CHANNEL_ID</name>
</field>
<field>
<id>JOBNAME</id>
<enabled>Y</enabled>
<name>JOBNAME</name>
</field>
<field>
<id>STATUS</id>
<enabled>Y</enabled>
<name>STATUS</name>
</field>
<field>
<id>LINES_READ</id>
<enabled>Y</enabled>
<name>LINES_READ</name>
</field>
<field>
<id>LINES_WRITTEN</id>
<enabled>Y</enabled>
<name>LINES_WRITTEN</name>
</field>
<field>
<id>LINES_UPDATED</id>
<enabled>Y</enabled>
<name>LINES_UPDATED</name>
</field>
<field>
<id>LINES_INPUT</id>
<enabled>Y</enabled>
<name>LINES_INPUT</name>
</field>
<field>
<id>LINES_OUTPUT</id>
<enabled>Y</enabled>
<name>LINES_OUTPUT</name>
</field>
<field>
<id>LINES_REJECTED</id>
<enabled>Y</enabled>
<name>LINES_REJECTED</name>
</field>
<field>
<id>ERRORS</id>
<enabled>Y</enabled>
<name>ERRORS</name>
</field>
<field>
<id>STARTDATE</id>
<enabled>Y</enabled>
<name>STARTDATE</name>
</field>
<field>
<id>ENDDATE</id>
<enabled>Y</enabled>
<name>ENDDATE</name>
</field>
<field>
<id>LOGDATE</id>
<enabled>Y</enabled>
<name>LOGDATE</name>
</field>
<field>
<id>DEPDATE</id>
<enabled>Y</enabled>
<name>DEPDATE</name>
</field>
<field>
<id>REPLAYDATE</id>
<enabled>Y</enabled>
<name>REPLAYDATE</name>
</field>
<field>
<id>LOG_FIELD</id>
<enabled>Y</enabled>
<name>LOG_FIELD</name>
</field>
<field>
<id>EXECUTING_SERVER</id>
<enabled>N</enabled>
<name>EXECUTING_SERVER</name>
</field>
<field>
<id>EXECUTING_USER</id>
<enabled>N</enabled>
<name>EXECUTING_USER</name>
</field>
<field>
<id>START_JOB_ENTRY</id>
<enabled>N</enabled>
<name>START_JOB_ENTRY</name>
</field>
<field>
<id>CLIENT</id>
<enabled>N</enabled>
<name>CLIENT</name>
</field>
</job-log-table>
<jobentry-log-table>
<connection/>
<schema/>
<table/>
<timeout_days/>
<field>
<id>ID_BATCH</id>
<enabled>Y</enabled>
<name>ID_BATCH</name>
</field>
<field>
<id>CHANNEL_ID</id>
<enabled>Y</enabled>
<name>CHANNEL_ID</name>
</field>
<field>
<id>LOG_DATE</id>
<enabled>Y</enabled>
<name>LOG_DATE</name>
</field>
<field>
<id>JOBNAME</id>
<enabled>Y</enabled>
<name>TRANSNAME</name>
</field>
<field>
<id>JOBENTRYNAME</id>
<enabled>Y</enabled>
<name>STEPNAME</name>
</field>
<field>
<id>LINES_READ</id>
<enabled>Y</enabled>
<name>LINES_READ</name>
</field>
<field>
<id>LINES_WRITTEN</id>
<enabled>Y</enabled>
<name>LINES_WRITTEN</name>
</field>
<field>
<id>LINES_UPDATED</id>
<enabled>Y</enabled>
<name>LINES_UPDATED</name>
</field>
<field>
<id>LINES_INPUT</id>
<enabled>Y</enabled>
<name>LINES_INPUT</name>
</field>
<field>
<id>LINES_OUTPUT</id>
<enabled>Y</enabled>
<name>LINES_OUTPUT</name>
</field>
<field>
<id>LINES_REJECTED</id>
<enabled>Y</enabled>
<name>LINES_REJECTED</name>
</field>
<field>
<id>ERRORS</id>
<enabled>Y</enabled>
<name>ERRORS</name>
</field>
<field>
<id>RESULT</id>
<enabled>Y</enabled>
<name>RESULT</name>
</field>
<field>
<id>NR_RESULT_ROWS</id>
<enabled>Y</enabled>
<name>NR_RESULT_ROWS</name>
</field>
<field>
<id>NR_RESULT_FILES</id>
<enabled>Y</enabled>
<name>NR_RESULT_FILES</name>
</field>
<field>
<id>LOG_FIELD</id>
<enabled>N</enabled>
<name>LOG_FIELD</name>
</field>
<field>
<id>COPY_NR</id>
<enabled>N</enabled>
<name>COPY_NR</name>
</field>
</jobentry-log-table>
<channel-log-table>
<connection/>
<schema/>
<table/>
<timeout_days/>
<field>
<id>ID_BATCH</id>
<enabled>Y</enabled>
<name>ID_BATCH</name>
</field>
<field>
<id>CHANNEL_ID</id>
<enabled>Y</enabled>
<name>CHANNEL_ID</name>
</field>
<field>
<id>LOG_DATE</id>
<enabled>Y</enabled>
<name>LOG_DATE</name>
</field>
<field>
<id>LOGGING_OBJECT_TYPE</id>
<enabled>Y</enabled>
<name>LOGGING_OBJECT_TYPE</name>
</field>
<field>
<id>OBJECT_NAME</id>
<enabled>Y</enabled>
<name>OBJECT_NAME</name>
</field>
<field>
<id>OBJECT_COPY</id>
<enabled>Y</enabled>
<name>OBJECT_COPY</name>
</field>
<field>
<id>REPOSITORY_DIRECTORY</id>
<enabled>Y</enabled>
<name>REPOSITORY_DIRECTORY</name>
</field>
<field>
<id>FILENAME</id>
<enabled>Y</enabled>
<name>FILENAME</name>
</field>
<field>
<id>OBJECT_ID</id>
<enabled>Y</enabled>
<name>OBJECT_ID</name>
</field>
<field>
<id>OBJECT_REVISION</id>
<enabled>Y</enabled>
<name>OBJECT_REVISION</name>
</field>
<field>
<id>PARENT_CHANNEL_ID</id>
<enabled>Y</enabled>
<name>PARENT_CHANNEL_ID</name>
</field>
<field>
<id>ROOT_CHANNEL_ID</id>
<enabled>Y</enabled>
<name>ROOT_CHANNEL_ID</name>
</field>
</channel-log-table>
<pass_batchid>N</pass_batchid>
<shared_objects_file/>
<entries>
<entry>
<name>START</name>
<description/>
<type>SPECIAL</type>
<start>Y</start>
<dummy>N</dummy>
<repeat>N</repeat>
<schedulerType>0</schedulerType>
<intervalSeconds>0</intervalSeconds>
<intervalMinutes>60</intervalMinutes>
<hour>12</hour>
<minutes>0</minutes>
<weekDay>1</weekDay>
<DayOfMonth>1</DayOfMonth>
<parallel>N</parallel>
<draw>Y</draw>
<nr>0</nr>
<xloc>96</xloc>
<yloc>192</yloc>
</entry>
<entry>
<name>Success</name>
<description/>
<type>SUCCESS</type>
<parallel>N</parallel>
<draw>Y</draw>
<nr>0</nr>
<xloc>1056</xloc>
<yloc>192</yloc>
</entry>
<entry>
<name>excel_into_tmp</name>
<description/>
<type>TRANS</type>
<specification_method>filename</specification_method>
<trans_object_id/>
<filename>&#x24;&#x7b;Internal.Job.Filename.Directory&#x7d;&#x2f;import_bestand_mwk_nrw_hskennz_1.ktr</filename>
<transname/>
<arg_from_previous>N</arg_from_previous>
<params_from_previous>N</params_from_previous>
<exec_per_row>N</exec_per_row>
<clear_rows>N</clear_rows>
<clear_files>N</clear_files>
<set_logfile>N</set_logfile>
<logfile/>
<logext/>
<add_date>N</add_date>
<add_time>N</add_time>
<loglevel>Basic</loglevel>
<cluster>N</cluster>
<slave_server_name/>
<set_append_logfile>N</set_append_logfile>
<wait_until_finished>Y</wait_until_finished>
<follow_abort_remote>N</follow_abort_remote>
<create_parent_folder>N</create_parent_folder>
<logging_remote_work>N</logging_remote_work>
<parameters>
<pass_all_parameters>Y</pass_all_parameters>
</parameters>
<parallel>N</parallel>
<draw>Y</draw>
<nr>0</nr>
<xloc>272</xloc>
<yloc>320</yloc>
</entry>
<entry>
<name>create tmp_sxc_zahl_wert</name>
<description/>
<type>SQL</type>
<sql>drop table if exists tmp_sxc_zahl_wert&#x3b;&#xa;&#xa;CREATE TABLE tmp_sxc_zahl_wert&#xa;&#x28;&#xa; tid serial,&#xa; hs_nr_str varchar&#x28;255&#x29;,&#xa; hs_nr integer,&#xa; kenn_zahl char&#x28;100&#x29; NOT NULL,&#xa; jahr smallint,&#xa; sem smallint,&#xa; ch110_institut char&#x28;10&#x29;,&#xa; bland integer,&#xa; sxc_bestand_id integer,&#xa; wert_str varchar&#x28;255&#x29;,&#xa; wert decimal&#x28;20,10&#x29;,&#xa; generic_dim1 char&#x28;100&#x29;,&#xa; generic_dim2 char&#x28;100&#x29;&#xa;&#x29;&#x3b;</sql>
<useVariableSubstitution>F</useVariableSubstitution>
<sqlfromfile>F</sqlfromfile>
<sqlfilename/>
<sendOneStatement>F</sendOneStatement>
<connection>eduetl</connection>
<parallel>N</parallel>
<draw>Y</draw>
<nr>0</nr>
<xloc>272</xloc>
<yloc>192</yloc>
</entry>
<entry>
<name>update tmp_sxc_zahl_wert</name>
<description/>
<type>SQL</type>
<sql>update tmp_sxc_zahl_wert set&#xa; hs_nr&#x3d;M.target_value&#xa;from &#xa; sxc_mapping_bestand M&#xa;where&#xa; M.sxc_bestand_id&#x3d;1&#xa; and M.object_type&#x3d;&#x27;Hochschule&#x27;&#xa; and M.object_value&#x3d;tmp_sxc_zahl_wert.hs_nr_str&#xa;&#x3b;&#xa;&#xa;&#xa;update tmp_sxc_zahl_wert&#xa;set wert &#x3d; &#xa; case &#xa; when wert_str &#x21;&#x3d; &#x27;--&#x27; &#xa; and wert_str is not null &#xa; and wert_str &#x3c;&#x3e; &#x27;&#x27; &#xa; then cast&#x28;replace&#x28;wert_str, &#x27;,&#x27; , &#x27;.&#x27;&#x29; as decimal&#x28;20,10&#x29;&#x29; &#x2a; 100&#xa; else null&#xa; end&#xa;where kenn_zahl like &#x27;&#x25;_proz&#x25;&#x27;&#xa;&#x3b;&#xa;&#xa;update tmp_sxc_zahl_wert&#xa;set wert &#x3d; &#xa; case &#xa; when wert_str &#x21;&#x3d; &#x27;--&#x27; &#xa; and wert_str is not null &#xa; and wert_str &#x3c;&#x3e; &#x27;&#x27; &#xa; then cast&#x28;replace&#x28;wert_str, &#x27;,&#x27; , &#x27;.&#x27;&#x29; as decimal&#x28;20,10&#x29;&#x29; &#xa; else null&#xa; end&#xa;where wert is null&#xa;&#x3b;&#xa;&#xa;update tmp_sxc_zahl_wert set sxc_bestand_id&#x3d;1&#x3b; -- MKW NRW Hochschulkennzahlen&#xa;update tmp_sxc_zahl_wert set bland&#x3d;5&#x3b; -- NRW&#xa;&#xa;&#xa;</sql>
<useVariableSubstitution>F</useVariableSubstitution>
<sqlfromfile>F</sqlfromfile>
<sqlfilename>&#x24;&#x7b;Internal.Job.Filename.Directory&#x7d;&#x2f;update_tmp_sxc_zahl_wert.sql</sqlfilename>
<sendOneStatement>F</sendOneStatement>
<connection>eduetl</connection>
<parallel>N</parallel>
<draw>Y</draw>
<nr>0</nr>
<xloc>688</xloc>
<yloc>192</yloc>
</entry>
<entry>
<name>insert into sxc_zahl_wert</name>
<description/>
<type>SQL</type>
<sql>delete from sxc_zahl_wert&#xa;where &#xa; sxc_bestand_id&#x3d;1&#xa; and jahr in &#x28;select jahr from tmp_sxc_zahl_wert&#x29;&#xa; and hs_nr in &#x28;select hs_nr from tmp_sxc_zahl_wert&#x29;&#xa;&#x3b;&#xa;&#xa;INSERT INTO sxc_zahl_wert&#xa;&#x28;&#xa; hs_nr,&#xa; kenn_zahl,&#xa; jahr,&#xa; sem,&#xa; bland,&#xa; ch110_institut,&#xa; sxc_bestand_id,&#xa; wert,&#xa; generic_dim1,&#xa; generic_dim2&#xa;&#x29;&#xa;select&#xa; hs_nr,&#xa; kenn_zahl,&#xa; jahr,&#xa; sem,&#xa; bland,&#xa; ch110_institut,&#xa; sxc_bestand_id,&#xa; wert,&#xa; generic_dim1,&#xa; generic_dim2&#xa;from tmp_sxc_zahl_wert&#xa;where&#xa; hs_nr is not null&#xa;order by&#xa; sxc_bestand_id,1,2,3,4&#xa;&#x3b;&#xa;&#xa;&#xa;&#xa;&#xa;drop table if exists tmp_sxc_zahl_wert&#x3b;</sql>
<useVariableSubstitution>F</useVariableSubstitution>
<sqlfromfile>F</sqlfromfile>
<sqlfilename/>
<sendOneStatement>F</sendOneStatement>
<connection>eduetl</connection>
<parallel>N</parallel>
<draw>Y</draw>
<nr>0</nr>
<xloc>880</xloc>
<yloc>272</yloc>
</entry>
</entries>
<hops>
<hop>
<from>START</from>
<to>create tmp_sxc_zahl_wert</to>
<from_nr>0</from_nr>
<to_nr>0</to_nr>
<enabled>Y</enabled>
<evaluation>Y</evaluation>
<unconditional>Y</unconditional>
</hop>
<hop>
<from>create tmp_sxc_zahl_wert</from>
<to>excel_into_tmp</to>
<from_nr>0</from_nr>
<to_nr>0</to_nr>
<enabled>Y</enabled>
<evaluation>Y</evaluation>
<unconditional>N</unconditional>
</hop>
<hop>
<from>insert into sxc_zahl_wert</from>
<to>Success</to>
<from_nr>0</from_nr>
<to_nr>0</to_nr>
<enabled>Y</enabled>
<evaluation>Y</evaluation>
<unconditional>N</unconditional>
</hop>
<hop>
<from>update tmp_sxc_zahl_wert</from>
<to>insert into sxc_zahl_wert</to>
<from_nr>0</from_nr>
<to_nr>0</to_nr>
<enabled>Y</enabled>
<evaluation>Y</evaluation>
<unconditional>N</unconditional>
</hop>
<hop>
<from>update tmp_sxc_zahl_wert</from>
<to>Success</to>
<from_nr>0</from_nr>
<to_nr>0</to_nr>
<enabled>N</enabled>
<evaluation>Y</evaluation>
<unconditional>N</unconditional>
</hop>
<hop>
<from>excel_into_tmp</from>
<to>update tmp_sxc_zahl_wert</to>
<from_nr>0</from_nr>
<to_nr>0</to_nr>
<enabled>Y</enabled>
<evaluation>Y</evaluation>
<unconditional>N</unconditional>
</hop>
</hops>
<notepads>
</notepads>
</job>

1292
src-modules/module/sxc/etl/import_bestand/mwk_nrw_hochschulkennzahlen/import_bestand_mwk_nrw_hskennz_1.ktr

File diff suppressed because it is too large Load Diff

666
src-modules/module/sxc/etl/import_bestand/mwk_nrw_hochschulkennzahlen/import_bestand_mwk_nrw_hskennz_2.ktr

@ -0,0 +1,666 @@ @@ -0,0 +1,666 @@
<?xml version="1.0" encoding="UTF-8"?>
<transformation>
<info>
<name>import_bestand_mwk_nrw_hskennz_2</name>
<description/>
<extended_description/>
<trans_version/>
<trans_type>Normal</trans_type>
<trans_status>0</trans_status>
<directory>&#x2f;</directory>
<parameters>
<parameter>
<name>PATH_TO_UPLOADFILE</name>
<default_value>file&#x3a;&#x2f;&#x2f;&#x2f;home&#x2f;superx&#x2f;git&#x2f;Memtext-Interna&#x2f;Projekte&#x2f;duisburg-essen_uni&#x2f;muster&#x2f;2025_stammdaten_nrw&#x2f;Stammdaten_MKW_orig_2023.xlsx</default_value>
<description/>
</parameter>
</parameters>
<log>
<trans-log-table>
<connection/>
<schema/>
<table/>
<size_limit_lines/>
<interval/>
<timeout_days/>
<field>
<id>ID_BATCH</id>
<enabled>Y</enabled>
<name>ID_BATCH</name>
</field>
<field>
<id>CHANNEL_ID</id>
<enabled>Y</enabled>
<name>CHANNEL_ID</name>
</field>
<field>
<id>TRANSNAME</id>
<enabled>Y</enabled>
<name>TRANSNAME</name>
</field>
<field>
<id>STATUS</id>
<enabled>Y</enabled>
<name>STATUS</name>
</field>
<field>
<id>LINES_READ</id>
<enabled>Y</enabled>
<name>LINES_READ</name>
<subject/>
</field>
<field>
<id>LINES_WRITTEN</id>
<enabled>Y</enabled>
<name>LINES_WRITTEN</name>
<subject/>
</field>
<field>
<id>LINES_UPDATED</id>
<enabled>Y</enabled>
<name>LINES_UPDATED</name>
<subject/>
</field>
<field>
<id>LINES_INPUT</id>
<enabled>Y</enabled>
<name>LINES_INPUT</name>
<subject/>
</field>
<field>
<id>LINES_OUTPUT</id>
<enabled>Y</enabled>
<name>LINES_OUTPUT</name>
<subject/>
</field>
<field>
<id>LINES_REJECTED</id>
<enabled>Y</enabled>
<name>LINES_REJECTED</name>
<subject/>
</field>
<field>
<id>ERRORS</id>
<enabled>Y</enabled>
<name>ERRORS</name>
</field>
<field>
<id>STARTDATE</id>
<enabled>Y</enabled>
<name>STARTDATE</name>
</field>
<field>
<id>ENDDATE</id>
<enabled>Y</enabled>
<name>ENDDATE</name>
</field>
<field>
<id>LOGDATE</id>
<enabled>Y</enabled>
<name>LOGDATE</name>
</field>
<field>
<id>DEPDATE</id>
<enabled>Y</enabled>
<name>DEPDATE</name>
</field>
<field>
<id>REPLAYDATE</id>
<enabled>Y</enabled>
<name>REPLAYDATE</name>
</field>
<field>
<id>LOG_FIELD</id>
<enabled>Y</enabled>
<name>LOG_FIELD</name>
</field>
<field>
<id>EXECUTING_SERVER</id>
<enabled>N</enabled>
<name>EXECUTING_SERVER</name>
</field>
<field>
<id>EXECUTING_USER</id>
<enabled>N</enabled>
<name>EXECUTING_USER</name>
</field>
<field>
<id>CLIENT</id>
<enabled>N</enabled>
<name>CLIENT</name>
</field>
</trans-log-table>
<perf-log-table>
<connection/>
<schema/>
<table/>
<interval/>
<timeout_days/>
<field>
<id>ID_BATCH</id>
<enabled>Y</enabled>
<name>ID_BATCH</name>
</field>
<field>
<id>SEQ_NR</id>
<enabled>Y</enabled>
<name>SEQ_NR</name>
</field>
<field>
<id>LOGDATE</id>
<enabled>Y</enabled>
<name>LOGDATE</name>
</field>
<field>
<id>TRANSNAME</id>
<enabled>Y</enabled>
<name>TRANSNAME</name>
</field>
<field>
<id>STEPNAME</id>
<enabled>Y</enabled>
<name>STEPNAME</name>
</field>
<field>
<id>STEP_COPY</id>
<enabled>Y</enabled>
<name>STEP_COPY</name>
</field>
<field>
<id>LINES_READ</id>
<enabled>Y</enabled>
<name>LINES_READ</name>
</field>
<field>
<id>LINES_WRITTEN</id>
<enabled>Y</enabled>
<name>LINES_WRITTEN</name>
</field>
<field>
<id>LINES_UPDATED</id>
<enabled>Y</enabled>
<name>LINES_UPDATED</name>
</field>
<field>
<id>LINES_INPUT</id>
<enabled>Y</enabled>
<name>LINES_INPUT</name>
</field>
<field>
<id>LINES_OUTPUT</id>
<enabled>Y</enabled>
<name>LINES_OUTPUT</name>
</field>
<field>
<id>LINES_REJECTED</id>
<enabled>Y</enabled>
<name>LINES_REJECTED</name>
</field>
<field>
<id>ERRORS</id>
<enabled>Y</enabled>
<name>ERRORS</name>
</field>
<field>
<id>INPUT_BUFFER_ROWS</id>
<enabled>Y</enabled>
<name>INPUT_BUFFER_ROWS</name>
</field>
<field>
<id>OUTPUT_BUFFER_ROWS</id>
<enabled>Y</enabled>
<name>OUTPUT_BUFFER_ROWS</name>
</field>
</perf-log-table>
<channel-log-table>
<connection/>
<schema/>
<table/>
<timeout_days/>
<field>
<id>ID_BATCH</id>
<enabled>Y</enabled>
<name>ID_BATCH</name>
</field>
<field>
<id>CHANNEL_ID</id>
<enabled>Y</enabled>
<name>CHANNEL_ID</name>
</field>
<field>
<id>LOG_DATE</id>
<enabled>Y</enabled>
<name>LOG_DATE</name>
</field>
<field>
<id>LOGGING_OBJECT_TYPE</id>
<enabled>Y</enabled>
<name>LOGGING_OBJECT_TYPE</name>
</field>
<field>
<id>OBJECT_NAME</id>
<enabled>Y</enabled>
<name>OBJECT_NAME</name>
</field>
<field>
<id>OBJECT_COPY</id>
<enabled>Y</enabled>
<name>OBJECT_COPY</name>
</field>
<field>
<id>REPOSITORY_DIRECTORY</id>
<enabled>Y</enabled>
<name>REPOSITORY_DIRECTORY</name>
</field>
<field>
<id>FILENAME</id>
<enabled>Y</enabled>
<name>FILENAME</name>
</field>
<field>
<id>OBJECT_ID</id>
<enabled>Y</enabled>
<name>OBJECT_ID</name>
</field>
<field>
<id>OBJECT_REVISION</id>
<enabled>Y</enabled>
<name>OBJECT_REVISION</name>
</field>
<field>
<id>PARENT_CHANNEL_ID</id>
<enabled>Y</enabled>
<name>PARENT_CHANNEL_ID</name>
</field>
<field>
<id>ROOT_CHANNEL_ID</id>
<enabled>Y</enabled>
<name>ROOT_CHANNEL_ID</name>
</field>
</channel-log-table>
<step-log-table>
<connection/>
<schema/>
<table/>
<timeout_days/>
<field>
<id>ID_BATCH</id>
<enabled>Y</enabled>
<name>ID_BATCH</name>
</field>
<field>
<id>CHANNEL_ID</id>
<enabled>Y</enabled>
<name>CHANNEL_ID</name>
</field>
<field>
<id>LOG_DATE</id>
<enabled>Y</enabled>
<name>LOG_DATE</name>
</field>
<field>
<id>TRANSNAME</id>
<enabled>Y</enabled>
<name>TRANSNAME</name>
</field>
<field>
<id>STEPNAME</id>
<enabled>Y</enabled>
<name>STEPNAME</name>
</field>
<field>
<id>STEP_COPY</id>
<enabled>Y</enabled>
<name>STEP_COPY</name>
</field>
<field>
<id>LINES_READ</id>
<enabled>Y</enabled>
<name>LINES_READ</name>
</field>
<field>
<id>LINES_WRITTEN</id>
<enabled>Y</enabled>
<name>LINES_WRITTEN</name>
</field>
<field>
<id>LINES_UPDATED</id>
<enabled>Y</enabled>
<name>LINES_UPDATED</name>
</field>
<field>
<id>LINES_INPUT</id>
<enabled>Y</enabled>
<name>LINES_INPUT</name>
</field>
<field>
<id>LINES_OUTPUT</id>
<enabled>Y</enabled>
<name>LINES_OUTPUT</name>
</field>
<field>
<id>LINES_REJECTED</id>
<enabled>Y</enabled>
<name>LINES_REJECTED</name>
</field>
<field>
<id>ERRORS</id>
<enabled>Y</enabled>
<name>ERRORS</name>
</field>
<field>
<id>LOG_FIELD</id>
<enabled>N</enabled>
<name>LOG_FIELD</name>
</field>
</step-log-table>
<metrics-log-table>
<connection/>
<schema/>
<table/>
<timeout_days/>
<field>
<id>ID_BATCH</id>
<enabled>Y</enabled>
<name>ID_BATCH</name>
</field>
<field>
<id>CHANNEL_ID</id>
<enabled>Y</enabled>
<name>CHANNEL_ID</name>
</field>
<field>
<id>LOG_DATE</id>
<enabled>Y</enabled>
<name>LOG_DATE</name>
</field>
<field>
<id>METRICS_DATE</id>
<enabled>Y</enabled>
<name>METRICS_DATE</name>
</field>
<field>
<id>METRICS_CODE</id>
<enabled>Y</enabled>
<name>METRICS_CODE</name>
</field>
<field>
<id>METRICS_DESCRIPTION</id>
<enabled>Y</enabled>
<name>METRICS_DESCRIPTION</name>
</field>
<field>
<id>METRICS_SUBJECT</id>
<enabled>Y</enabled>
<name>METRICS_SUBJECT</name>
</field>
<field>
<id>METRICS_TYPE</id>
<enabled>Y</enabled>
<name>METRICS_TYPE</name>
</field>
<field>
<id>METRICS_VALUE</id>
<enabled>Y</enabled>
<name>METRICS_VALUE</name>
</field>
</metrics-log-table>
</log>
<maxdate>
<connection/>
<table/>
<field/>
<offset>0.0</offset>
<maxdiff>0.0</maxdiff>
</maxdate>
<size_rowset>10000</size_rowset>
<sleep_time_empty>50</sleep_time_empty>
<sleep_time_full>50</sleep_time_full>
<unique_connections>N</unique_connections>
<feedback_shown>Y</feedback_shown>
<feedback_size>50000</feedback_size>
<using_thread_priorities>Y</using_thread_priorities>
<shared_objects_file/>
<capture_step_performance>N</capture_step_performance>
<step_performance_capturing_delay>1000</step_performance_capturing_delay>
<step_performance_capturing_size_limit>100</step_performance_capturing_size_limit>
<dependencies>
</dependencies>
<partitionschemas>
</partitionschemas>
<slaveservers>
</slaveservers>
<clusterschemas>
</clusterschemas>
<created_user>-</created_user>
<created_date>2025&#x2f;05&#x2f;09 08&#x3a;34&#x3a;54.065</created_date>
<modified_user>-</modified_user>
<modified_date>2025&#x2f;05&#x2f;09 08&#x3a;34&#x3a;54.065</modified_date>
<key_for_session_key>H4sIAAAAAAAAAAMAAAAAAAAAAAA&#x3d;</key_for_session_key>
<is_key_private>N</is_key_private>
</info>
<notepads>
</notepads>
<order>
<hop>
<from>Microsoft Excel Input 2</from>
<to>Join Rows &#x28;cartesian product&#x29;</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Table input</from>
<to>Join Rows &#x28;cartesian product&#x29;</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Join Rows &#x28;cartesian product&#x29;</from>
<to>Update</to>
<enabled>Y</enabled>
</hop>
</order>
<step>
<name>Microsoft Excel Input 2</name>
<type>ExcelInput</type>
<description/>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<header>N</header>
<noempty>Y</noempty>
<stoponempty>N</stoponempty>
<filefield/>
<sheetfield/>
<sheetrownumfield/>
<rownumfield/>
<sheetfield/>
<filefield/>
<limit>1</limit>
<encoding/>
<add_to_result_filenames>Y</add_to_result_filenames>
<accept_filenames>N</accept_filenames>
<accept_field/>
<accept_stepname/>
<file>
<name>&#x24;&#x7b;PATH_TO_UPLOADFILE&#x7d;</name>
<filemask/>
<exclude_filemask/>
<file_required>N</file_required>
<include_subfolders>N</include_subfolders>
</file>
<fields>
<field>
<name>Jahr</name>
<type>Integer</type>
<length>-1</length>
<precision>-1</precision>
<trim_type>none</trim_type>
<repeat>N</repeat>
<format/>
<currency/>
<decimal/>
<group/>
</field>
</fields>
<sheets>
<sheet>
<name>Tabelle1</name>
<startrow>3</startrow>
<startcol>1</startcol>
</sheet>
</sheets>
<strict_types>N</strict_types>
<error_ignored>N</error_ignored>
<error_line_skipped>N</error_line_skipped>
<bad_line_files_destination_directory/>
<bad_line_files_extension>warning</bad_line_files_extension>
<error_line_files_destination_directory/>
<error_line_files_extension>error</error_line_files_extension>
<line_number_files_destination_directory/>
<line_number_files_extension>line</line_number_files_extension>
<shortFileFieldName/>
<pathFieldName/>
<hiddenFieldName/>
<lastModificationTimeFieldName/>
<uriNameFieldName/>
<rootUriNameFieldName/>
<extensionFieldName/>
<sizeFieldName/>
<spreadsheet_type>POI</spreadsheet_type>
<cluster_schema/>
<remotesteps>
<input>
</input>
<output>
</output>
</remotesteps>
<GUI>
<xloc>192</xloc>
<yloc>320</yloc>
<draw>Y</draw>
</GUI>
</step>
<step>
<name>Join Rows &#x28;cartesian product&#x29;</name>
<type>JoinRows</type>
<description/>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<directory>&#x25;&#x25;java.io.tmpdir&#x25;&#x25;</directory>
<prefix>out</prefix>
<cache_size>500</cache_size>
<main/>
<compare>
<condition>
<negated>N</negated>
<leftvalue/>
<function>&#x3d;</function>
<rightvalue/>
</condition>
</compare>
<cluster_schema/>
<remotesteps>
<input>
</input>
<output>
</output>
</remotesteps>
<GUI>
<xloc>496</xloc>
<yloc>256</yloc>
<draw>Y</draw>
</GUI>
</step>
<step>
<name>Table input</name>
<type>TableInput</type>
<description/>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<connection>eduetl</connection>
<sql>SELECT &#x2a; FROM tmp_sxc_zahl_wert</sql>
<limit>0</limit>
<lookup/>
<execute_each_row>N</execute_each_row>
<variables_active>N</variables_active>
<lazy_conversion_active>N</lazy_conversion_active>
<cluster_schema/>
<remotesteps>
<input>
</input>
<output>
</output>
</remotesteps>
<GUI>
<xloc>192</xloc>
<yloc>208</yloc>
<draw>Y</draw>
</GUI>
</step>
<step>
<name>Update</name>
<type>Update</type>
<description/>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<connection>eduetl</connection>
<skip_lookup>N</skip_lookup>
<commit>100</commit>
<use_batch>N</use_batch>
<error_ignored>N</error_ignored>
<ignore_flag_field/>
<lookup>
<schema/>
<table>tmp_sxc_zahl_wert</table>
<key>
<name>tid</name>
<field>tid</field>
<condition>&#x3d;</condition>
<name2/>
</key>
<value>
<name>jahr</name>
<rename>Jahr</rename>
</value>
</lookup>
<cluster_schema/>
<remotesteps>
<input>
</input>
<output>
</output>
</remotesteps>
<GUI>
<xloc>656</xloc>
<yloc>256</yloc>
<draw>Y</draw>
</GUI>
</step>
<step_error_handling>
</step_error_handling>
<slave-step-copy-partition-distribution>
</slave-step-copy-partition-distribution>
<slave_transformation>N</slave_transformation>
</transformation>

26
src-modules/module/sxc/masken/47110_felderinfo.unl

@ -0,0 +1,26 @@ @@ -0,0 +1,26 @@
47110^End Semester^5^0^0^150^100^1^integer^30^0^1^<<SQL>> select tid,druck from kenn_semester order by tid DESC;^ ^<<SQL>> select tid,druck from kenn_semester where today() between sem_beginn and sem_ende;^
47111^Stat. Kennzahl^80^0^0^150^150^6^char^30^0^1^<<SQL>> select apnr,druck from kenn_stichtagsart where aktiv='1'\
and (select apnr from konstanten where beschreibung='KENN_PROFIL') in (5,6)\
and 0!=(select count(*) from kenn_bestandsart_bland B, kenn_bestandsart K\
where B.bestandsart=K.apnr\
and K.stichtagsart_id=kenn_stichtagsart.apnr\
and B.bland ='SA')\
union\
select apnr,druck from kenn_stichtagsart where aktiv='1'\
and (select apnr from konstanten where beschreibung='KENN_PROFIL') in (1,2,3,4)\
and 0!=(select count(*) from kenn_bestandsart_bland B, kenn_bestandsart K\
where B.bestandsart=K.apnr\
and K.stichtagsart_id=kenn_stichtagsart.apnr\
and B.bland ='BW')\
order by 1,2\
;^ ^ ^
47112^End-Jahr^7^360^-1^100^50^1^integer^30^0^1^<<SQL>> SELECT distinct ord,name FROM aggregierung where kategorie='KENN-Jahr' order by 1;^ ^<<SQL>> SELECT ord,name FROM aggregierung where kategorie='KENN-Jahr' and ord=(year(today())-1) ;^
47113^nur zu berechnende Kennzahlen^110^0^0^150^50^1^char^30^0^999^<<SQL>> select '1','Ja' from xdummy union select '0','Nein' from xdummy;^ ^ ^
47114^Kennzahl Nr.^90^0^0^150^30^1^char^4^0^0^^ ^ ^
47115^Hochschule^1^0^0^150^200^5^char^30^0^12^<<SQL>> select tid, type, name,sortnr from sichten where art in('SXC_Hochschulen-Sicht') and aktiv=1 order by sortnr desc, name;^ ^ ^
47116^nur zu exportierende Kennzahlen^120^360^-1^100^50^1^char^30^0^999^<<SQL>> select '1','Ja' from xdummy union select '0' ,'Nein' from xdummy;^ ^ ^
47117^Filter bis Ebene^25^0^0^150^20^1^integer^30^0^0^^ ^1^
47118^Bericht^100^360^-1^100^200^1^char^30^1^1^<<SQL>> select 'MKWNRW_1','MKW NRW Hochschulkennzahlen';^ ^<<SQL>>select 'MKWNRW_1','MKW NRW Hochschulkennzahlen';^
47119^Start-Jahr^6^360^-1^100^50^1^integer^30^0^1^<<SQL>> SELECT distinct ord,name FROM aggregierung where kategorie='KENN-Jahr' order by 1;^ ^<<SQL>> SELECT ord,name FROM aggregierung where kategorie='KENN-Jahr' and ord=(year(today())-1) ;^
47120^Start Semester^4^0^0^150^100^1^integer^30^0^1^<<SQL>> select tid,druck from kenn_semester order by tid DESC;^ ^<<SQL>> select tid,druck from kenn_semester where today() between sem_beginn and sem_ende;^
47121^oder^30^0^0^120^200^1^char^30^0^13^^ ^ ^

1
src-modules/module/sxc/masken/47110_maske_system_bez.unl

@ -0,0 +1 @@ @@ -0,0 +1 @@
47110^109^

12
src-modules/module/sxc/masken/47110_masken_felder_bez.unl

@ -0,0 +1,12 @@ @@ -0,0 +1,12 @@
47110^47110^
47110^47111^
47110^47112^
47110^47113^
47110^47114^
47110^47115^
47110^47116^
47110^47117^
47110^47118^
47110^47119^
47110^47120^
47110^47121^

817
src-modules/module/sxc/masken/47110_maskeninfo.unl

@ -0,0 +1,817 @@ @@ -0,0 +1,817 @@
47110^Stammdaten NRW^--Freemarker Template\
<#include "SQL_lingua_franca"/>\
<#include "SuperX_general"/>\
\
-- ################\
-- # Erläuterung: #\
-- ################\
-- bezugsart:\
-- Q = Quartal\
-- S = Semester\
-- J = Jahr\
-- A = Akademisches Jahr BW\
-- B = Beginner SA (Studeinanfäger)\
-- P = Prüfungen SA (Absolventen) (war früher U)\
\
\
--######################################\
\
--start ergtabelle \
<sqlvars>\
<sqlvar name="kenn_katalog" type="hashsequence"><![CDATA[\
<#assign kennznr="<<Kennzahl Nr.>>"?replace("'","")?replace("*","%")+"%"/>\
\
select trim(K.id) as id,trim(R.gruppe_1) as gruppe_1,\
trim(R.gruppe_2) as gruppe_2,\
trim(K.name) as name,\
trim(K.quelltabelle) as quelltabelle,\
trim(K.quellfeld) as quellfeld,\
K.bedingung as bedingung,\
trim(K.stichtagsart) as stichtagsart,\
trim(K.bezugsart) as bezugsart,\
trim(K.zeitfeld) as zeitfeld,\
R.ebene,\
R.ord_nr,\
K.einheit,\
K.beschreibung\
FROM kenn_katalog K, kenn_katalog_rpt R\
where K.id=R.katalog_id\
and R.report_id=<<Bericht>>\
/* and R.gruppe_1 like ('${kennznr}') and <<Kennzahl Nr.>>!='muss sein, da der Feld optional ist' */\
/* and K.stichtagsart in (select druck from kenn_stichtagsart where aktiv='1' and apnr in (<<Stat. Kennzahl>>)) */\
--Sortierung nach ord_nr wichtig wg. Querabhängigkeiten\
order by 12;\
]]>\
</sqlvar>\
\
<sqlvar name="sem_akad_bw_von">\
select min(tid) from kenn_semester\
where 1=1\
/* and get_akad_jahr(tid,'A') &gt;= <<Start-Jahr>> */\
/* and get_akad_jahr(tid,'A') &lt;= <<End-Jahr>> */;\
</sqlvar>\
<sqlvar name="sem_akad_bw_bis">\
select max(tid) from kenn_semester\
where 1=1\
/* and get_akad_jahr(tid,'A') &gt;= <<Start-Jahr>> */\
/* and get_akad_jahr(tid,'A') &lt;= <<End-Jahr>> */;\
</sqlvar>\
<sqlvar name="jahr_akad_bw_von">\
select min(ord) from aggregierung\
where kategorie='KENN-Jahr'\
/* and ord &gt;= <<Start-Jahr>> */\
/* and ord &lt;= <<End-Jahr>> */;\
</sqlvar>\
<sqlvar name="jahr_akad_bw_bis">\
select max(ord) from aggregierung\
where kategorie='KENN-Jahr'\
/* and ord &gt;= <<Start-Jahr>> */\
/* and ord &lt;= <<End-Jahr>> */;\
</sqlvar>\
<sqlvar name="sem_akad_sa_anf_von">\
select min(tid) from kenn_semester\
where 1=1\
/* and akad_jahr_anf &gt;= <<Start-Jahr>> */\
/* and akad_jahr_anf &lt;= <<End-Jahr>> */;\
</sqlvar>\
<sqlvar name="sem_akad_sa_anf_bis">\
select max(tid) from kenn_semester\
where 1=1\
/* and akad_jahr_anf &gt;= <<Start-Jahr>> */\
/* and akad_jahr_anf &lt;= <<End-Jahr>> */;\
</sqlvar>\
<sqlvar name="sem_akad_sa_absolv_von">\
select min(tid) from kenn_semester\
where 1=1\
/* and akad_jahr_absolv &gt;= <<Start-Jahr>> */\
/* and akad_jahr_absolv &lt;= <<End-Jahr>> */;\
</sqlvar>\
<sqlvar name="sem_akad_sa_absolv_bis">\
select max(tid) from kenn_semester\
where 1=1\
/* and akad_jahr_absolv &gt;= <<Start-Jahr>> */\
/* and akad_jahr_absolv &lt;= <<End-Jahr>> */;\
</sqlvar>\
</sqlvars>\
\
<#assign lfb_feldinhalt="''" />\
/* <#assign lfb_feldinhalt= .vars["Externes Produkt"].allNeededKeys /> --<<Externes Produkt>> */\
\
--URL-Parameter für LFB-Detailmaske Sachsen:\
<#assign seit_jahr_param="" />\
<#if "<<Start-Jahr>>" != "">\
<#assign seit_jahr_param="&Start-Jahr=<<Start-Jahr>>" />\
</#if>\
<#assign bis_jahr_param="" />\
<#if "<<End-Jahr>>" != "">\
<#assign bis_jahr_param="&End-Jahr=<<End-Jahr>>" />\
</#if>\
<#assign hochschule_param="" />\
<#if "<<Hochschule>>" != "">\
/* <#assign hs="<<Hochschule>>" /> */\
<#assign hochschule_param="&Hochschule="+ hs?replace("'", "") />\
</#if>\
\
create temp table tmp_kennz\
(\
tid integer,\
hs_nr integer,\
katalog_id CHAR(100),\
hochschule_str nchar(255),\
stichtagsart nchar(255),\
beschreibung char(255),\
zeitraum_int integer,\
zeitraum_str char(255), \
bezugsart char(1),\
ebene smallint,\
ord_nr smallint,\
gruppe_1 char(40),\
gruppe_2 char(40),\
betrag decimal(14,2),\
einheit char(255), \
erlaeuterung varchar(255),\
nextmask varchar(250),\
nexttable varchar(250),\
jahr integer,\
semester integer\
) <@informixnolog/>;\
create temp table tmp_kennz3\
(tid integer,\
hs_nr integer,\
katalog_id CHAR(100),\
hochschule_str nchar(255),\
stichtagsart nchar(255),\
beschreibung char(255),\
zeitraum_int integer,\
zeitraum_str char(255), \
bezugsart char(1),\
ebene smallint,\
gruppe_1 char(40),\
gruppe_2 char(40),\
betrag decimal(14,2),\
einheit char(255),\
erlaeuterung varchar(255)\
) <@informixnolog/>;\
\
create temp table tmp_betrag1\
(hs_nr integer,\
zeitraum_int integer,\
betrag decimal(14,2)\
) <@informixnolog/>;\
\
create temp table tmp_betrag2\
(hs_nr integer,\
zeitraum_int integer,\
betrag decimal(14,2)\
) <@informixnolog/>;\
\
\
\
\
<#macro bedingung zeitfeld bezugsart stichtagsart>\
<#if zeitfeld='null::integer' >\
(1=1)\
<#else>\
<#switch bezugsart>\
<#case "A">\
--Akad. Studienjahr ist etwas komplizierter\
--Def.: WS + darauf folgendes SS des im Zähler betrachteten Studienjahres\
<#if zeitfeld='jahr' >\
(\
1=1 \
/*and jahr in\
(SELECT K.bezugszeit FROM kenn_stichtag K where K.bezugsart='J'\
and K.stichtagsart='${stichtagsart}' and K.exportieren=<<nur zu exportierende Kennzahlen>> ) */\
/* and jahr in\
(SELECT K.bezugszeit FROM kenn_stichtag K where K.bezugsart='J'\
and K.stichtagsart='${stichtagsart}' and K.berechnen=<<nur zu berechnende Kennzahlen>> ) */\
)\
<#else>\
--Semester\
(\
1=1\
/* and ${zeitfeld} in\
(SELECT K.bezugszeit FROM kenn_stichtag K where K.bezugsart='S'\
and K.stichtagsart='${stichtagsart}' and K.exportieren=<<nur zu exportierende Kennzahlen>>) */\
/* and ${zeitfeld} in\
(SELECT K.bezugszeit FROM kenn_stichtag K where K.bezugsart='S'\
and K.stichtagsart='${stichtagsart}' and K.berechnen=<<nur zu berechnende Kennzahlen>> )*/\
\
)\
</#if>\
<#break>\
\
<#default>\
1=1\
/* and ${zeitfeld} in (SELECT K.bezugszeit FROM kenn_stichtag K where K.bezugsart='${bezugsart}'\
and K.stichtagsart='${stichtagsart}'\
and K.exportieren=<<nur zu exportierende Kennzahlen>>) */\
/* and ${zeitfeld} in (SELECT K.bezugszeit FROM kenn_stichtag K where K.bezugsart='${bezugsart}'\
and K.stichtagsart='${stichtagsart}'\
and K.berechnen=<<nur zu berechnende Kennzahlen>>) */\
\
\
</#switch>\
</#if>\
</#macro>\
\
\
--Erste Schleife für alle zu berechnenden Werte, wo quelltabelle gefüllt ist\
<#if kenn_katalog?has_content >\
<#foreach row_kennzahl in kenn_katalog>\
<#if row_kennzahl.id != "dummy" && row_kennzahl.id != "dummy1">\
--Variablen erheben\
<#assign quelltabelle= row_kennzahl.quelltabelle />\
<#assign quellfeld= row_kennzahl.quellfeld />\
<#assign filter= row_kennzahl.bedingung />\
<#assign stichtagsart= row_kennzahl.stichtagsart />\
<#assign bezugsart= row_kennzahl.bezugsart />\
<#assign zeitfeld= row_kennzahl.zeitfeld />\
<#assign ebene= row_kennzahl.ebene />\
<#assign ord_nr= row_kennzahl.ord_nr />\
<#assign gruppe_1= row_kennzahl.gruppe_1 />\
<#assign gruppe_2= row_kennzahl.gruppe_2 />\
<#assign einheit= row_kennzahl.einheit />\
<#assign beschreibung= row_kennzahl.beschreibung />\
\
\
<#assign zeit_bedingung="1=1" />\
\
<#switch bezugsart>\
<#case "Q">\
<#if "<<Start-Jahr>>" != "" && "<<End-Jahr>>" != "">\
<#assign zeit_bedingung= "jahr between <<Start-Jahr>> and <<End-Jahr>>" />\
</#if>\
<#if "<<Start-Jahr>>" = "" && "<<End-Jahr>>" != "">\
<#assign zeit_bedingung= "jahr <= <<End-Jahr>>" />\
</#if>\
<#if "<<Start-Jahr>>" != "" && "<<End-Jahr>>" = "">\
<#assign zeit_bedingung= "jahr >= <<Start-Jahr>>" />\
</#if>\
<#break>\
<#case "S">\
<#if "<<Start Semester>>" != "" && "<<End Semester>>" != "">\
<#assign zeit_bedingung= zeitfeld + " between <<Start Semester>> and <<End Semester>>" />\
</#if>\
<#if "<<Start Semester>>" = "" && "<<End Semester>>" != "">\
<#assign zeit_bedingung= zeitfeld + " <= <<End Semester>>" />\
</#if>\
<#if "<<Start Semester>>" != "" && "<<End Semester>>" = "">\
<#assign zeit_bedingung= zeitfeld + " >= <<Start Semester>>" />\
</#if>\
<#if "<<Start-Jahr>>" != "" && "<<End-Jahr>>" != "">\
<#assign zeit_bedingung= "get_akad_jahr("+zeitfeld+",'B') between <<Start-Jahr>> and <<End-Jahr>>" />\
</#if>\
<#if "<<Start-Jahr>>" = "" && "<<End-Jahr>>" != "">\
<#assign zeit_bedingung= "get_akad_jahr("+zeitfeld+",'B') <= <<End-Jahr>>" />\
</#if>\
<#if "<<Start-Jahr>>" != "" && "<<End-Jahr>>" = "">\
<#assign zeit_bedingung= "get_akad_jahr("+zeitfeld+",'B') >= <<Start-Jahr>>" />\
</#if>\
<#break>\
<#case "J">\
<#if "<<Start-Jahr>>" != "" && "<<End-Jahr>>" != "">\
<#assign zeit_bedingung= zeitfeld + " between <<Start-Jahr>> and <<End-Jahr>>" />\
</#if>\
<#if "<<Start-Jahr>>" = "" && "<<End-Jahr>>" != "">\
<#assign zeit_bedingung= zeitfeld + " <= <<End-Jahr>>" />\
</#if>\
<#if "<<Start-Jahr>>" != "" && "<<End-Jahr>>" = "">\
<#assign zeit_bedingung= zeitfeld + " >= <<Start-Jahr>>" />\
</#if>\
<#break>\
<#case "A">\
<#if zeitfeld="sem">\
<#if sem_akad_bw_von?trim != "">\
<#assign zeit_bedingung= zeit_bedingung+ " and " + zeitfeld + ">="+ sem_akad_bw_von />\
</#if>\
<#if sem_akad_bw_bis?trim != "">\
<#assign zeit_bedingung= zeit_bedingung+ " and "+ zeitfeld + "<="+ sem_akad_bw_bis />\
</#if>\
</#if>\
<#if zeitfeld?index_of("jahr") &gt; -1 >\
<#if jahr_akad_bw_von?trim != "">\
<#assign zeit_bedingung= zeit_bedingung+ " and " + zeitfeld + ">="+ jahr_akad_bw_von />\
</#if>\
<#if jahr_akad_bw_bis?trim != "">\
<#assign zeit_bedingung= zeit_bedingung+ " and "+ zeitfeld + "<="+ jahr_akad_bw_bis />\
</#if>\
</#if>\
<#break>\
<#case "B">\
<#if sem_akad_sa_anf_von?trim != "">\
<#assign zeit_bedingung= zeit_bedingung+ " and " + zeitfeld + ">="+ sem_akad_sa_anf_von />\
</#if>\
<#if sem_akad_sa_anf_bis?trim != "">\
<#assign zeit_bedingung= zeit_bedingung+ " and "+ zeitfeld + "<="+ sem_akad_sa_anf_bis />\
</#if>\
<#break>\
<#case "P">\
<#if sem_akad_sa_absolv_von?trim != "">\
<#assign zeit_bedingung= zeit_bedingung+ " and "+ zeitfeld + " >="+ sem_akad_sa_absolv_von />\
</#if>\
<#if sem_akad_sa_absolv_bis?trim != "">\
<#assign zeit_bedingung= zeit_bedingung+ " and "+ zeitfeld + "<="+ sem_akad_sa_absolv_bis />\
</#if>\
\
<#break>\
<#default>\
<#assign zeit_bedingung= "1=1" />\
</#switch>\
\
--Zuerst die Felder, die aus KENN-Tabellen generiert werden\
--Achtung: die folgenden Tabellennamen müssen auch in Maske 18000 eingetragen werden\
<#assign lfb_colname="" />\
<#if quelltabelle != "" >\
<#if quelltabelle=="kenn_sos_stg" || quelltabelle=="kenn_sos_lab" \
|| quelltabelle=="kenn_sos_stg" || quelltabelle=="kenn_flaeche"\
|| quelltabelle=="kenn_pbv_aggr" || quelltabelle=="kenn_konto_aggr"\
|| quelltabelle=="kenn_anlagen_aggr" || quelltabelle=="kenn_stupl">\
<#assign lfb_colname="extkotr" />\
</#if>\
<#if quelltabelle== "kenn_busa_aggr">\
<#assign lfb_colname="projnr" />\
</#if>\
<#if quelltabelle== "kenn_vtbu_aggr">\
<#assign lfb_colname="ziel_projnr" />\
</#if>\
<#if quelltabelle== "kenn_zahl_wert">\
<#if row_kennzahl.id == "FORSCH_HABILITATION_KOEPFE">\
<#assign lfb_colname="ch110_institut" />\
<#else>\
<#if row_kennzahl.id == "LEHR_UNBER_ANG" || row_kennzahl.id == "LEHRANG_LEHRAUFTRAEGE" >\
<#assign lfb_colname="(select min(substring(SG.key_ext from 1 for 10)) from kenn_inst_to_ext SG where SG.hs_nr=kenn_zahl_wert.hs_nr and SG.instnr=kenn_zahl_wert.ch110_institut)" />\
<#else>\
<#assign lfb_colname="(select min(SG.k_extkotr) from kenn_stug SG where SG.hs_nr=kenn_zahl_wert.hs_nr and SG.stug_key=kenn_zahl_wert.stugkey)" />\
</#if>\
</#if>\
</#if>\
<#if quelltabelle== "kenn_su_imp_stud" || quelltabelle== "kenn_auslastung" || quelltabelle== "kenn_proj_gege">\
<#assign lfb_colname="k_extkotr" />\
</#if>\
\
insert into tmp_kennz(\
hs_nr ,\
katalog_id,\
stichtagsart ,\
beschreibung ,\
zeitraum_int,\
bezugsart,\
ebene,\
ord_nr,\
gruppe_1,\
gruppe_2,\
betrag,\
einheit,\
erlaeuterung)\
\
select hs_nr,\
'${row_kennzahl.id}'::char(100),\
'${stichtagsart}'::nchar(255),\
'${row_kennzahl.name}' <#if bezugsart = "A" || bezugsart = "P" || bezugsart = "B" && zeitfeld?index_of("sem") &gt; -1 && quelltabelle != ""> || nvl(' (' || (select trim(min(kurz)) from kenn_semester where tid=${quelltabelle}.${zeitfeld}) || ')','') </#if>,\
<#if (bezugsart = "A" || bezugsart = "P" || bezugsart = "B") && zeitfeld?index_of("sem") &gt; -1>\
--akad. Jahr automatisch ermitteln\
get_akad_jahr(${zeitfeld},'${bezugsart}'),\
--val(substring('' || ${zeitfeld} from 1 for 4)),\
<#else>\
${zeitfeld},\
</#if>\
'${bezugsart}'::char(1),\
${ebene}::smallint,\
${ord_nr}::smallint,\
'${gruppe_1}'::char(40),\
'${gruppe_2}'::char(40),\
${quellfeld},\
'${einheit}'::varchar(255),\
'${beschreibung}'::varchar(255)\
from xdummy left outer join ${quelltabelle} on ( \
<@bedingung zeitfeld="${zeitfeld}" bezugsart="${bezugsart}" stichtagsart="${stichtagsart}"/>\
${filter}\
and ${zeit_bedingung}\
and LPAD(hs_nr::TEXT, 4, '0') in <@printkeys .vars["Hochschule"].allNeededKeys /> \
\
<#if lfb_feldinhalt != "''" && lfb_colname != "" >\
and ${lfb_colname} in ${lfb_feldinhalt}\
</#if>\
)\
--nicht doppelt einfügen\
where 0=(select count(*) from tmp_kennz K where K.katalog_id= '${row_kennzahl.id}' and (K.gruppe_1='${gruppe_1}' or K.gruppe_1 is null or trim(K.gruppe_1)=''))\
group by 1,2,3,4,5,6;\
</#if>\
</#if> --wenn nicht "dummy"\
</#foreach>\
</#if>\
<@selectintotmp select="*" source="tmp_kennz" target="tmp_kennz_basis">\
</@selectintotmp> <@informixnolog/>;\
\
\
--nun die berechneten Kennzahlen\
<#list 1..5 as i>\
<#if kenn_katalog?has_content >\
<#foreach row_kennzahl in kenn_katalog>\
<#if row_kennzahl.id != "dummy">\
--Variablen erheben\
<#assign quelltabelle= row_kennzahl.quelltabelle />\
<#assign quellfeld= row_kennzahl.quellfeld />\
<#assign filter= row_kennzahl.bedingung />\
<#assign stichtagsart= row_kennzahl.stichtagsart />\
<#assign bezugsart= row_kennzahl.bezugsart />\
<#assign zeitfeld= row_kennzahl.zeitfeld />\
<#assign ebene= row_kennzahl.ebene />\
<#assign ord_nr= row_kennzahl.ord_nr />\
<#assign gruppe_1= row_kennzahl.gruppe_1 />\
<#assign gruppe_2= row_kennzahl.gruppe_2 />\
<#assign einheit= row_kennzahl.einheit />\
<#assign beschreibung= row_kennzahl.beschreibung />\
\
\
\
<#switch bezugsart>\
<#case "Q">\
<#if "<<Start-Jahr>>" != "" && "<<End-Jahr>>" != "">\
<#assign zeit_bedingung= "jahr between <<Start-Jahr>> and <<End-Jahr>>" />\
</#if>\
<#if "<<Start-Jahr>>" = "" && "<<End-Jahr>>" != "">\
<#assign zeit_bedingung= "jahr <= <<End-Jahr>>" />\
</#if>\
<#if "<<Start-Jahr>>" != "" && "<<End-Jahr>>" = "">\
<#assign zeit_bedingung= "jahr >= <<Start-Jahr>>" />\
</#if>\
<#break>\
<#case "S">\
<#if "<<Start Semester>>" != "" && "<<End Semester>>" != "">\
<#assign zeit_bedingung= zeitfeld + " between <<Start Semester>> and <<End Semester>>" />\
</#if>\
<#if "<<Start Semester>>" = "" && "<<End Semester>>" != "">\
<#assign zeit_bedingung= zeitfeld + " <= <<End Semester>>" />\
</#if>\
<#if "<<Start Semester>>" != "" && "<<End Semester>>" = "">\
<#assign zeit_bedingung= zeitfeld + " >= <<Start Semester>>" />\
</#if>\
<#if "<<Start-Jahr>>" != "" && "<<End-Jahr>>" != "">\
<#assign zeit_bedingung= "get_akad_jahr("+zeitfeld+",'B') between <<Start-Jahr>> and <<End-Jahr>>" />\
</#if>\
<#if "<<Start-Jahr>>" = "" && "<<End-Jahr>>" != "">\
<#assign zeit_bedingung= "get_akad_jahr("+zeitfeld+",'B') <= <<End-Jahr>>" />\
</#if>\
<#if "<<Start-Jahr>>" != "" && "<<End-Jahr>>" = "">\
<#assign zeit_bedingung= "get_akad_jahr("+zeitfeld+",'B') >= <<Start-Jahr>>" />\
</#if>\
<#break>\
<#case "J">\
<#if "<<Start-Jahr>>" != "" && "<<End-Jahr>>" != "">\
<#assign zeit_bedingung= zeitfeld + " between <<Start-Jahr>> and <<End-Jahr>>" />\
</#if>\
<#if "<<Start-Jahr>>" = "" && "<<End-Jahr>>" != "">\
<#assign zeit_bedingung= zeitfeld + " <= <<End-Jahr>>" />\
</#if>\
<#if "<<Start-Jahr>>" != "" && "<<End-Jahr>>" = "">\
<#assign zeit_bedingung= zeitfeld + " >= <<Start-Jahr>>" />\
</#if>\
<#break>\
<#case "A">\
<#assign zeit_bedingung= zeitfeld +" between "+sem_akad_bw_von+" and "+sem_akad_bw_bis />\
<#break>\
<#case "B">\
<#assign zeit_bedingung= zeitfeld +" between "+sem_akad_sa_anf_von+" and "+sem_akad_sa_anf_bis />\
<#break>\
<#case "P">\
<#assign zeit_bedingung= zeitfeld +" between "+sem_akad_sa_absolv_von+" and "+sem_akad_sa_absolv_bis />\
<#break>\
<#default>\
<#assign zeit_bedingung= "1=1" />\
</#switch>\
\
\
--Jetzt die berechneten Felder:\
<#if quelltabelle = "" >\
\
--Bei berechneten Feldern steht in Quelltabelle nichts, dafür die Formel in Feldname\
<#assign rsnum=1 />\
\
<#if quellfeld?index_of("/") != -1 || quellfeld?index_of("*") != -1>\
<#if quellfeld?index_of("/") != -1>\
<#assign operator="/" />\
</#if>\
<#if quellfeld?index_of("*") != -1>\
<#assign operator="*" />\
</#if>\
<#list quellfeld?split(operator) as rs>\
<#if rsnum = 1>\
<#assign betrag1= rs />\
</#if>\
<#if rsnum = 2>\
<#assign betrag2= rs />\
</#if>\
<#assign rsnum= rsnum+1 />\
</#list>\
insert into tmp_betrag1(\
hs_nr ,\
zeitraum_int,\
betrag\
)\
select hs_nr,\
zeitraum_int,\
--sicherstellen dass keien Duplikate reinkommen, wenn eine Kennzahl mehrmals benutzt wird:\
min(betrag)\
from tmp_kennz \
where katalog_id='${betrag1}'\
group by 1,2;\
<#if betrag2?starts_with("2") || betrag2?starts_with("4") >\
--wenn betrag2 keine Variable, sondern eine Zahl ist (z.B. für AVG /2)\
--dann wird nur die 2 übernommen.\
insert into tmp_betrag2(\
hs_nr ,\
zeitraum_int,\
betrag\
)\
select hs_nr,\
zeitraum_int,\
${betrag2}\
from tmp_kennz \
where katalog_id='${betrag1}'; \
<#else>\
insert into tmp_betrag2(\
hs_nr ,\
zeitraum_int,\
betrag )\
select hs_nr,\
zeitraum_int,\
min(betrag)\
from tmp_kennz \
where katalog_id='${betrag2}'\
group by 1,2; \
</#if>\
insert into tmp_kennz3(\
hs_nr ,\
stichtagsart ,\
beschreibung ,\
zeitraum_int,\
bezugsart,\
ebene,\
gruppe_1,\
gruppe_2,\
betrag,\
einheit,\
erlaeuterung)\
select Z.hs_nr,\
'${stichtagsart}'::nchar(255),\
'${row_kennzahl.name}'::char(255) ,\
Z.zeitraum_int,\
'${bezugsart}'::char(1),\
${ebene},\
'${gruppe_1}',\
'${gruppe_2}',\
Z.betrag ${operator} N.betrag,\
'{einheit}',\
'{erlaeuterung}'\
from tmp_betrag1 Z, tmp_betrag2 N \
where 1=1\
<#if filter?trim = "">\
and (Z.zeitraum_int=N.zeitraum_int\
or (Z.zeitraum_int is null and N.zeitraum_int is null))\
<#else>\
--Wenn eine Kennzahl aus zwei nicht zusammenpassenden Zeiträumen gebildet wird,\
--(z.B. WS/HHJ) muss im Katalog das Feld bedingung gefüllt sein\
${filter}\
</#if>\
<#if operator="/">\
--keine Division durch 0\
and N.betrag != 0\
</#if>\
and Z.hs_nr=N.hs_nr;\
</#if>\
<#if quellfeld?index_of("+") != -1 >\
--Summe\
<#assign operator="+" />\
insert into tmp_kennz3(\
hs_nr ,\
stichtagsart ,\
beschreibung ,\
zeitraum_int,\
bezugsart,\
ebene,\
gruppe_1,\
gruppe_2,\
betrag,\
einheit,\
erlaeuterung) \
select hs_nr,\
'${stichtagsart}'::nchar(255),\
'${row_kennzahl.name}'::char(255) ,\
zeitraum_int,\
'${bezugsart}'::char(1),\
${ebene}::integer,\
'${gruppe_1}'::char(40),\
'${gruppe_2}'::char(40),\
sum(betrag),\
'${einheit}',\
'${beschreibung}'\
from xdummy left outer join tmp_kennz on \
( katalog_id in (\
<#list quellfeld?split(operator) as rs>\
'${rs?trim}',\
</#list>\
'')\
and hs_nr is not null --nur wenn überhaupt ein Wert drin ist\
-- bei Akademischen Jahr soll keine Addition statt finden, wenn eins der beiden Semester keine Zahlen enthält. Das Ergebnis aus der Summe wäre irreführend.\
<#if row_kennzahl.bezugsart = 'A'>\
<#list quellfeld?split(operator) as rs>\
and 0 < (select count(*) from tmp_kennz_basis BS where BS.katalog_id = '${rs}' and BS.zeitraum_int=tmp_kennz.zeitraum_int and BS.betrag is not null)\
</#list>\
</#if>\
${row_kennzahl.bedingung} )\
group by 1,2,3,4,5,6,7; \
</#if>\
\
insert into tmp_kennz(\
hs_nr ,\
katalog_id,\
stichtagsart ,\
beschreibung ,\
zeitraum_int,\
bezugsart,\
ebene,\
ord_nr,\
gruppe_1,\
gruppe_2,\
betrag,\
einheit,\
erlaeuterung)\
select\
hs_nr ,\
'${row_kennzahl.id}'::char(100),\
'${stichtagsart}'::nchar(255),\
'${row_kennzahl.name}'::char(255) ,\
zeitraum_int,\
bezugsart,\
${ebene}::smallint,\
${ord_nr}::smallint,\
'${gruppe_1}'::char(40),\
'${gruppe_2}'::char(40),\
betrag,\
'${einheit}' ,\
'${beschreibung}' \
<#if i=5>\
--nur im letzten Durchgang ein left outer join, um sicherzugehen dass eine Zeile\
--angezeigt wird, auch wenn der Wert fehlt.\
from xdummy left outer join tmp_kennz3 on (1=1)\
<#else>\
from tmp_kennz3\
</#if>\
--nicht doppelt einfügen, wg. 5er Schleife:\
where 0=(select count(*) from tmp_kennz K\
where K.katalog_id= '${row_kennzahl.id}'\
and (K.gruppe_1='${gruppe_1}' or K.gruppe_1 is null or trim(K.gruppe_1)='')\
);\
\
delete from tmp_betrag1;\
delete from tmp_betrag2;\
delete from tmp_kennz3;\
</#if>\
</#if> --wenn nicht dummy\
</#foreach>\
</#if>\
</#list>\
\
-- Wenn eine Kennzahl ausgewählt wird, sollen alle Ebenen angezeigt werden: Ebenen Filter wird ignoriert.\
<#if "<<Stat. Kennzahl>>" = "">\
/* delete from tmp_kennz where ebene > <<Filter bis Ebene>>; */\
</#if>\
\
/* delete from tmp_kennz where substring(gruppe_1 from 1 for 2) != <<Kennzahl Nr.>>; */\
\
update tmp_kennz set hochschule_str=(select name from sxc_hochschulen where hs_nr =LPAD(tmp_kennz.hs_nr::TEXT, 4, '0'));\
update tmp_kennz set zeitraum_str=(select min(druck) from kenn_semester where tid=tmp_kennz.zeitraum_int)\
where bezugsart in ('S','4');\
update tmp_kennz set zeitraum_str=(select name FROM aggregierung where kategorie='COB-Jahr' \
and ord=tmp_kennz.zeitraum_int)\
where bezugsart in ('J','A');\
update tmp_kennz set zeitraum_str=(select min(druck) from kenn_quartale where apnr=tmp_kennz.zeitraum_int)\
where bezugsart='Q';\
update tmp_kennz set zeitraum_str=zeitraum_int where zeitraum_str is null;\
\
update tmp_kennz set nextmask='18580&Hochschule=' || hs_nr || '&Quartal=' || substring('' || zeitraum_int from 5 for 1) || '&Haushaltsjahr=' || substring('' || zeitraum_int from 1 for 4) || '&Kostenarten=5' \
where stichtagsart='Kostenrechnung' \
and katalog_id in ('KOSTEN_ERLOESE_Q');\
\
update tmp_kennz set nextmask='18580&Hochschule=' || hs_nr || '&Quartal=' || substring('' || zeitraum_int from 5 for 1) || '&Haushaltsjahr=' || substring('' || zeitraum_int from 1 for 4) || '&Kostenarten=906' \
where stichtagsart='Kostenrechnung' \
and katalog_id in ('KOSTEN_PERSONAL_Q');\
update tmp_kennz set nextmask='18580&Hochschule=' || hs_nr || '&Quartal=' || substring('' || zeitraum_int from 5 for 1) || '&Haushaltsjahr=' || substring('' || zeitraum_int from 1 for 4) || '&Kostenarten=6' \
where stichtagsart='Kostenrechnung' \
and katalog_id in ('KOSTEN_SACH_Q');\
update tmp_kennz set nextmask='18580&Hochschule=' || hs_nr || '&Quartal=' || substring('' || zeitraum_int from 5 for 1) || '&Haushaltsjahr=' || substring('' || zeitraum_int from 1 for 4) || '&Kostenarten=7' \
where stichtagsart='Kostenrechnung' \
and katalog_id in ('KOSTEN_WEITERE_Q');\
update tmp_kennz set nextmask='18580&Hochschule=' || hs_nr || '&Quartal=' || substring('' || zeitraum_int from 5 for 1) || '&Haushaltsjahr=' || substring('' || zeitraum_int from 1 for 4) || '&Kostenarten=66' \
where stichtagsart='Kostenrechnung' \
and katalog_id in ('KOSTEN_ABSCHR_Q');\
update tmp_kennz set nextmask='18580&Hochschule=' || hs_nr || '&Quartal=' || substring('' || zeitraum_int from 5 for 1) || '&Haushaltsjahr=' || substring('' || zeitraum_int from 1 for 4) || '&Kostenarten=902' \
where stichtagsart='Kostenrechnung' \
and katalog_id in ('KOSTEN_KALK_MIETE_Q');\
\
--update tmp_kennz set nextmask='18600&Hochschule=' || hs_nr || '&cachingcontrol=clearMask' where stichtagsart='Kostenrechnung' and katalog_id in ('KOSTEN_LEHRE_Q','KOSTEN_FORSCHUNG_Q','KOSTEN_DIENST_Q');\
update tmp_kennz set nextmask='18600&Hochschule=' || hs_nr || '&Zeitraum=' || zeitraum_int || '&Haushaltsjahr=' || substring('' || zeitraum_int from 1 for 4) where stichtagsart='Kostenrechnung' and katalog_id in ('KOSTEN_LEHRE_SEK_Q');\
\
update tmp_kennz set nextmask='18620&Hochschule=' || hs_nr || '&Semester=' || zeitraum_int || '&K%F6pfe%20oder%20F%E4lle%20?=k' || '&bis Hochschulsemester=1' where stichtagsart='Studierendenstatistik' and katalog_id in ('STUD_1HS_KOEPFE');\
update tmp_kennz set nextmask='18620&Hochschule=' || hs_nr || '&Semester=' || zeitraum_int || '&K%F6pfe%20oder%20F%E4lle%20?=k' || '&bis Fachsemester=1' where stichtagsart='Studierendenstatistik' and katalog_id in ('STUD_1FS_KOEPFE');\
update tmp_kennz set nextmask='18620&Hochschule=' || hs_nr || '&Semester=' || zeitraum_int || '&K%F6pfe%20oder%20F%E4lle%20?=f' || '&bis Fachsemester=1' where stichtagsart='Studierendenstatistik' and katalog_id in ('STUD_1FS_FAELLE');\
update tmp_kennz set nextmask='18620&Hochschule=' || hs_nr || '&Semester=' || zeitraum_int || '&K%F6pfe%20oder%20F%E4lle%20?=f' || '&Fachkennz.=H' || '&bis Fachsemester=1' where stichtagsart='Studierendenstatistik' and katalog_id in ('STUD_1FS_HF_FAELLE');\
update tmp_kennz set nextmask='18620&Hochschule=' || hs_nr || '&Semester=' || zeitraum_int || '&K%F6pfe%20oder%20F%E4lle%20?=f' || '&Fachkennz.=N' || '&bis Fachsemester=1' where stichtagsart='Studierendenstatistik' and katalog_id in ('STUD_1FS_NF_FAELLE');\
update tmp_kennz set nextmask='18620&Hochschule=' || hs_nr || '&Semester=' || zeitraum_int || '&K%F6pfe%20oder%20F%E4lle%20?=k' where stichtagsart='Studierendenstatistik' and katalog_id in ('STUD_KOEPFE');\
update tmp_kennz set nextmask='18620&Hochschule=' || hs_nr || '&Semester=' || zeitraum_int || '&K%F6pfe%20oder%20F%E4lle%20?=f' where stichtagsart='Studierendenstatistik' and katalog_id in ('STUD_FAELLE');\
update tmp_kennz set nextmask='18620&Hochschule=' || hs_nr || '&Semester=' || zeitraum_int || '&K%F6pfe%20oder%20F%E4lle%20?=f' || '&Fachkennz.=H' where stichtagsart='Studierendenstatistik' and katalog_id in ('STUD_HF_FAELLE');\
update tmp_kennz set nextmask='18620&Hochschule=' || hs_nr || '&Semester=' || zeitraum_int || '&K%F6pfe%20oder%20F%E4lle%20?=f' || '&Fachkennz.=N' where stichtagsart='Studierendenstatistik' and katalog_id in ('STUD_NF_FAELLE');\
update tmp_kennz set nextmask='18620&Hochschule=' || hs_nr || '&Semester=' || zeitraum_int || '&K%F6pfe%20oder%20F%E4lle%20?=k' || '&in der RSZ=1' where stichtagsart='Studierendenstatistik' and katalog_id in ('STUD_RSZ_KOEPFE');\
update tmp_kennz set nextmask='18620&Hochschule=' || hs_nr || '&Semester=' || zeitraum_int || '&K%F6pfe%20oder%20F%E4lle%20?=f' || '&in der RSZ=1' where stichtagsart='Studierendenstatistik' and katalog_id in ('STUD_RSZ_FAELLE');\
update tmp_kennz set nextmask='18620&Hochschule=' || hs_nr || '&Semester=' || zeitraum_int || '&K%F6pfe%20oder%20F%E4lle%20?=f' || '&in der RSZ=1' || '&Fachkennz.=H' where stichtagsart='Studierendenstatistik' and katalog_id in ('STUD_RSZ_HF_FAELLE');\
update tmp_kennz set nextmask='18620&Hochschule=' || hs_nr || '&Semester=' || zeitraum_int || '&K%F6pfe%20oder%20F%E4lle%20?=f' || '&in der RSZ=1' || '&Fachkennz.=N' where stichtagsart='Studierendenstatistik' and katalog_id in ('STUD_RSZ_NF_FAELLE');\
update tmp_kennz set nextmask='18620&Hochschule=' || hs_nr || '&Semester=' || zeitraum_int || '&K%F6pfe%20oder%20F%E4lle%20?=k' || '&Geschlecht=2' where stichtagsart='Studierendenstatistik' and katalog_id in ('STUD_W_KOEPFE');\
update tmp_kennz set nextmask='18620&Hochschule=' || hs_nr || '&Semester=' || zeitraum_int || '&K%F6pfe%20oder%20F%E4lle%20?=k' || '&Geschlecht=1' where stichtagsart='Studierendenstatistik' and katalog_id in ('STUD_M_KOEPFE');\
update tmp_kennz set nextmask='18620&Hochschule=' || hs_nr || '&Semester=' || zeitraum_int || '&K%F6pfe%20oder%20F%E4lle%20?=k' where stichtagsart='Studierendenstatistik' and katalog_id in ('STUD_D_KOEPFE');\
update tmp_kennz set nextmask='18620&Hochschule=' || hs_nr || '&Semester=' || zeitraum_int || '&K%F6pfe%20oder%20F%E4lle%20?=k' || '&Hochschulzugangsber.=6' where stichtagsart='Studierendenstatistik' and katalog_id in ('STUD_BI_KOEPFE');\
update tmp_kennz set nextmask='18620&Hochschule=' || hs_nr || '&Semester=' || zeitraum_int || '&K%F6pfe%20oder%20F%E4lle%20?=k' || '&Hochschulzugangsber.=7' where stichtagsart='Studierendenstatistik' and katalog_id in ('STUD_BA_KOEPFE');\
\
update tmp_kennz set nextmask='18640&Hochschule=' || hs_nr || '&Semester=' || zeitraum_int || '&K%F6pfe%20oder%20F%E4lle%20?=k' where stichtagsart='Prüfungsstatistik' and katalog_id in ('ABSOLV_KOEPFE');\
update tmp_kennz set nextmask='18640&Hochschule=' || hs_nr || '&Semester=' || zeitraum_int || '&K%F6pfe%20oder%20F%E4lle%20?=f' where stichtagsart='Prüfungsstatistik' and katalog_id in ('ABSOLV_FAELLE');\
update tmp_kennz set nextmask='18640&Hochschule=' || hs_nr || '&Semester=' || zeitraum_int || '&K%F6pfe%20oder%20F%E4lle%20?=f' || '&Fachkennz.=H' where stichtagsart='Prüfungsstatistik' and katalog_id in ('ABSOLV_HF_FAELLE');\
update tmp_kennz set nextmask='18640&Hochschule=' || hs_nr || '&Semester=' || zeitraum_int || '&K%F6pfe%20oder%20F%E4lle%20?=f' || '&Fachkennz.=N' where stichtagsart='Prüfungsstatistik' and katalog_id in ('ABSOLV_NF_FAELLE');\
update tmp_kennz set nextmask='18640&Hochschule=' || hs_nr || '&Semester=' || zeitraum_int || '&K%F6pfe%20oder%20F%E4lle%20?=k' || '&Geschlecht=2' where stichtagsart='Prüfungsstatistik' and katalog_id in ('ABSOLV_W_KOEPFE');\
update tmp_kennz set nextmask='18640&Hochschule=' || hs_nr || '&Semester=' || zeitraum_int || '&K%F6pfe%20oder%20F%E4lle%20?=k' || '&Geschlecht=1' where stichtagsart='Prüfungsstatistik' and katalog_id in ('ABSOLV_M_KOEPFE');\
update tmp_kennz set nextmask='18640&Hochschule=' || hs_nr || '&Semester=' || zeitraum_int || '&K%F6pfe%20oder%20F%E4lle%20?=f' || '&Geschlecht=2' where stichtagsart='Prüfungsstatistik' and katalog_id in ('ABSOLV_W_FAELLE');\
update tmp_kennz set nextmask='18640&Hochschule=' || hs_nr || '&Semester=' || zeitraum_int || '&K%F6pfe%20oder%20F%E4lle%20?=f' || '&Geschlecht=1' where stichtagsart='Prüfungsstatistik' and katalog_id in ('ABSOLV_M_FAELLE');\
update tmp_kennz set nextmask='18640&Hochschule=' || hs_nr || '&Semester=' || zeitraum_int || '&K%F6pfe%20oder%20F%E4lle%20?=k' || '&Geschlecht=2' || '&Fachkennz.=H' where stichtagsart='Prüfungsstatistik' and katalog_id in ('ABSOLV_W_HF_KOEPFE');\
update tmp_kennz set nextmask='18640&Hochschule=' || hs_nr || '&Semester=' || zeitraum_int || '&K%F6pfe%20oder%20F%E4lle%20?=k' || '&Geschlecht=1' || '&Fachkennz.=H' where stichtagsart='Prüfungsstatistik' and katalog_id in ('ABSOLV_M_HF_KOEPFE');\
update tmp_kennz set nextmask='18640&Hochschule=' || hs_nr || '&Semester=' || zeitraum_int || '&K%F6pfe%20oder%20F%E4lle%20?=f' || '&Geschlecht=2' || '&Fachkennz.=H' where stichtagsart='Prüfungsstatistik' and katalog_id in ('ABSOLV_W_HF_FAELLE');\
update tmp_kennz set nextmask='18640&Hochschule=' || hs_nr || '&Semester=' || zeitraum_int || '&K%F6pfe%20oder%20F%E4lle%20?=f' || '&Geschlecht=1' || '&Fachkennz.=H' where stichtagsart='Prüfungsstatistik' and katalog_id in ('ABSOLV_M_HF_FAELLE');\
update tmp_kennz set nextmask='18640&Hochschule=' || hs_nr || '&Semester=' || zeitraum_int || '&K%F6pfe%20oder%20F%E4lle%20?=f' || '&Geschlecht=2' || '&Fachkennz.=N' where stichtagsart='Prüfungsstatistik' and katalog_id in ('ABSOLV_W_NF_FAELLE');\
update tmp_kennz set nextmask='18640&Hochschule=' || hs_nr || '&Semester=' || zeitraum_int || '&K%F6pfe%20oder%20F%E4lle%20?=f' || '&Geschlecht=1' || '&Fachkennz.=N' where stichtagsart='Prüfungsstatistik' and katalog_id in ('ABSOLV_M_NF_FAELLE');\
update tmp_kennz set nextmask='18640&Hochschule=' || hs_nr || '&Semester=' || zeitraum_int || '&K%F6pfe%20oder%20F%E4lle%20?=k' || '&Staatsangeh%F6rigkeit="000"' where stichtagsart='Prüfungsstatistik' and katalog_id in ('ABSOLV_D_KOEPFE');\
update tmp_kennz set nextmask='18640&Hochschule=' || hs_nr || '&Semester=' || zeitraum_int || '&K%F6pfe%20oder%20F%E4lle%20?=k' || '&Hochschulzugangsber.=6' where stichtagsart='Prüfungsstatistik' and katalog_id in ('ABSOLV_BI_KOEPFE');\
update tmp_kennz set nextmask='18640&Hochschule=' || hs_nr || '&Semester=' || zeitraum_int || '&K%F6pfe%20oder%20F%E4lle%20?=k' || '&Hochschulzugangsber.=7' where stichtagsart='Prüfungsstatistik' and katalog_id in ('ABSOLV_BA_KOEPFE');\
update tmp_kennz set nextmask='18640&Hochschule=' || hs_nr || '&Semester=' || zeitraum_int || '&K%F6pfe%20oder%20F%E4lle%20?=k' || '&Staatsangeh%F6rigkeit=Alle%20ohne%20Deutschland' where stichtagsart='Prüfungsstatistik' and katalog_id in ('ABSOLV_A_KOEPFE');\
update tmp_kennz set nextmask='18640&Hochschule=' || hs_nr || '&Semester=' || zeitraum_int || '&Promotion=1' where stichtagsart='Prüfungsstatistik' and katalog_id in ('PROMOTIONEN');\
update tmp_kennz set nextmask='18640&Hochschule=' || hs_nr || '&Semester=' || zeitraum_int || '&Promotion=1' || '&Geschlecht=2' where stichtagsart='Prüfungsstatistik' and katalog_id in ('PROMOTIONEN_W');\
update tmp_kennz set nextmask='18640&Hochschule=' || hs_nr || '&Semester=' || zeitraum_int || '&Promotion=1' || '&Geschlecht=1' where stichtagsart='Prüfungsstatistik' and katalog_id in ('PROMOTIONEN_M');\
\
\
<@selectintotmp select="hs_nr,hochschule_str,stichtagsart,beschreibung,erlaeuterung,zeitraum_int,\
zeitraum_str,ebene, ord_nr,gruppe_1,gruppe_2, round(betrag,2) as betrag,einheit,nextmask,nexttable,'' as stichtagsart2" source="tmp_kennz" target="tmp_kennz4">\
order by gruppe_1,zeitraum_int,gruppe_2,ord_nr\
</@selectintotmp> <@informixnolog/>;\
\
\
/* <#if <<Mit Erläuterung>> = "0">\
update tmp_kennz4 set erlaeuterung = '';\
</#if> */\
\
<@selectintotmp select="hs_nr,hochschule_str,stichtagsart,stichtagsart2,beschreibung,erlaeuterung,zeitraum_int,\
zeitraum_str,ebene, ord_nr,gruppe_1,gruppe_2, round(betrag,2) as betrag,einheit,nextmask,nexttable" source="tmp_kennz4" target="tmp_kennz2">\
order by ord_nr,zeitraum_int,gruppe_1,gruppe_2\
</@selectintotmp> <@informixnolog/>;\
\
drop table tmp_kennz;\
drop table tmp_kennz3;\
drop table tmp_kennz4;\
drop table tmp_kennz_basis;\
drop table tmp_betrag1;\
drop table tmp_betrag2;\
\
select ebene,hochschule_str,stichtagsart,\
--stichtagsart2,\
trim(string_not_null(gruppe_1)) || trim(string_not_null(gruppe_2)) || ' ' || beschreibung,\
--erlaeuterung,\
zeitraum_str,\
round(betrag,2),\
--einheit,\
nextmask,nexttable from tmp_kennz2\
;^XIL List\
drop_and_delete movable_columns sizable_columns horizontal_scrolling\
white_space_color=COLOR_WHITE fixed_columns=1\
min_heading_height=35\
Column CID=0 heading_text="Ebene" center_heading explanation="@@@kenn_ebene_stud@@@" \
row_selectable col_selectable heading_platform readonly\
width=10 text_size=10\
Column CID=0 heading_text="Hochschule" center_heading explanation="@@@kenn_hochschule@@@" \
row_selectable col_selectable heading_platform readonly\
width=15 text_size=10\
Column CID=1 heading_text="Statistische\\nKennzahl" center_heading explanation="@@@kenn_stat_kennzahl@@@"\
row_selectable col_selectable heading_platform readonly\
width=15 text_size=100\
Column CID=2 heading_text="Beschreibung" center_heading explanation="@@@kenn_beschreibung@@@"\
row_selectable col_selectable heading_platform readonly\
width=50\
Column CID=3 heading_text="Zeitraum" center_heading explanation="@@@kenn_zeitraum@@@"\
row_selectable col_selectable heading_platform readonly\
width=20\
Column CID=3 heading_text="Wert" center_heading explanation="@@@kenn_wert@@@"\
row_selectable col_selectable heading_platform readonly\
width=20\
Column CID=3 heading_text="Details\\nMaske" center_heading explanation="Details für diese Kennzahl"\
row_selectable col_selectable heading_platform readonly\
width=15\
Column CID=3 heading_text="Details\\nTabelle" center_heading explanation="Details für diese Kennzahl"\
row_selectable col_selectable heading_platform readonly\
width=15\
@@@^ ^ ^Gesamtüberblick der stat. Kennzahlen nach Hochschule und Art der Kennzahl.^drop table tmp_kennz2;^^1^600^400^^1^<<SQL>> select 'Achtung: Beim Kennzahlen-Bericht wird das Maskenfeld Stat. Kennzahl ignoriert, ggf. würden die Kennzahlen sonst nicht vollständig berechnet.' from xdummy where <<Bericht>>='KENN_BW' and (1=0 /* or <<Stat. Kennzahl>> != ''*/);^

1
src-modules/module/sxc/masken/47110_sachgeb_maske_bez.unl

@ -0,0 +1 @@ @@ -0,0 +1 @@
109^47110^

7
src-modules/module/sxc/schluesseltabellen/sichten_fuellen.sql

@ -29,7 +29,12 @@ select setval('sichten_tid_seq',(select max(tid) from sichten)); @@ -29,7 +29,12 @@ select setval('sichten_tid_seq',(select max(tid) from sichten));
"name":"Hochschulen Liste",
"quelle":"<<SQL>> select druck ,apnr, parent, ebene from sxc_hochschulen_liste order by 1",
"art":"SXC_Hochschulen-Sicht",
"sortnr":"50"}
"sortnr":"50"},
{"name_intern":"sxc_hochschulen_liste_stammdaten",
"name":"Hochschulen Liste Stammdaten",
"quelle":"<<SQL>> select druck ,apnr, parent, ebene from sxc_hochschulen_liste where apnr in (''1480'',''1140'',''1080'',''1090'',''1130'',''0080'',''1100'',''1110'',''1120'',''0121'',''0130'',''0140'') or ebene=0 order by 1",
"art":"SXC_Hochschulen-Sicht",
"sortnr":"60"}
] />

Loading…
Cancel
Save