diff --git a/src-modules/module/viz/schluesseltabellen/rpta_column_layout_sos_stud_abgrp_dashboard_fuellen.sql b/src-modules/module/viz/schluesseltabellen/rpta_column_layout_sos_stud_abgrp_dashboard_fuellen.sql new file mode 100644 index 0000000..990ffcd --- /dev/null +++ b/src-modules/module/viz/schluesseltabellen/rpta_column_layout_sos_stud_abgrp_dashboard_fuellen.sql @@ -0,0 +1,53 @@ +--freemarker template +<#include "RPTA-Makros"/> + + +select count(*) from systeminfo where tid=330; + + +<#assign rpta_column_layout = {"uniquename":"sos_stud_abgrp_dashboard", +"caption":"Studierende nach Abschlussgruppe", +"rpta_resultset":"sos_stud_astat_dashboard", +"whereclause":"", +"description":"Studierende nach Abschlussgruppe" +} + /> + +<#assign rpta_columns = [ +{"uniquename":"dim_studiengang_abschluss_grp_str", +"caption":"Abschlussgruppe", +"srcfieldname":"dim_studiengang_abschluss_grp_str", +"column_type":"physicalColumn", +"col_function":"", +"is_visible":"1", +"visible_size":"10", +"is_aggregate":"0", +"description":"Abschlussgruppe" +}, +{"uniquename":"summe", +"caption":"Anzahl der Studierenden", +"srcfieldname":"summe", +"column_type":"physicalColumn", +"col_function":"sum", +"is_visible":"1", +"visible_size":"5", +"is_aggregate":"1", +"description":"Summe der Studierenden" +}, +{"uniquename":"anteil", +"caption":"Anteil der Studierenden (in %)", +"srcfieldname":"", +"targetfieldname":"anteil", +"column_type":"computedColumn", +"col_function":"select (summe::float/(select G.summe from tmp_gesamt G)*100)::integer", +"is_visible":"1", +"visible_size":"5", +"is_aggregate":"0", +"description":"Anteil in % der Studierenden" +} +] + /> + +<#if rpta_installed==1> +<@rpta_column_layout_fuellen /> + diff --git a/src-modules/module/viz/schluesseltabellen/rpta_column_layout_sos_stud_bildungstyp_dashboard_fuellen.sql b/src-modules/module/viz/schluesseltabellen/rpta_column_layout_sos_stud_bildungstyp_dashboard_fuellen.sql new file mode 100644 index 0000000..5a60c6e --- /dev/null +++ b/src-modules/module/viz/schluesseltabellen/rpta_column_layout_sos_stud_bildungstyp_dashboard_fuellen.sql @@ -0,0 +1,54 @@ +--freemarker template +<#include "RPTA-Makros"/> + + +select count(*) from systeminfo where tid=330; + + +<#assign rpta_column_layout = {"uniquename":"sos_stud_bildungstyp_dashboard", +"caption":"Studierende Bildungstyp", +"rpta_resultset":"sos_stud_astat_dashboard", +"whereclause":"", +"description":"Studierende Bildungsinländer / -ausländer " +} + /> + +<#assign rpta_columns = [ +{"uniquename":"sos_stud_bildungstyp", +"caption":"Bildungsinländer / -ausländer", +"srcfieldname":"", +"targetfieldname":"sos_stud_bildungstyp", +"column_type":"physicalColumn", +"col_function":"", +"is_visible":"1", +"visible_size":"10", +"is_aggregate":"0", +"description":"Bildungsinländer / -ausländer" +}, +{"uniquename":"summe", +"caption":"Anzahl der Studierenden", +"srcfieldname":"summe", +"column_type":"physicalColumn", +"col_function":"sum", +"is_visible":"1", +"visible_size":"5", +"is_aggregate":"1", +"description":"Summe der Studierenden" +}, +{"uniquename":"anteil", +"caption":"Anteil der Studierenden (in %)", +"srcfieldname":"", +"targetfieldname":"anteil", +"column_type":"computedColumn", +"col_function":"select (summe::float/(select G.summe from tmp_gesamt G)*100)::integer", +"is_visible":"1", +"visible_size":"5", +"is_aggregate":"0", +"description":"Anteil in % der Studierenden" +} +] + /> + +<#if rpta_installed==1> +<@rpta_column_layout_fuellen /> + diff --git a/src-modules/module/viz/schluesseltabellen/rpta_column_layout_sos_stud_fak_dashboard_fuellen.sql b/src-modules/module/viz/schluesseltabellen/rpta_column_layout_sos_stud_fak_dashboard_fuellen.sql new file mode 100644 index 0000000..d79d719 --- /dev/null +++ b/src-modules/module/viz/schluesseltabellen/rpta_column_layout_sos_stud_fak_dashboard_fuellen.sql @@ -0,0 +1,63 @@ +--freemarker template +<#include "RPTA-Makros"/> + + +select count(*) from systeminfo where tid=330; + + +<#assign rpta_column_layout = {"uniquename":"sos_stud_fak_dashboard", +"caption":"Studierende nach Fakultät", +"rpta_resultset":"sos_stud_astat_dashboard", +"whereclause":"", +"description":"Studierende nach Fakultät" +} + /> + +<#assign rpta_columns = [ +{"uniquename":"dim_studiengang_fak", +"caption":"Fakultät (Schlüssel)", +"srcfieldname":"dim_studiengang_fb", +"column_type":"physicalColumn", +"col_function":"", +"is_visible":"1", +"visible_size":"10", +"is_aggregate":"0", +"description":"Fakultät (Schlüssel)" +}, +{"uniquename":"dim_studiengang_fak_str", +"caption":"Fakultät", +"srcfieldname":"dim_studiengang_fb_str", +"column_type":"lookupColumn", +"col_function":"select C.kurz from cifx C where C.key=90 and C.apnr=dim_studiengang_fb", +"is_visible":"1", +"visible_size":"10", +"is_aggregate":"0", +"description":"Fakultät (Name)" +}, +{"uniquename":"summe", +"caption":"Anzahl der Studierenden", +"srcfieldname":"summe", +"column_type":"physicalColumn", +"col_function":"sum", +"is_visible":"1", +"visible_size":"5", +"is_aggregate":"1", +"description":"Summe der Studierenden" +}, +{"uniquename":"anteil", +"caption":"Anteil der Studierenden (in %)", +"srcfieldname":"", +"targetfieldname":"anteil", +"column_type":"computedColumn", +"col_function":"select (summe::float/(select G.summe from tmp_gesamt G)*100)::integer", +"is_visible":"1", +"visible_size":"5", +"is_aggregate":"0", +"description":"Anteil in % der Studierenden" +} +] + /> + +<#if rpta_installed==1> +<@rpta_column_layout_fuellen /> + diff --git a/src-modules/module/viz/schluesseltabellen/rpta_column_layout_sos_stud_geschl_dashboard_fuellen.sql b/src-modules/module/viz/schluesseltabellen/rpta_column_layout_sos_stud_geschl_dashboard_fuellen.sql index 13300df..8e52ea4 100644 --- a/src-modules/module/viz/schluesseltabellen/rpta_column_layout_sos_stud_geschl_dashboard_fuellen.sql +++ b/src-modules/module/viz/schluesseltabellen/rpta_column_layout_sos_stud_geschl_dashboard_fuellen.sql @@ -29,9 +29,9 @@ select count(*) from systeminfo where tid=330; "is_aggregate":"0", "description":"Geschlecht" }, -{"uniquename":"log_geschlecht_str", +{"uniquename":"geschlecht_str", "caption":"Geschlecht", -"srcfieldname":"", +"srcfieldname":"geschlecht_str", "targetfieldname":"geschlecht_str", "column_type":"physicalColumn", "col_function":"", diff --git a/src-modules/module/viz/schluesseltabellen/rpta_column_layout_sos_stud_hzbstaat_dashboard_fuellen.sql b/src-modules/module/viz/schluesseltabellen/rpta_column_layout_sos_stud_hzbstaat_dashboard_fuellen.sql new file mode 100644 index 0000000..c4fc41c --- /dev/null +++ b/src-modules/module/viz/schluesseltabellen/rpta_column_layout_sos_stud_hzbstaat_dashboard_fuellen.sql @@ -0,0 +1,45 @@ +--freemarker template +<#include "RPTA-Makros"/> + + +select count(*) from systeminfo where tid=330; + + +<#assign rpta_column_layout = +{"uniquename":"sos_stud_hzb_staat_dashboard", +"caption":"Studierende nach Staat der HZB", +"rpta_resultset":"sos_stud_astat_dashboard", +"whereclause":"", +"description":"Studierende nach Staat der HZB" +} + /> + +<#assign rpta_columns = [ +{"uniquename":"hzbstaat_iso3", +"caption":"Staat der HZB", +"srcfieldname":"hzbstaat_iso3", +"targetfieldname":"hzbstaat_iso3", +"column_type":"physicalColumn", +"col_function":"", +"is_visible":"1", +"format_code":"", +"visible_size":"5", +"is_aggregate":"0", +"description":"Staat (ISO Code)" +}, +{"uniquename":"summe", +"caption":"Anzahl der Studierenden", +"srcfieldname":"summe", +"column_type":"physicalColumn", +"col_function":"sum", +"is_visible":"1", +"visible_size":"5", +"is_aggregate":"1", +"description":"Summe der Studierenden" +} +] + /> + +<#if rpta_installed==1> +<@rpta_column_layout_fuellen /> + diff --git a/src-modules/module/viz/schluesseltabellen/rpta_column_layout_sos_stud_region_dashboard_fuellen.sql b/src-modules/module/viz/schluesseltabellen/rpta_column_layout_sos_stud_region_dashboard_fuellen.sql new file mode 100644 index 0000000..237afa6 --- /dev/null +++ b/src-modules/module/viz/schluesseltabellen/rpta_column_layout_sos_stud_region_dashboard_fuellen.sql @@ -0,0 +1,246 @@ +--freemarker template + + +select count(*) from systeminfo where tid=330; + + +<#assign rpta_column_layout = +{"uniquename":"sos_stud_hzb_bland_dashboard", +"caption":"Studierende nach HZB-Bundesland", +"rpta_resultset":"sos_stud_astat_dashboard", +"whereclause":"", +"description":"Studierende nach HZB-Bundesland" +} + /> + +<#assign rpta_columns = [ +{"uniquename":"hzb_bland", +"caption":"Bundesland (HZB)", +"srcfieldname":"hzb_bland", +"targetfieldname":"hzb_bland", +"column_type":"lookupColumn", +"col_function":"", +"is_visible":"1", +"format_code":"", +"visible_size":"5", +"is_aggregate":"0", +"description":"Bundesland (HZB)" +}, +{"uniquename":"summe", +"caption":"Anzahl der Studierenden", +"srcfieldname":"summe", +"column_type":"physicalColumn", +"col_function":"sum", +"is_visible":"1", +"visible_size":"5", +"is_aggregate":"1", +"description":"Summe der Studierenden" +} +] + /> + +<#if rpta_installed==1> + ---ab hier nicht mehr ändern: + +CREATE temp TABLE tmp_rpta_column +( + uniquename varchar(255) NOT NULL, + caption varchar(255), + srcfieldname varchar(255), + targetfieldname varchar(255), + column_type integer, + col_function text, + is_visible smallint, + visible_size smallint, + is_aggregate smallint, + resultset_id integer, + sortnr integer, + description TEXT +); + +CREATE temp TABLE tmp_rpta_column_layout +( + uniquename varchar(255) NOT NULL, + caption varchar(255), + resultset_id integer, + whereclause text, + description text +); + +insert into tmp_rpta_column_layout( +resultset_id, +uniquename, +caption, +whereclause, + description +) +select tid, +'${rpta_column_layout.uniquename}', +'${rpta_column_layout.caption}', +'${rpta_column_layout.whereclause}', +'${rpta_column_layout.description}' +FROM rpta_resultset +where uniquename='${rpta_column_layout.rpta_resultset}'; + +<#assign sortnr=0 /> +<#foreach column in rpta_columns> +<#assign sortnr=sortnr +1 /> + +INSERT INTO tmp_rpta_column +(resultset_id, + uniquename, + caption, + srcfieldname, + targetfieldname, + column_type, + col_function, + is_visible, + visible_size, + is_aggregate, + sortnr, + description + ) +select R.tid, +'${column.uniquename}', +'${column.caption}', +'${column.srcfieldname}', +<#if !column.targetfieldname?exists || column.targetfieldname=="">null::varchar <#else>'${column.targetfieldname}' , +T.tid as column_type, +'${column.col_function}', +${column.is_visible}, +${column.visible_size}, +${column.is_aggregate}, +${sortnr*10}, +'${column.description}' +FROM rpta_resultset R, rpta_column_type T +where R.uniquename='${rpta_column_layout.rpta_resultset}' +and T.uniquename='${column.column_type}'; + + + + +select * into temp tmp_rpta_column2layout +from rpta_column2layout +where layout_id in (select L.tid +from rpta_column_layout L,rpta_resultset R +where R.tid=L.resultset_id +and R.uniquename='${rpta_column_layout.rpta_resultset}' +and L.uniquename='${rpta_column_layout.uniquename}' +) +; + +select * into temp tmp_rpta_column_layout_target +from rpta_column_layout +where resultset_id in (select tid +FROM rpta_resultset +where uniquename='${rpta_column_layout.rpta_resultset}') +and uniquename in (select uniquename from tmp_rpta_column_layout) +; + +insert into rpta_column_layout +(uniquename, + caption, + resultset_id, + whereclause, + description) + select uniquename, + caption, + resultset_id, + whereclause, + description +FROM tmp_rpta_column_layout T +where 0=(select count(*) from tmp_rpta_column_layout_target T2 +where T.uniquename=T2.uniquename); + +drop table tmp_rpta_column_layout_target; + +delete from rpta_column2layout +where layout_id in (select L.tid +from rpta_column_layout L,rpta_resultset R +where R.tid=L.resultset_id +and R.uniquename='${rpta_column_layout.rpta_resultset}' +and L.uniquename='${rpta_column_layout.uniquename}' +) +; + +select * into temp tmp_rpta_column2 +from tmp_rpta_column T +where (resultset_id,uniquename) not in +(select resultset_id,uniquename from rpta_column); + +INSERT INTO rpta_column +(resultset_id, + uniquename, + caption, + srcfieldname, + targetfieldname, + column_type, + col_function, + is_aggregate, + description, + custom + ) + select +resultset_id, + uniquename, + caption, + srcfieldname, + targetfieldname, + column_type, + col_function, + is_aggregate, + description, + 0 as custom +from tmp_rpta_column2; + +--evtl. neuen Satz einfügen, dann alle updaten + +update rpta_column set ( caption, + srcfieldname, + targetfieldname, + column_type, + col_function, + is_aggregate, + description) + = (select caption, + srcfieldname, + targetfieldname, + column_type, + col_function, + is_aggregate, + description + from tmp_rpta_column T + where T.resultset_id=rpta_column.resultset_id + and T.uniquename=rpta_column.uniquename) + where custom=0 + and (resultset_id,uniquename) in +(select T.resultset_id,T.uniquename +from tmp_rpta_column T) +; + +drop table tmp_rpta_column2; + +insert into rpta_column2layout(column_id, + layout_id, + sortnr, + is_visible, + visible_size, + caption, + description) +select C.tid as column_id, + L.tid as layout_id, + T.sortnr, + T.is_visible, + T.visible_size, + T.caption, + T.description +FROM rpta_column C, rpta_column_layout L, tmp_rpta_column T +where C.uniquename=T.uniquename +and C.resultset_id=T.resultset_id +and L.uniquename='${rpta_column_layout.uniquename}' +and L.resultset_id=T.resultset_id + ; +drop table tmp_rpta_column; +drop TABLE tmp_rpta_column_layout; +drop TABLE tmp_rpta_column2layout; + diff --git a/src-modules/module/viz/schluesseltabellen/rpta_column_layout_sos_stud_zeitreihe_dashboard_fuellen.sql b/src-modules/module/viz/schluesseltabellen/rpta_column_layout_sos_stud_zeitreihe_dashboard_fuellen.sql new file mode 100644 index 0000000..7b109fb --- /dev/null +++ b/src-modules/module/viz/schluesseltabellen/rpta_column_layout_sos_stud_zeitreihe_dashboard_fuellen.sql @@ -0,0 +1,60 @@ +--freemarker template +<#include "RPTA-Makros"/> + + +select count(*) from systeminfo where tid=330; + + +<#assign rpta_column_layout = +{"uniquename":"sos_stud_sem_dashboard", +"caption":"Studierende nach Semester", +"rpta_resultset":"sos_stud_astat_dashboard", +"whereclause":"", +"description":"Studierende nach Semester", +"is_virtual":1 +} + /> + +<#assign rpta_columns = [ +{"uniquename":"sem_rueck_beur_ein", +"caption":"Semester", +"srcfieldname":"sem_rueck_beur_ein", +"targetfieldname":"sem_rueck_beur_ein", +"column_type":"physicalColumn", +"col_function":"", +"is_visible":"0", +"format_code":"TEXT", +"visible_size":"5", +"is_aggregate":"0", +"description":"" +}, +{"uniquename":"semester_str", +"caption":"Semester Name", +"srcfieldname":"sem_rueck_beur_ein", +"targetfieldname":"semester_str", +"column_type":"logicalColumn", +"col_function":"(case when substring(sem_rueck_beur_ein::varchar from 5 for 1)=''2'' then ''WS '' || substring(sem_rueck_beur_ein::varchar from 3 for 2) || ''/'' || lpad('''' || val(substring(sem_rueck_beur_ein::varchar from 3 for 2))+1,2,''0'') +when substring(sem_rueck_beur_ein::varchar from 5 for 1)=''1'' then ''SS '' || substring(sem_rueck_beur_ein::varchar from 3 for 2) +else '''' end)", +"is_visible":"1", +"format_code":"", +"visible_size":"5", +"is_aggregate":"0", +"description":"" +}, +{"uniquename":"summe", +"caption":"Anzahl der Studierenden", +"srcfieldname":"summe", +"column_type":"physicalColumn", +"col_function":"sum", +"is_visible":"1", +"visible_size":"5", +"is_aggregate":"1", +"description":"Summe der Studierenden" +} +] + /> + +<#if rpta_installed==1> +<@rpta_column_layout_fuellen /> +