7 changed files with 523 additions and 2 deletions
@ -0,0 +1,53 @@ |
|||||||
|
--freemarker template |
||||||
|
<#include "RPTA-Makros"/> |
||||||
|
<sqlvars> |
||||||
|
<sqlvar name="rpta_installed"> |
||||||
|
select count(*) from systeminfo where tid=330; |
||||||
|
</sqlvar> |
||||||
|
</sqlvars> |
||||||
|
<#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 /> |
||||||
|
</#if> |
@ -0,0 +1,54 @@ |
|||||||
|
--freemarker template |
||||||
|
<#include "RPTA-Makros"/> |
||||||
|
<sqlvars> |
||||||
|
<sqlvar name="rpta_installed"> |
||||||
|
select count(*) from systeminfo where tid=330; |
||||||
|
</sqlvar> |
||||||
|
</sqlvars> |
||||||
|
<#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 /> |
||||||
|
</#if> |
@ -0,0 +1,63 @@ |
|||||||
|
--freemarker template |
||||||
|
<#include "RPTA-Makros"/> |
||||||
|
<sqlvars> |
||||||
|
<sqlvar name="rpta_installed"> |
||||||
|
select count(*) from systeminfo where tid=330; |
||||||
|
</sqlvar> |
||||||
|
</sqlvars> |
||||||
|
<#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 /> |
||||||
|
</#if> |
@ -0,0 +1,45 @@ |
|||||||
|
--freemarker template |
||||||
|
<#include "RPTA-Makros"/> |
||||||
|
<sqlvars> |
||||||
|
<sqlvar name="rpta_installed"> |
||||||
|
select count(*) from systeminfo where tid=330; |
||||||
|
</sqlvar> |
||||||
|
</sqlvars> |
||||||
|
<#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 /> |
||||||
|
</#if> |
@ -0,0 +1,246 @@ |
|||||||
|
--freemarker template |
||||||
|
<sqlvars> |
||||||
|
<sqlvar name="rpta_installed"> |
||||||
|
select count(*) from systeminfo where tid=330; |
||||||
|
</sqlvar> |
||||||
|
</sqlvars> |
||||||
|
<#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}' </#if>, |
||||||
|
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}'; |
||||||
|
|
||||||
|
</#foreach> |
||||||
|
|
||||||
|
|
||||||
|
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; |
||||||
|
</#if> |
@ -0,0 +1,60 @@ |
|||||||
|
--freemarker template |
||||||
|
<#include "RPTA-Makros"/> |
||||||
|
<sqlvars> |
||||||
|
<sqlvar name="rpta_installed"> |
||||||
|
select count(*) from systeminfo where tid=330; |
||||||
|
</sqlvar> |
||||||
|
</sqlvars> |
||||||
|
<#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 /> |
||||||
|
</#if> |
Loading…
Reference in new issue