diff --git a/src-modules/module/rpta/masken/48490_felderinfo.unl b/src-modules/module/rpta/masken/48490_felderinfo.unl index ce99020..4e2a193 100644 --- a/src-modules/module/rpta/masken/48490_felderinfo.unl +++ b/src-modules/module/rpta/masken/48490_felderinfo.unl @@ -6,11 +6,11 @@ where sem_beginn >= today()-(182*${K_VIZ_ZEITR_SEM_ANZ} )\ \ and sem_beginn <=today()\ order by tid DESC;^Eintrag^<> select tid,eintrag from semester where today()-(4*365) between sem_beginn and sem_ende;^ -48492^Stichtag^1^350^-1^140^100^1^sql^30^0^13^<> select tid, name from sos_stichtag where stichtagsart='Prüfungen';^^<> select tid, name from sos_stichtag where stichtagsart='Prüfungen' and appl_key='2';^ -48493^Staatsangehörigkeit^36^0^0^130^150^10^char^30^0^12^<> select tid,name,sortnr from sichten where art='SOS-Staaten-Sicht' order by 3,2;^hidden^^ -48494^Prüfungsstatus^13^0^0^140^70^1^char^30^0^1^<> select apnr,druck from sos_k_pstatus;^^<> select apnr,druck from sos_k_pstatus where apnr='BE';^ -48495^Fächer^9^0^0^130^150^6^char^30^0^12^<> select tid,name,sortnr from sichten where art='Fächer-Sicht' order by 3,2;^^^ -48497^bis Fachsemester^35^350^-1^140^100^1^integer^30^0^13^^^^ +48492^Stichtag^1^350^-1^140^100^1^sql^30^0^13^<> select tid, name from sos_stichtag where stichtagsart='Prüfungen';^ ^<> select tid, name from sos_stichtag where stichtagsart='Prüfungen' and appl_key='2';^ +48493^Staatsangehörigkeit^36^0^0^130^150^10^char^30^0^12^<> select tid,name,sortnr from sichten where art='SOS-Staaten-Sicht' order by 3,2;^hidden^ ^ +48494^Prüfungsstatus^13^0^0^140^70^1^char^30^0^1^<> select apnr,druck from sos_k_pstatus;^ ^<> select apnr,druck from sos_k_pstatus where apnr='BE';^ +48495^Fächer^9^0^0^130^150^6^char^30^0^12^<> select tid,name,sortnr from sichten where art='Fächer-Sicht' order by 3,2;^ ^ ^ +48497^bis Fachsemester^35^350^-1^140^100^1^integer^30^0^13^^ ^ ^ 48499^Bis Semester^4^350^-1^140^80^1^integer^30^0^1^<> --freemarker template \ select tid, eintrag from semester \ <#if K_VIZ_ZEITR_SEM_ANZ?exists>\ @@ -18,23 +18,23 @@ where sem_beginn >= today()-(182*${K_VIZ_ZEITR_SEM_ANZ} )\ \ and sem_beginn <=today()\ order by tid DESC;^Eintrag^<> select tid,eintrag from semester where today() between sem_beginn and sem_ende;^ -48501^Geschlecht^37^0^0^140^80^1^integer^30^0^1^<> SELECT apnr,druck FROM cif where key = 9003 and apnr between 1 and 4 order by 1;^^^ -48503^Studiengang^6^0^0^140^150^50^char^30^0^12^<> select tid,name,sortnr from sichten where art in ('SOS-Kostenstellen-Sicht', 'SOS-Studiengang-Sicht') order by 3,2;^^^ -48504^Jahr^110^0^0^140^80^1^integer^30^0^13^ ^ ^ ^ +48501^Geschlecht^37^0^0^140^80^1^integer^30^0^1^<> SELECT apnr,druck FROM cif where key = 9003 and apnr between 1 and 4 order by 1;^ ^ ^ +48503^Studiengang^6^0^0^140^150^50^char^30^0^12^<> select tid,name,sortnr from sichten where art in ('SOS-Kostenstellen-Sicht', 'SOS-Studiengang-Sicht') order by 3,2;^ ^ ^ +48504^Jahr^110^0^0^140^80^1^integer^30^0^13^^ ^ ^ 48505^tablestylesheet^150^0^0^100^100^1^char^255^1^1^<> select filename,caption from sx_stylesheets S, sx_mask_style M where S.tid=M.stylesheet_id and M.maskeninfo_id=48490 order by ord,2^ ^<> select filename,caption from sx_stylesheets S, sx_mask_style M where S.tid=M.stylesheet_id and M.maskeninfo_id=48490 order by ord,2 limit 1^ 48508^Spaltenlayout^3000^350^-1^140^180^1^char^30^1^1^<>SELECT uniquename,\ caption\ FROM rpta_column_layout \ -where resultset_id in (select R.tid from rpta_resultset R where R.uniquename='rpta_sos_lab_aggr'\ +where resultset_id in (select R.tid from rpta_resultset R where R.uniquename in ('rpta_sos_lab_aggr','rpta_sos_lab_stg')\ and R.systeminfo_id=7)\ order by sortnr, caption\ - ;^^<>SELECT uniquename,\ + ;^ ^<>SELECT uniquename,\ caption\ FROM rpta_column_layout \ where resultset_id in (select R.tid from rpta_resultset R where R.uniquename='rpta_sos_lab_aggr'\ and R.systeminfo_id=7) and uniquename='rpta_sos_lab_aggr_sem';^ 48509^Semestertyp^5^350^-1^140^80^1^integer^255^0^1^<> select 1,'nur Sommersemester' from xdummy union select 2,'nur Wintersemester' from xdummy^Eintrag^ ^ -48510^##line##^30^0^0^100^100^1^char^5000^0^8^^^1^ +48510^##line##^30^0^0^100^100^1^char^5000^0^8^^ ^1^ 48511^Abschluss^7^0^0^100^200^3^char^1500^0^12^<> select tid,name,sortnr from sichten where art='SOS-Abschluss-Sicht' order by 3,2;^ ^ ^ -48512^Matrikel-Nr.^20^350^-1^150^180^1^char^200^0^13^^{InputCheck:matrikelnummern}^^ -48513^##line##^40^0^0^100^100^1^char^5000^0^8^^^1^ +48512^Matrikel-Nr.^20^350^-1^150^180^1^char^200^0^13^^{InputCheck:matrikelnummern}^ ^ +48513^##line##^40^0^0^100^100^1^char^5000^0^8^^ ^1^ diff --git a/src-modules/module/rpta/masken/48490_maskeninfo.unl b/src-modules/module/rpta/masken/48490_maskeninfo.unl index 875face..accfff1 100644 --- a/src-modules/module/rpta/masken/48490_maskeninfo.unl +++ b/src-modules/module/rpta/masken/48490_maskeninfo.unl @@ -39,7 +39,9 @@ select caption,\ >'\ <#assign semester_filter = semester_filter+ " and 1=1 and sem_der_pruefung = "+endsemester /> \ \ \ +<#if my_base_rs = "rpta_sos_lab_aggr">\ <#assign filter="<>\ /* and sem_der_pruefung = <> */\ /* and stichtag = <> */\ @@ -112,6 +117,16 @@ and substring('' || tid from 5 for 1)='<>'\ /* and substring('' || sem_der_pruefung from 5 for 1)='<>' */\ /* and pstatus=<> */\ " />\ +<#elseif my_base_rs = "rpta_sos_lab_stg">\ +<#assign filter="<>\ +/* and sem_d_abg_pruefung = <> */\ +/* and stichtag = <> */\ +/* and geschlecht = <> */\ +/* and fach_sem_zahl <= <> */\ +/* and substring('' || sem_der_pruefung from 5 for 1)='<>' */\ +/* and pstatus=<> */\ +" />\ +\ \ <#assign filter= filter + " and " + jahr_filter />\ \ @@ -139,107 +154,7 @@ and ${filter}\ \ \ \ -select \ ---zuerst die Basisdaten:\ -<#foreach column in columns>\ -<#if column.coltype="physicalColumn">\ -${column.srcfieldname},\ -<#elseif column.coltype="logicalColumn">\ -${column.colfunction} as ${column.targetfieldname},\ -<#elseif column.coltype="lookupColumn">\ -(${column.colfunction}) as ${column.targetfieldname},\ -<#elseif column.coltype="computedColumn">\ -null::decimal(19,6) as ${column.targetfieldname},\ -\ -\ -null::char(1) as dummycol\ -into temp tmp_stud\ -from ${basetable.runtime_tablename}\ -<#if rpta_column_layout.whereclause !="">\ -where ${rpta_column_layout.whereclause}\ -\ -;\ -\ -\ ---ergebnistabelle:\ -select \ ---zuerst die nicht-Aggregate:\ -<#assign groupby=0 />\ -<#foreach column in columns>\ -<#if column.is_aggregate==0>\ -<#assign groupby=groupby+1 />\ -${column.targetfieldname},\ -\ -\ ---dann die Aggregate:\ -<#foreach column in columns>\ -<#if column.is_aggregate==1 && column.coltype!="computedColumn">\ -sum(${column.targetfieldname}) as ${column.targetfieldname},\ -\ -\ -null::char(1) as dummycol\ -into temp tmp_stud2\ -from tmp_stud\ -where 1=1\ -/* ${<>} */\ -group by\ -<#list 1..groupby as i>${i}\ -<#if i != groupby>\ -,\ -\ -\ -;\ ---für Prozentwerte alle Aggregate summieren:\ -select <#foreach column in columns>\ -<#if column.is_aggregate==1 && column.coltype!="computedColumn">\ -sum(${column.targetfieldname})::float as ${column.targetfieldname},\ -\ -\ -null::char(1) as dummycol\ -into temp tmp_gesamt\ -from tmp_stud2\ -where 1=1\ -;\ -\ -<#assign number_of_visible_colums=0 />\ -<#foreach column in columns>\ -<#if column.is_visible!=0>\ -<#assign number_of_visible_colums=number_of_visible_colums+1 />\ -\ -\ -<#assign colnr=0 />\ -select \ -<#foreach column in columns>\ -<#if column.is_visible!=0>\ -<#assign colnr=colnr+1 />\ -<#assign format_sql="" />\ -<#if column.format_sql?string != "">\ -<#assign format_sql=column.format_sql />\ -\ -\ -<#if column.coltype=="computedColumn">\ -(${column.colfunction})${format_sql} as ${column.targetfieldname}\ -<#else>\ -${column.targetfieldname}${format_sql} as ${column.targetfieldname}\ -\ -\ -<#if colnr < number_of_visible_colums>,\ - --wenn sichtbar\ -\ -from tmp_stud2\ -order by <#list 1..number_of_visible_colums as i>${i}\ -<#if i != number_of_visible_colums>\ -,\ -\ -\ -;\ -<#if basetable.is_virtual==1>\ -drop table if exists ${basetable.runtime_tablename};\ -\ -\ -\ -drop table if exists tmp_stud;\ -drop table if exists tmp_gesamt;\ +<@rpta_interpret_column_layout nonvirtualTableFilter=1/>\ \ \ --wenn columns?has_content^--Freemarker Template\ @@ -255,4 +170,4 @@ Column CID=0 heading_text="${column.caption}" center_heading explanation="${colu width=${column.visible_width} text_size=60\ \ \ -@@@^Altersgruppe^Anzahl^Studienanfänger_innen als Zeitreihe, nach Gesschlecht und Fakultät in verschiedenen Visualisierungen^drop table if exists tmp_stud2; drop table if exists tmp_stud3;^^3^700^360^0^1^^ +@@@^Altersgruppe^Anzahl^Studienanfänger_innen als Zeitreihe, nach Gesschlecht und Fakultät in verschiedenen Visualisierungen^drop table if exists tmp_stud2; drop table if exists tmp_stud3;^^3^700^360^^1^^ diff --git a/src-modules/module/rpta/schluesseltabellen/pruefungen_im_detail_datenblatt_virtuell.sql b/src-modules/module/rpta/schluesseltabellen/pruefungen_im_detail_datenblatt_virtuell.sql new file mode 100644 index 0000000..33c69d9 --- /dev/null +++ b/src-modules/module/rpta/schluesseltabellen/pruefungen_im_detail_datenblatt_virtuell.sql @@ -0,0 +1,384 @@ +--freemarker template + + +select sp_table_exists('sos_lab_stg') from xdummy; + + +select name + from sx_tables where name ='sos_lab_stg' + + + +select 1::smallint as sortnr, +name, trim(name) ||'_' as prefix, +caption, +'dim_studiengang.tid=sos_lab_stg.tid_stg' as joinclause + from sx_tables where name in ('dim_studiengang') +order by 1 + + +select tid, table_name, + name, + name as targetname + from sx_fields where table_name ='${fact_table_source}' + and currentlyused=1 + <#foreach added_table in added_tables> + union + select tid,table_name, + name, + '${added_table.prefix}' || name as targetname + from sx_fields where table_name ='${added_table.name}' + and currentlyused=1 + + + order by 1 + +]]> + + + +<#if sos_lab_stg_exists==1 && fact_table_source?exists > + +<#assign fact_table_target = {"name":"rpta_sos_lab_stg", "caption":"Prüfungen"} + /> + + +CREATE temp table tmp_tables( +name CHAR(255) , +caption CHAR(255) , +description CHAR(255) , +table_type CHAR(255) , +systeminfo_id INTEGER , +systeminfo_orig INTEGER , +thema CHAR(255) , +sachgebiete_id CHAR(255) +); +CREATE temp TABLE tmp_fields( +tid serial NOT NULL, +table_name VARCHAR(255) not null, +name VARCHAR(255) not null, +caption VARCHAR(255) , +description VARCHAR(255) , +field_type VARCHAR(255) not null, +field_size VARCHAR(255) , +field_not_null smallint, +currentlyused SMALLINT , +is_primarykey SMALLINT default 0 , +foreignkey_tab VARCHAR(255) , +foreignkey_col VARCHAR(255) , +foreignkey_int VARCHAR(255) , +foreignkey_cap VARCHAR(255) , +foreignkey_cond VARCHAR(255) , +foreignkey_func VARCHAR(255) , +check_integrity SMALLINT, +is_sum SMALLINT default 1, +foreignkey_uniquename VARCHAR(255) + +); + + + +update sx_fields set + is_sum=0 + where table_name='sos_lab_stg' + and name!='summe'; +update sx_fields set + is_sum=1 + where table_name='sos_lab_stg' + and name='summe'; + + +insert into tmp_tables ( +name, +caption, +description, +table_type, +systeminfo_id, +thema, +sachgebiete_id +) +select +'${fact_table_target.name}', +'${fact_table_target.caption}', +description, +table_type, +systeminfo_id, +thema, +sachgebiete_id +from sx_tables where name='${fact_table_source}' +; + + +insert into tmp_fields (table_name, + name, + caption, + description, + field_type, + field_size, + field_not_null, + currentlyused, + is_primarykey, + foreignkey_tab, + foreignkey_col, + foreignkey_int, + foreignkey_cap, + foreignkey_cond, + foreignkey_func, + check_integrity, + is_sum, + foreignkey_uniquename) +select '${fact_table_target.name}' as table_name, + name, + caption, + description, + field_type, + field_size, + field_not_null, + currentlyused, + is_primarykey, + foreignkey_tab, + foreignkey_col, + foreignkey_int, + foreignkey_cap, + foreignkey_cond, + foreignkey_func, + check_integrity, + is_sum, + foreignkey_uniquename + from sx_fields where table_name ='${fact_table_source}' + and currentlyused=1; +<#foreach added_table in added_tables> +insert into tmp_fields (table_name, + name, + caption, + description, + field_type, + field_size, + field_not_null, + currentlyused, + is_primarykey, + foreignkey_tab, + foreignkey_col, + foreignkey_int, + foreignkey_cap, + foreignkey_cond, + foreignkey_func, + check_integrity, + is_sum, + foreignkey_uniquename) +select '${fact_table_target.name}' as table_name, + '${added_table.prefix}' || name, + '${added_table.caption}: ' || caption, + description, + field_type, + field_size, + field_not_null, + currentlyused, + is_primarykey, + foreignkey_tab, + foreignkey_col, + foreignkey_int, + foreignkey_cap, + foreignkey_cond, + foreignkey_func, + check_integrity, + is_sum, + foreignkey_uniquename + from sx_fields where table_name ='${added_table.name}' + and currentlyused=1; + + +CREATE temp TABLE tmp_rpta_resultset +( + caption varchar(255), + uniquename varchar(255), + fieldclause text, + joinclause text, + whereclause text, + systeminfo_id integer +); + +insert into tmp_rpta_resultset(caption, + uniquename, + systeminfo_id) + select '${fact_table_target.caption}', + '${fact_table_target.name}', + 7 +; + + +update tmp_rpta_resultset set fieldclause=' +<#foreach field_target in fields_target> +${field_target.table_name}.${field_target.name} as ${field_target.targetname}, + +null::varchar as dummy', +joinclause='${fact_table_source} +<#foreach added_table in added_tables> +left outer join ${added_table.name} on (${added_table.joinclause}) +', +whereclause='and stichtag=(select ST.tid from sos_stichtag ST where ST.appl_key=''2'') and abschnitt=2 and pstatus=''BE'''; + +select * into temp tmp_rs1 +from rpta_resultset +; + +update rpta_resultset set caption=T.caption, + fieldclause=T.fieldclause, + joinclause=T.joinclause, + whereclause=T.whereclause + from tmp_rpta_resultset T + where T.systeminfo_id=rpta_resultset.systeminfo_id + and T.uniquename=rpta_resultset.uniquename + ; + +insert into rpta_resultset(caption, + uniquename, + fieldclause, + joinclause, + whereclause, + systeminfo_id) +select caption, + uniquename, + fieldclause, + joinclause, + whereclause, + systeminfo_id + from tmp_rpta_resultset + where 0=(select count(*) + from tmp_rs1 T + where T.systeminfo_id=tmp_rpta_resultset.systeminfo_id + and T.uniquename=tmp_rpta_resultset.uniquename) + ; +drop table tmp_rpta_resultset; +drop table tmp_rs1; + +delete from sx_tables where name +in (select T.name from tmp_tables T); + +insert into sx_tables (name,caption,description,table_type,systeminfo_id,systeminfo_orig,thema,sachgebiete_id) +select name,caption,description,table_type,systeminfo_id,systeminfo_orig,thema,sachgebiete_id +from tmp_tables; + + +delete from sx_fields where table_name +in (select T.table_name from tmp_fields T); + +insert into sx_fields (table_name,name,caption,description,field_type, +field_size, +field_not_null, +currentlyUsed, +foreignkey_tab, +foreignkey_col, +foreignkey_cap, +foreignkey_int, +foreignkey_cond, +foreignkey_func, +check_integrity, +is_sum, +foreignkey_uniquename +) +select +F.table_name,F.name,F.caption,F.description,F.field_type, +F.field_size, +F.field_not_null, +F.currentlyUsed, +F.foreignkey_tab, +F.foreignkey_col, +F.foreignkey_cap, +F.foreignkey_int, +F.foreignkey_cond, +F.foreignkey_func, +F.check_integrity, +F.is_sum, +F.foreignkey_uniquename + +from tmp_fields F; + + +drop table tmp_fields; +drop table tmp_tables; + + +--rpta_column füllen: +select * into temp tmp_rc1 +from rpta_column; + + +create temp table tmp_rpta_column( + uniquename varchar(255) NOT NULL, + caption varchar(255), + srcfieldname varchar(255), + column_type integer, + col_function text, + is_aggregate smallint, + resultset_id integer, + description text, + custom integer default 0 + ); + +insert into tmp_rpta_column( uniquename, + caption, + srcfieldname, + column_type, + col_function, + is_aggregate, + resultset_id, + description) + select F.name as uniquename, + coalesce(T.caption,T.name) || ' - ' || F.caption, + F.name as srcfieldname, + 1 as column_type, + (case when F.is_sum=1 then 'sum' else null::varchar end) as col_function, + (case when F.is_sum=1 then 1 else 0 end) as is_aggregate, + R.tid as resultset_id, + F.description +from rpta_resultset R, sx_fields F left outer join sx_tables T on (T.name=F.table_name) +where F.table_name='${fact_table_target.name}' +and R.uniquename='${fact_table_target.name}' +and F.currentlyused=1 +; + +update rpta_column set + caption=T.caption, + srcfieldname=T.srcfieldname, + column_type=T.column_type, + col_function=T.col_function, + is_aggregate=T.is_aggregate, + resultset_id=R.tid, + description=T.description, + custom=T.custom + from tmp_rpta_column T, rpta_resultset R +where T.uniquename=rpta_column.uniquename +and rpta_column.resultset_id=R.tid +and R.uniquename='${fact_table_target.name}' +; +insert into rpta_column( uniquename, + caption, + srcfieldname, + column_type, + col_function, + is_aggregate, + resultset_id, + description, + custom) +select T.uniquename, +T.caption, +T.srcfieldname, +T.column_type, +T.col_function, +T.is_aggregate, +R.tid as resultset_id, +T.description, +T.custom + from tmp_rpta_column T, rpta_resultset R + where R.uniquename='${fact_table_target.name}' + and 0=(select count(*) from tmp_rc1 C + where C.uniquename=T.uniquename + and C.resultset_id=R.tid) + ; + +drop table tmp_rpta_column; +drop table tmp_rc1; + + --wenn sos_lab_aggr_exists=1 diff --git a/src-modules/module/rpta/schluesseltabellen/rpta_column_layout_rpta_sos_lab_aggr_rsz_2_fuellen.sql b/src-modules/module/rpta/schluesseltabellen/rpta_column_layout_rpta_sos_lab_aggr_rsz_2_fuellen.sql new file mode 100644 index 0000000..c97b18a --- /dev/null +++ b/src-modules/module/rpta/schluesseltabellen/rpta_column_layout_rpta_sos_lab_aggr_rsz_2_fuellen.sql @@ -0,0 +1,107 @@ +--freemarker template +<#include "RPTA-Makros"/> + + +select count(*) from systeminfo where tid=330; + + +<#assign rpta_column_layout = +{"uniquename":"rpta_sos_lab_aggr_sem_rsz_2_o_b", +"caption":"Absolvierende nach RSZ+2 nach Studiengang und Semester", +"rpta_resultset":"rpta_sos_lab_stg", +"whereclause":"pstatus=''BE'' and not exists (select 1 from sos_stg_aggr A, sos_stichtag I where A.stichtag=I.tid and A.sem_rueck_beur_ein=tmp_rpta_sos_lab_stg.sem_d_abg_pruefung and A.matrikel_nr=tmp_rpta_sos_lab_stg.matrikel_nr and A.hrst=''Y'') ", +"description":"Absolvierende in RSZ+2 nach Studiengang und Semester (ohne Bochum)", +"is_virtual":1 +} + /> + +<#assign rpta_columns = [ +{"uniquename":"sem_der_pruefung", +"caption":"Semester (Schlüssel)", +"srcfieldname":"sem_der_pruefung", +"targetfieldname":"sem_der_pruefung", +"column_type":"physicalColumn", +"col_function":"", +"is_visible":"1", +"format_code":"TEXT", +"visible_size":"5", +"is_aggregate":"0", +"description":"" +}, +{"uniquename":"semester_str", +"caption":"Semester Name", +"srcfieldname":"sem_der_pruefung", +"targetfieldname":"semester_str", +"column_type":"logicalColumn", +"col_function":"(case when substring(sem_der_pruefung::varchar from 5 for 1)=''2'' then ''WS '' || substring(sem_der_pruefung::varchar from 3 for 2) || ''/'' || lpad('''' || val(substring(sem_der_pruefung::varchar from 3 for 2))+1,2,''0'') +when substring(sem_der_pruefung::varchar from 5 for 1)=''1'' then ''SS '' || substring(sem_der_pruefung::varchar from 3 for 2) +else '''' end)", +"is_visible":"1", +"format_code":"", +"visible_size":"5", +"is_aggregate":"0", +"description":"" +}, +{"uniquename":"dim_studiengang_stg_str", +"caption":"Studienfach", +"srcfieldname":"dim_studiengang_stg_str", +"targetfieldname":"", +"column_type":"physicalColumn", +"col_function":"", +"is_visible":"1", +"format_code":"", +"visible_size":"5", +"is_aggregate":"0", +"description":"Name des Studienfachs" +}, +{"uniquename":"dim_studiengang_stg", +"caption":"Studienfach (Schlüssel)", +"srcfieldname":"dim_studiengang_stg", +"targetfieldname":"", +"column_type":"physicalColumn", +"col_function":"", +"is_visible":"1", +"format_code":"", +"visible_size":"5", +"is_aggregate":"0", +"description":"Name des Studienfachs" +}, +{"uniquename":"dim_studiengang_abschluss_str", +"caption":"Abschluss", +"srcfieldname":"dim_studiengang_abschluss_str", +"targetfieldname":"", +"column_type":"physicalColumn", +"col_function":"", +"is_visible":"1", +"format_code":"", +"visible_size":"5", +"is_aggregate":"0", +"description":"Abschluss" +}, +{"uniquename":"summe_rsz2", +"caption":"Anzahl der Absolvierenden in RSZ +2", +"srcfieldname":"", +"targetfieldname":"summe_rsz2", +"column_type":"logicalColumn", +"col_function":"(case when fach_sem_zahl <= (dim_studiengang_regel +2) then summe else 0 end)", +"is_visible":"1", +"visible_size":"5", +"is_aggregate":"1", +"description":"Summe der Absolvierenden in RSZ +2" +}, +{"uniquename":"summe", +"caption":"Anzahl der Absolvierenden", +"srcfieldname":"summe", +"column_type":"physicalColumn", +"col_function":"summe", +"is_visible":"1", +"visible_size":"5", +"is_aggregate":"1", +"description":"Summe der Absolvierenden" +} +] + /> + +<#if rpta_installed==1> +<@rpta_column_layout_fuellen /> +