Browse Source

Upload/Unload von Beständen in SuperX-connect #8

master
Daniel Quathamer 3 days ago
parent
commit
6bfb32c8f3
  1. 16
      src-modules/module/etl/masken/42000_felderinfo.unl
  2. 1
      src-modules/module/etl/masken/42000_masken_felder_bez.unl
  3. 28
      src-modules/module/etl/schluesseltabellen/create_load_etl_sxc_stud_zugang_abgang_aggr.sql
  4. 1
      src-modules/module/etl/schluesseltabellen/etl_manager_tab.unl
  5. 39
      src-modules/module/etl/schluesseltabellen/etl_step_fuellen.sql
  6. 6
      src-modules/module/etl/schluesseltabellen/fm_templates.unl
  7. 2
      src-modules/module/etl/schluesseltabellen/trans_rpta_column_layout.sql
  8. 42
      src-modules/module/etl/schluesseltabellen/trans_sxc_stud_zugang_abgang_aggr.sql
  9. 1
      superx/edit/etl/etl_manager.jsp

16
src-modules/module/etl/masken/42000_felderinfo.unl

@ -38,3 +38,19 @@ select null::char(1),'Keine Auwahl möglich' from xdummy\ @@ -38,3 +38,19 @@ select null::char(1),'Keine Auwahl möglich' from xdummy\
\
/* <<just a comment to make it a modal dialog>> */^hidden^^
42009^Komponente^17^0^0^130^100^1^integer^30^0^1^<<SQL>> select tid,name from systeminfo order by 2^ ^ ^
42010^Hochschule^17^0^0^130^100^1^integer^30^0^1^<<SQL>> --freemarker template\
<sqlvars>\
<sqlvar name="SXC_installed">\
select 1 from xdummy where 0 &lt; (select count(*) from db_version where his_system='sxc')\
union select 0 from xdummy where \
0 = (select count(*) from db_version where his_system='sxc');\
</sqlvar>\
</sqlvars>\
\
<#if SXC_installed==1>\
select apnr,kurztext from sxc_hochschulen_liste order by 2;\
<#else>\
select null::char(1),'Keine Auwahl möglich' from xdummy\
</#if>\
\
/* <<just a comment to make it a modal dialog>> */^hidden^ ^

1
src-modules/module/etl/masken/42000_masken_felder_bez.unl

@ -8,3 +8,4 @@ @@ -8,3 +8,4 @@
42000^42007^
42000^42008^
42000^42009^
42000^42010^

28
src-modules/module/etl/schluesseltabellen/create_load_etl_sxc_stud_zugang_abgang_aggr.sql

@ -0,0 +1,28 @@ @@ -0,0 +1,28 @@
--Freemarker Template
--used in etl-job qa_project_upload
<#if SQLdialect='Postgres'>
drop table if exists tmp_sxc_stud_zugang_abgang_aggr;
</#if>
CREATE TABLE tmp_sxc_stud_zugang_abgang_aggr (
hs_nr char(10) NOT NULL,
jahr integer NOT NULL,
anfangsbestand integer,
zugang integer,
zugang_ersteinschr integer,
abgang integer,
abgang_hauptpr integer,
abgang_ohne_hauptpr integer,
hauptpr_summe integer,
hauptpr_bleibt integer,
endbestand integer,
datenstand date
);

1
src-modules/module/etl/schluesseltabellen/etl_manager_tab.unl

@ -2,3 +2,4 @@ @@ -2,3 +2,4 @@
2^SICHT^Sichten^0^sichten_unload^sichten_upload^SICHTEN_TID^42000^42004^1^
3^QA_PROJECT^Testfälle^0^qa_project_unload^qa_project_upload^QA_PROJECT_ID^42000^42007^1^
4^RPTA_COLUMN_LAYOUT^Spaltenlayouts^0^rpta_column_layout_unload^rpta_column_layout_upload^RPTA_COLUMN_LAYOUT_TID^42000^42008^1^
5^SXC_STUD^SXC Studierendenströme^0^sxc_stud_zugang_abgang_aggr_unload^sxc_stud_zugang_abgang_aggr_upload^HS_NR^42000^42010^1^

39
src-modules/module/etl/schluesseltabellen/etl_step_fuellen.sql

