diff --git a/src-modules/module/viz/schluesseltabellen/studierende_datenblatt_dashboard.sql b/src-modules/module/viz/schluesseltabellen/studierende_datenblatt_dashboard.sql index de34324..741c5bb 100644 --- a/src-modules/module/viz/schluesseltabellen/studierende_datenblatt_dashboard.sql +++ b/src-modules/module/viz/schluesseltabellen/studierende_datenblatt_dashboard.sql @@ -1,14 +1,30 @@ --freemarker template +--alle berechneten Spalten + + select sp_table_exists('sos_stg_aggr') from xdummy; select name - from sx_tables where name ='sos_stg_aggr' + from sx_tables where name ='sos_stg_aggr'; - + + +select 'sos_stud_astat_dashboard' as tablename, +'log_geschlecht_str' as uniquename , +'Geschlecht' as caption, +'Geschlecht' as description, +'sos_k_geschl.druck' as log_field, +'sos_k_geschl on (sos_k_geschl.apnr=sos_stg_aggr.geschlecht)' as join_field +from xdummy; + + + + + -select '(''tid_stg'',''sem_rueck_beur_ein'',''geschlecht'', ''hzbart'',''hzbart_int'', ''hzbkfz'', ''hzbkfzkz'', ''ca12_staat'', ''fach_sem_zahl'',''hs'',''summe'')' +select '(''tid_stg'',''sem_rueck_beur_ein'',''stichtag'',''geschlecht'', ''hzbart'',''hzbart_int'', ''hzbkfz'', ''hzbkfzkz'',''hrst'', ''ca12_staat'', ''fach_sem_zahl'',''hssem'',''studiengang_nr'', ''fach_nr'',''summe'')' from xdummy; select '(''fb'', ''abschluss_grp'', ''abschluss_grp_str'', ''fb_str'',''abschluss_astat_bund'')' from xdummy; + select tid, table_name, @@ -77,6 +95,7 @@ select tid, table_name, + <#if sos_stg_aggr_exists==1 && fact_table_source?exists > <#assign fact_table_target = {"name":"sos_stud_astat_dashboard", "caption":"Studierende (Fachsem., HS-Sem., Studiengang) Dashboard"} @@ -266,6 +285,12 @@ select '${fact_table_target.name}' as table_name, and name in ${added_table_fields} and currentlyused=1; +--und berechnete Spalten einfügen +<#foreach logical_field in logical_fields> +insert into tmp_fields (table_name,name,caption,description,field_type,field_size,field_not_null,currentlyUsed,is_sum) +select +'${logical_field.tablename}', '${logical_field.uniquename}','${logical_field.caption}', '${logical_field.description}', 'CHAR',30, 1, 1,0 from xdummy; + CREATE temp TABLE tmp_rpta_resultset ( @@ -290,6 +315,10 @@ insert into tmp_rpta_resultset(caption, update tmp_rpta_resultset set fieldclause=' +<#foreach logical_field in logical_fields> +${logical_field.log_field} as ${logical_field.uniquename}, + + <#foreach field_target in fields_target> ${field_target.table_name}.${field_target.name} as ${field_target.targetname}, @@ -297,7 +326,11 @@ null::varchar as dummy', joinclause='${fact_table_source} <#foreach added_table in added_tables> left outer join ${added_table.name} on (${added_table.joinclause}) -'; + +<#foreach logical_field in logical_fields> +left outer join ${logical_field.join_field} + +'; --whereclause erstmal primitiv update tmp_rpta_resultset set whereclause = 'and stichtag in (select tid from sos_stichtag where appl_key=''0'') and hrst in (select apnr from sos_k_hrst HRST where HRST.astat in (''1'',''2'')) and kz_rueck_beur_ein in (1,2,3)';