@ -1,14 +1,30 @@ 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					- - freemarker   template  
					 
					 
					 
					- - freemarker   template  
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
					- - alle   berechneten   Spalten  
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
					
 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
					
 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					< sqlvars >  
					 
					 
					 
					< sqlvars >  
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					< sqlvar   name = " sos_stg_aggr_exists " >  
					 
					 
					 
					< sqlvar   name = " sos_stg_aggr_exists " >  
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					select   sp_table_exists ( ' sos_stg_aggr ' )   from   xdummy ;  
					 
					 
					 
					select   sp_table_exists ( ' sos_stg_aggr ' )   from   xdummy ;  
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					< / sqlvar >  
					 
					 
					 
					< / sqlvar >  
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					< sqlvar   name = " fact_table_source " >  
					 
					 
					 
					< sqlvar   name = " fact_table_source " >  
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					select   name  
					 
					 
					 
					select   name  
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					        from   sx_tables   where   name   = ' sos_stg_aggr '  
					 
					 
					 
					        from   sx_tables   where   name   = ' sos_stg_aggr ' ;  
				
			 
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					 
					 
					 
					         
					 
					 
					 
					         
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					< / sqlvar >  
					 
					 
					 
					< / sqlvar >  
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					< sqlvar   name = " added_tables "   type = " hashsequence " >  
					 
					 
					 
					< sqlvar   name = " logical_fields "   type = " hashsequence " >  
				
			 
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
					
 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
					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 ;  
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
					   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
					
 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
					< / sqlvar >  
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
					
 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
					< sqlvar   name = " added_tables "   type = " hashsequence " > < ! [ CDATA [  
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					select   1 : : smallint   as   sortnr ,  
					 
					 
					 
					select   1 : : smallint   as   sortnr ,  
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					name ,   trim ( name )   | | ' _ '     as   prefix ,  
					 
					 
					 
					name ,   trim ( name )   | | ' _ '     as   prefix ,  
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					caption ,  
					 
					 
					 
					caption ,  
				
			 
			
		
	
	
		
		
			
				
					
						
							
								 
							 
						
						
							
								 
							 
						
						
					 
					 
					@ -45,15 +61,17 @@ caption, 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					' sos_stg_aggr.hrst=sos_k_hrst.apnr '   as   joinclause  
					 
					 
					 
					' sos_stg_aggr.hrst=sos_k_hrst.apnr '   as   joinclause  
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					        from   sx_tables   where   name    in   ( ' sos_k_hrst ' ) * /  
					 
					 
					 
					        from   sx_tables   where   name    in   ( ' sos_k_hrst ' ) * /  
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					order   by   1  
					 
					 
					 
					order   by   1  
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
					] ] >  
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					< / sqlvar >  
					 
					 
					 
					< / sqlvar >  
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					< sqlvar   name = " fact_table_fields " >  
					 
					 
					 
					< sqlvar   name = " fact_table_fields " >  
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					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 ;  
					 
					 
					 
					from   xdummy ;  
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					< / sqlvar >  
					 
					 
					 
					< / sqlvar >  
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					< sqlvar   name = " added_table_fields " >  
					 
					 
					 
					< sqlvar   name = " added_table_fields " >  
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					select   ' ( '' fb '' ,  '' abschluss_grp '' ,  '' abschluss_grp_str '' ,  '' fb_str '' , '' abschluss_astat_bund '' ) '  
					 
					 
					 
					select   ' ( '' fb '' ,  '' abschluss_grp '' ,  '' abschluss_grp_str '' ,  '' fb_str '' , '' abschluss_astat_bund '' ) '  
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					from   xdummy ;  
					 
					 
					 
					from   xdummy ;  
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					< / sqlvar >  
					 
					 
					 
					< / sqlvar >  
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
					
 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					< sqlvar   name = " fields_target "   type = " hashsequence " > < ! [ CDATA [  
					 
					 
					 
					< sqlvar   name = " fields_target "   type = " hashsequence " > < ! [ CDATA [  
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					< #if fact_table_source?exists>  
					 
					 
					 
					< #if fact_table_source?exists>  
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					select   tid ,   table_name ,  
					 
					 
					 
					select   tid ,   table_name ,  
				
			 
			
		
	
	
		
		
			
				
					
						
						
						
							
								 
							 
						
					 
					 
					@ -77,6 +95,7 @@ select tid, table_name, 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					< / sqlvar >  
					 
					 
					 
					< / sqlvar >  
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					< / sqlvars >  
					 
					 
					 
					< / sqlvars >  
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					
 
					 
					 
					 
					
 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
					
 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					< #if sos_stg_aggr_exists==1 && fact_table_source?exists >  
					 
					 
					 
					< #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"}  
					 
					 
					 
					< #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   name   in   $ { added_table_fields }  
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					        and   currentlyused = 1 ;  
					 
					 
					 
					        and   currentlyused = 1 ;  
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					< / #foreach>  
					 
					 
					 
					< / #foreach>  
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
					- - 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 ;  
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
					< / #foreach>  
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					
 
					 
					 
					 
					
 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					CREATE   temp   TABLE   tmp_rpta_resultset  
					 
					 
					 
					CREATE   temp   TABLE   tmp_rpta_resultset  
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					(  
					 
					 
					 
					(  
				
			 
			
		
	
	
		
		
			
				
					
						
						
						
							
								 
							 
						
					 
					 
					@ -290,6 +315,10 @@ insert into tmp_rpta_resultset(caption, 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					
 
					 
					 
					 
					
 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					
 
					 
					 
					 
					
 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					update   tmp_rpta_resultset   set   fieldclause = '  
					 
					 
					 
					update   tmp_rpta_resultset   set   fieldclause = '  
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
					< #foreach logical_field in logical_fields>  
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
					$ { logical_field . log_field }   as   $ { logical_field . uniquename } ,  
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
					< / #foreach>  
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
					
 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					< #foreach field_target in fields_target>  
					 
					 
					 
					< #foreach field_target in fields_target>  
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					$ { field_target . table_name } . $ { field_target . name }   as   $ { field_target . targetname } ,  
					 
					 
					 
					$ { field_target . table_name } . $ { field_target . name }   as   $ { field_target . targetname } ,  
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					< / #foreach>  
					 
					 
					 
					< / #foreach>  
				
			 
			
		
	
	
		
		
			
				
					
						
						
						
							
								 
							 
						
					 
					 
					@ -297,7 +326,11 @@ null::varchar as dummy', 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					joinclause = ' ${fact_table_source}  
					 
					 
					 
					joinclause = ' ${fact_table_source}  
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					< #foreach added_table in added_tables>  
					 
					 
					 
					< #foreach added_table in added_tables>  
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					left   outer   join   $ { added_table . name }   on   ( $ { added_table . joinclause } )  
					 
					 
					 
					left   outer   join   $ { added_table . name }   on   ( $ { added_table . joinclause } )  
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					< / #foreach>';  
					 
					 
					 
					< / #foreach>  
				
			 
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
					< #foreach logical_field in logical_fields>  
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
					left   outer   join   $ { logical_field . join_field }  
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
					< / #foreach>  
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
					' ;  
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					
 
					 
					 
					 
					
 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					- - whereclause   erstmal   primitiv  
					 
					 
					 
					- - 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) ' ;  
					 
					 
					 
					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) ' ;