@ -12,7 +12,9 @@ @@ -12,7 +12,9 @@
{"uniquename":"sos_gewichtung_unload", "name":"Gewichtungen entladen", "systeminfo_id":270 ,"logfile":""},
{"uniquename":"qa_project_unload", "name":"Testfallprojekte entladen", "systeminfo_id":260 ,"logfile":""},
{"uniquename":"rpta_column_layout_unload", "name":"Spaltenlayout entladen", "systeminfo_id":330 ,"logfile":""},
{"uniquename":"rpta_column_layout_upload", "name":"Spaltenlayout hochladen", "systeminfo_id":330 ,"logfile":""}
{"uniquename":"rpta_column_layout_upload", "name":"Spaltenlayout hochladen", "systeminfo_id":330 ,"logfile":""},
{"uniquename":"sxc_stud_zugang_abgang_aggr_unload", "name":"Studierendenströme für SXC entladen", "systeminfo_id":360 ,"logfile":""},
{"uniquename":"sxc_stud_zugang_abgang_aggr_upload", "name":"Studierendenströme für SXC hochladen", "systeminfo_id":360 ,"logfile":""}
] />
@ -51,6 +53,16 @@ @@ -51,6 +53,16 @@
{"etl_job":"rpta_column_layout_upload","param_name":"RPTA_COLUMN_LAYOUT_TID", "name":"ID", "param_default":""},
{"etl_job":"rpta_column_layout_upload","param_name":"PATH_TO_INPUTFILE", "name":"Eingabedatei", "param_default":""},
{"etl_job":"rpta_column_layout_upload","param_name":"FORMAT", "name":"Format", "param_default":"XML"},
{"etl_job":"sxc_stud_zugang_abgang_aggr_unload","param_name":"HS_NR", "name":"Hochschule", "param_default":""},
{"etl_job":"sxc_stud_zugang_abgang_aggr_unload","param_name":"PATH_TO_OUTPUTFILE", "name":"Ausgabedatei", "param_default":"$SUPERX_DIR/db/masken/rpta_column_layout_$RPTA_COLUMN_LAYOUT_UNIQUENAME.xml"},
{"etl_job":"sxc_stud_zugang_abgang_aggr_unload","param_name":"FORMAT", "name":"Ausgabeformat", "param_default":"XML"},
{"etl_job":"sxc_stud_zugang_abgang_aggr_upload","param_name":"SYSTEMINFO_ID", "name":"Komponente", "param_default":""},
{"etl_job":"sxc_stud_zugang_abgang_aggr_upload","param_name":"HS_NR", "name":"ID", "param_default":""},
{"etl_job":"sxc_stud_zugang_abgang_aggr_upload","param_name":"PATH_TO_INPUTFILE", "name":"Eingabedatei", "param_default":""},
{"etl_job":"sxc_stud_zugang_abgang_aggr_upload","param_name":"FORMAT", "name":"Format", "param_default":"XML"},
{"etl_job":"sos_gewichtung_unload","param_name":"SYSTEMINFO_ID", "name":"Komponente", "param_default":""},
{"etl_job":"sos_gewichtung_unload","param_name":"PATH_TO_OUTPUTFILE", "name":"Ausgabedatei", "param_default":"$SUPERX_DIR/db/db/module/sos/schluesseltabellen/sichten_$SYSTEMINFO_ID.xml"},
@ -132,7 +144,15 @@ @@ -132,7 +144,15 @@
{"etl_job":"rpta_column_layout_upload", "uniquename":"upload_rpta_column_layout_tab", "name":"tmp_rpta_column_layout hochladen", "type":"LOAD" },
{"etl_job":"rpta_column_layout_upload", "uniquename":"upload_rpta_column_tab", "name":"tmp_rpta_column hochladen", "type":"LOAD" },
{"etl_job":"rpta_column_layout_upload", "uniquename":"upload_rpta_column2layout_tab", "name":"tmp_rpta_column2layout hochladen", "type":"LOAD" },
{"etl_job":"rpta_column_layout_upload", "uniquename":"trans_rpta_column_layout", "name":"rpta_column_layout füllen", "type":"DOSQL" }
{"etl_job":"rpta_column_layout_upload", "uniquename":"trans_rpta_column_layout", "name":"rpta_column_layout füllen", "type":"DOSQL" },
{"etl_job":"sxc_stud_zugang_abgang_aggr_unload", "uniquename":"sxc_stud_zugang_abgang_aggr_unload_ges", "name":"Studierendenströme für SXC entladen", "type":"MSG"},
{"etl_job":"sxc_stud_zugang_abgang_aggr_unload", "uniquename":"unload_sxc_stud_zugang_abgang_aggr_tab", "name":"sxc_stud_zugang_abgang_aggr entladen", "type":"UNLOAD", "parent":"sxc_stud_zugang_abgang_aggr_unload_ges"},
{"etl_job":"sxc_stud_zugang_abgang_aggr_upload", "uniquename":"create_tmp_sxc_stud_zugang_abgang_aggr", "name":"Tabelle tmp_sxc_stud_zugang_abgang_aggr erzeugen", "type":"DOSQL" },
{"etl_job":"sxc_stud_zugang_abgang_aggr_upload", "uniquename":"upload_sxc_stud_zugang_abgang_aggr_tab", "name":"tmp_sxc_stud_zugang_abgang_aggr hochladen", "type":"LOAD" },
{"etl_job":"sxc_stud_zugang_abgang_aggr_upload", "uniquename":"trans_sxc_stud_zugang_abgang_aggr", "name":"sxc_stud_zugang_abgang_aggr füllen", "type":"DOSQL" }
] />
<#assign etl_step_properties = [
@ -279,7 +299,20 @@ @@ -279,7 +299,20 @@
{"etl_step":"unload_qa_mask_execution_tab","prop_name":"select_stmt", "prop_value":"SELECT E.name,E.userinfo_id,E.maskeninfo_id,E.is_active,E.stylesheet_id,E.contenttype,E.output_filename,E.systeminfo_id,E.uniquename FROM qa_mask_execution E where E.tid in (select P.mask_execution_id from qa_mask_execution2project P where P.project_id= $QA_PROJECT_ID ) order by 1;" },
{"etl_step":"unload_qa_mask_execution_assert_tab","prop_name":"select_stmt", "prop_value":"SELECT E.uniquename,A.rownr,A.colnr,A.result_value_min,A.result_value_max,A.is_active,A.caption FROM qa_mask_execution E, qa_mask_execution_assert A where E.tid=A.mask_execution_id and E.tid in (select P.mask_execution_id from qa_mask_execution2project P where P.project_id= $QA_PROJECT_ID ) order by 1;" },
{"etl_step":"unload_qa_mask_execution2project_tab","prop_name":"select_stmt", "prop_value":"SELECT E.uniquename as mask_execution_uniquename,P.uniquename as project_uniquename,DP.issue_id FROM qa_mask_execution2project DP, qa_mask_execution E, qa_project P where DP.mask_execution_id=E.tid and DP.project_id=P.tid and DP.project_id= $QA_PROJECT_ID order by 1;" }
{"etl_step":"unload_qa_mask_execution2project_tab","prop_name":"select_stmt", "prop_value":"SELECT E.uniquename as mask_execution_uniquename,P.uniquename as project_uniquename,DP.issue_id FROM qa_mask_execution2project DP, qa_mask_execution E, qa_project P where DP.mask_execution_id=E.tid and DP.project_id=P.tid and DP.project_id= $QA_PROJECT_ID order by 1;" },
{"etl_step":"unload_sxc_stud_zugang_abgang_aggr_ges","prop_name":"msg", "prop_value":"Entlade Studierendenströme für SXC $HS_NR" },
{"etl_step":"unload_sxc_stud_zugang_abgang_aggr_tab","prop_name":"select_stmt", "prop_value":"SELECT A.* from sxc_stud_zugang_abgang_aggr A where val(A.hs_nr) in ( $HS_NR ) order by 1;" },
{"etl_step":"create_tmp_sxc_stud_zugang_abgang_aggr","prop_name":"PATH_TO_INPUTFILE", "prop_value":"$SUPERX_DIR/db/module/etl/schluesseltabellen/create_load_etl_sxc_stud_zugang_abgang_aggr.sql" },
{"etl_step":"upload_sxc_stud_zugang_abgang_aggr_tab","prop_name":"target_table", "prop_value":"tmp_sxc_stud_zugang_abgang_aggr" },
{"etl_step":"upload_sxc_stud_zugang_abgang_aggr_tab","prop_name":"format", "prop_value":"xml" },
{"etl_step":"upload_sxc_stud_zugang_abgang_aggr_tab","prop_name":"search_path", "prop_value":"/etlAction/unload [@name=\"unload_sxc_stud_zugang_abgang_aggr_tab\"]/rs/row" },
{"etl_step":"upload_sxc_stud_zugang_abgang_aggr_tab","prop_name":"path_to_inputfile", "prop_value":"$PATH_TO_INPUTFILE" },
{"etl_step":"trans_sxc_stud_zugang_abgang_aggr","prop_name":"PATH_TO_INPUTFILE", "prop_value":"$SUPERX_DIR/db/module/etl/schluesseltabellen/trans_sxc_stud_zugang_abgang_aggr.sql" }

