diff --git a/src-modules/module/rpta/conf/rpta.xml b/src-modules/module/rpta/conf/rpta.xml index 4c5feba..74d5ecc 100644 --- a/src-modules/module/rpta/conf/rpta.xml +++ b/src-modules/module/rpta/conf/rpta.xml @@ -270,6 +270,7 @@ + @@ -582,10 +583,12 @@ + + @@ -599,6 +602,9 @@ + + + @@ -617,6 +623,9 @@ + + + @@ -656,13 +665,16 @@ + + + @@ -672,6 +684,9 @@ + + + @@ -690,6 +705,9 @@ + + + diff --git a/src-modules/module/rpta/hilfstabellen/rpta_exam_unit_fuellen.sql b/src-modules/module/rpta/hilfstabellen/rpta_exam_unit_fuellen.sql index 743e852..c00a6cf 100644 --- a/src-modules/module/rpta/hilfstabellen/rpta_exam_unit_fuellen.sql +++ b/src-modules/module/rpta/hilfstabellen/rpta_exam_unit_fuellen.sql @@ -34,7 +34,8 @@ insert into rpta_exam_unit (matrikel_nr, elementnr, summe, shortcomment, - panerk + panerk, + d_abg_pruefung ) SELECT matrikel_nr, @@ -62,7 +63,8 @@ SELECT <#else> null::varchar(255) as shortcomment, - panerk + panerk, + d_abg_pruefung FROM lm_exam_unit @@ -88,7 +90,8 @@ UNION SELECT pnr::varchar(255) as elementnr, summe, null::varchar(255) as shortcomment, - (select L.panerk from sos_lab L where L.labnr=sos_lab_pord.labnr and L.sourcesystem = 5) + (select L.panerk from sos_lab L where L.labnr=sos_lab_pord.labnr and L.sourcesystem = 5), + d_abg_pruefung FROM sos_lab_pord WHERE sourcesystem = 5 ; diff --git a/src-modules/module/rpta/schluesseltabellen/fm_templates.unl b/src-modules/module/rpta/schluesseltabellen/fm_templates.unl index 045c1ce..5fa5c78 100644 --- a/src-modules/module/rpta/schluesseltabellen/fm_templates.unl +++ b/src-modules/module/rpta/schluesseltabellen/fm_templates.unl @@ -530,15 +530,18 @@ select '${removeEmptyLines}';\ \ \ from tmp_stud2\ - where 1=1 \ - <#if removeEmptyLines=="true" >and (1=0\ + <#if removeEmptyLines=="true" >where 1=0\ <#foreach column in columns>\ + <#assign count_aggregate=0>\ <#if column.is_aggregate==1>\ + <#assign count_aggregate=count_aggregate+1>\ or ${column.targetfieldname} is not null\ - \ + -- folgende elseif sorgt dafür, dass Spaltenlayouts ohne Aggregate immer true sind\ + -- denn ohne diese elseif wären Spaltenlayout ohne Aggregate immer false\ + <#elseif column.is_aggregate==0 && column?is_last && count_aggregate=0>\ + or 1=1\ \ - \ - )\ + \ \ order by \ <#if rpta_column_layout.sortclause?has_content>\ diff --git a/src-modules/module/rpta/schluesseltabellen/rpta_column_layout_rpta_exam_unit_dim_studiengang_exam_written.sql b/src-modules/module/rpta/schluesseltabellen/rpta_column_layout_rpta_exam_unit_dim_studiengang_exam_written.sql new file mode 100644 index 0000000..cfc7f70 --- /dev/null +++ b/src-modules/module/rpta/schluesseltabellen/rpta_column_layout_rpta_exam_unit_dim_studiengang_exam_written.sql @@ -0,0 +1,74 @@ +--freemarker template +<#include "RPTA-Makros"/> + + +select count(*) from rpta_resultset where uniquename='rpta_exam_unit_dim_studiengang'; + + +<#assign rpta_column_layout = {"uniquename":"rpta_exam_unit_dim_studiengang_exam_written", +"caption":"Abschlussarbeiten", +"rpta_resultset":"rpta_exam_unit_dim_studiengang", +"whereclause":"part in (select K.apnr from sos_k_part K where K.hiskey_id=''99'') + and pstatus in (''BE'') + and (((panerk != ''J'' and sourcesystem=6) or (panerk is null and sourcesystem=6)) + or ((panerk != ''I'' and panerk != ''J'' and panerk != ''H'' and sourcesystem=5) or (panerk is null and sourcesystem=5)))", +"description":"", +"sortclause":"" +} + /> + +<#assign rpta_columns = [ +{"uniquename":"dim_studiengang_stg", +"caption_in_ergebnistabelle":"Fach", +"is_visible":"1", +"format_code":"", +"visible_size":"5", +"description_in_ergebnistabelle":"" +}, +{"uniquename":"dim_studiengang_abschluss", +"caption_in_ergebnistabelle":"Abschluss", +"is_visible":"1", +"format_code":"", +"visible_size":"5", +"description_in_ergebnistabelle":"" +}, +{"uniquename":"exam_instructor_1", +"caption_in_ergebnistabelle":"Betreuer 1", +"is_visible":"1", +"format_code":"", +"visible_size":"5", +"description_in_ergebnistabelle":"" +}, +{"uniquename":"exam_instructor_2", +"caption_in_ergebnistabelle":"Betreuer 2", +"is_visible":"1", +"format_code":"", +"visible_size":"5", +"description_in_ergebnistabelle":"" +}, +{"uniquename":"exam_written_title", +"caption_in_ergebnistabelle":"Titel der Arbeit", +"is_visible":"1", +"format_code":"", +"visible_size":"5", +"description_in_ergebnistabelle":"" +}, +{"uniquename":"d_abg_pruefung", +"caption_in_ergebnistabelle":"Prüfungsdatum", +"is_visible":"1", +"format_code":"", +"visible_size":"5", +"description_in_ergebnistabelle":"" +}, +{"uniquename":"note", +"caption_in_ergebnistabelle":"Note", +"is_visible":"1", +"format_code":"", +"visible_size":"5", +"description_in_ergebnistabelle":"" +} +] + /> + + +<@rpta_column2layout_fuellen /> diff --git a/src-modules/module/rpta/schluesseltabellen/rpta_column_rpta_exam_unit_dim_studiengang_fuellen.sql b/src-modules/module/rpta/schluesseltabellen/rpta_column_rpta_exam_unit_dim_studiengang_fuellen.sql index a683811..e3e28bb 100644 --- a/src-modules/module/rpta/schluesseltabellen/rpta_column_rpta_exam_unit_dim_studiengang_fuellen.sql +++ b/src-modules/module/rpta/schluesseltabellen/rpta_column_rpta_exam_unit_dim_studiengang_fuellen.sql @@ -63,6 +63,38 @@ select count(*) from rpta_resultset where uniquename='rpta_exam_unit_dim_studien "col_function":"select surname from sos_stud_address A where tmp_rpta_exam_unit_dim_studiengang.matrikel_nr=A.matrikel_nr", "is_aggregate":0, +"description_der_spalte":""}, + + {"uniquename":"exam_written_title", +"caption_der_spalte":"Titel der Abschlussarbeit", +"srcfieldname":"", +"targetfieldname":"exam_written_title", +"column_type":"lookupColumn", +"col_function":"select title from lm_exam_written W + where tmp_rpta_exam_unit_dim_studiengang.labnr=W.examplan_id", +"is_aggregate":0, +"description_der_spalte":""}, + + {"uniquename":"exam_instructor_1", +"caption_der_spalte":"Betreuer", +"srcfieldname":"", +"targetfieldname":"exam_instructor_1", +"column_type":"lookupColumn", +"col_function":"select distinct lastname||'', ''||firstname from lm_exam_instructor I + where tmp_rpta_exam_unit_dim_studiengang.labnr=I.examplan_id + and ordnr=1", +"is_aggregate":0, +"description_der_spalte":""}, + + {"uniquename":"exam_instructor_2", +"caption_der_spalte":"Betreuer", +"srcfieldname":"", +"targetfieldname":"exam_instructor_2", +"column_type":"lookupColumn", +"col_function":"select distinct lastname||'', ''||firstname from lm_exam_instructor I + where tmp_rpta_exam_unit_dim_studiengang.labnr=I.examplan_id + and ordnr=2", +"is_aggregate":0, "description_der_spalte":""} ] diff --git a/src-modules/module/rpta/schluesseltabellen/rpta_column_rpta_lm_ects_soll_ist_fuellen.sql b/src-modules/module/rpta/schluesseltabellen/rpta_column_rpta_lm_ects_soll_ist_fuellen.sql index 3639721..299c63a 100644 --- a/src-modules/module/rpta/schluesseltabellen/rpta_column_rpta_lm_ects_soll_ist_fuellen.sql +++ b/src-modules/module/rpta/schluesseltabellen/rpta_column_rpta_lm_ects_soll_ist_fuellen.sql @@ -163,6 +163,16 @@ select count(*) from rpta_resultset where uniquename='rpta_lm_ects_soll_ist'; "col_function":"(ects_ist/ects_soll*100)", "is_aggregate":"1", "description_der_spalte":"Anteil der Ist-ECTS and den Soll-ECTS" +}, +{"uniquename":"surname", +"caption_der_spalte":"Nachname", +"srcfieldname":"", +"targetfieldname":"surname", +"column_type":"lookupColumn", +"col_function":"select surname from sos_stud_address A + where tmp_rpta_lm_ects_soll_ist.matrikel_nr=A.matrikel_nr", +"is_aggregate":0, +"description_der_spalte":"" } ] diff --git a/src-modules/module/rpta/schluesseltabellen/sx_stylesheets_einfuegen.sql b/src-modules/module/rpta/schluesseltabellen/sx_stylesheets_einfuegen.sql index 0e92f5b..31e9c0d 100644 --- a/src-modules/module/rpta/schluesseltabellen/sx_stylesheets_einfuegen.sql +++ b/src-modules/module/rpta/schluesseltabellen/sx_stylesheets_einfuegen.sql @@ -10,6 +10,7 @@ {"mask":"48110", "filename":"tabelle_html.xsl", "ord":"10"}, {"mask":"48460", "filename":"tabelle_html.xsl", "ord":"10"}, {"mask":"48490", "filename":"tabelle_html.xsl", "ord":"10"} +{"mask":"48520", "filename":"tabelle_html.xsl", "ord":"10"} ] />