6
src-modules/module/etl/schluesseltabellen/fm_templates.unl

@ -1,4 +1,4 @@ @@ -1,4 +1,4 @@
17^ETL_MAKROS^<#macro ETL_STEPS_FUELLEN>\
157^ETL_MAKROS^<#macro ETL_STEPS_FUELLEN>\
<@etl_steps_def_check/>\
\
<#-- Hinterlegen von Defaultwerten für step_properties -->\
@ -423,7 +423,7 @@ drop table tmp_etl_job_param;\ @@ -423,7 +423,7 @@ drop table tmp_etl_job_param;\
drop table tmp_etl_step_property;\
drop table tmp_etl_step_relation;\
\
\
<#if testfaelle?exists && testfaelle?has_content>\
<#foreach testfall in testfaelle>\
select 'testfall ${testfall.testcase}: ERFOLG'\
from xdummy\
@ -436,7 +436,7 @@ where ${testfall.assertion}!=(${testfall.sql})\ @@ -436,7 +436,7 @@ where ${testfall.assertion}!=(${testfall.sql})\
\
\
</#foreach> --Ende Testfälle\
\
</#if>\
<#foreach etl_step_property in etl_step_properties>\
update etl_step_property set prop_value='${etl_step_property.prop_value}' where prop_name='${etl_step_property.prop_name}' and etl_step_id=(select S.tid from etl_step S where S.uniquename='${etl_step_property.etl_step}');\
</#foreach>\

2
src-modules/module/etl/schluesseltabellen/trans_rpta_column_layout.sql

@ -130,7 +130,7 @@ INSERT INTO tmp_rpta_column @@ -130,7 +130,7 @@ INSERT INTO tmp_rpta_column
)
select R.tid,
'${column.uniquename}',
<#if column.caption?exists>
<#if column.caption?exists && column.caption !="">
'${column.caption}',
<#else>
'${column.caption_der_spalte}',

42
src-modules/module/etl/schluesseltabellen/trans_sxc_stud_zugang_abgang_aggr.sql

@ -0,0 +1,42 @@ @@ -0,0 +1,42 @@
--freemarker template
<#include "SQL_lingua_franca"/>
<#include "SuperX_general"/>
<#include "RPTA-Makros"/>
delete from sxc_stud_zugang_abgang_aggr
where hs_nr in (select distinct M.hs_nr
from tmp_sxc_stud_zugang_abgang_aggr M)
;
insert into sxc_stud_zugang_abgang_aggr(
hs_nr,
jahr,
anfangsbestand,
zugang,
zugang_ersteinschr,
abgang,
abgang_hauptpr,
abgang_ohne_hauptpr,
hauptpr_summe,
hauptpr_bleibt,
endbestand,
datenstand)
select
hs_nr,
jahr,
anfangsbestand,
zugang,
zugang_ersteinschr,
abgang,
abgang_hauptpr,
abgang_ohne_hauptpr,
hauptpr_summe,
hauptpr_bleibt,
endbestand,
datenstand
from tmp_sxc_stud_zugang_abgang_aggr
;
drop table tmp_sxc_stud_zugang_abgang_aggr;

1
superx/edit/etl/etl_manager.jsp

@ -144,6 +144,7 @@ var fldElem=document.getElementById(mydiv); @@ -144,6 +144,7 @@ var fldElem=document.getElementById(mydiv);
function EtlMaskeComboLaden(fname,zeilenanzahl, caption,maskentid) {
var editurl="/superx/edit/kern/maske_combo_laden.jsp?tid="+maskentid+ "&Feldname="+getEncoded(fname);
editurl +="&referrerForm=saveEtlXml";
editurl +="&zeilenanzahl="+zeilenanzahl+"&params=";
neu2=window.open(editurl,"_blank","directories=no,location=no,menubar=no,scrollbars=yes,resizable=yes,toolbar=no,width=800,height=660");
return false;

Loading…
Cancel
Save