update xcube set restriction='<<Köpfe oder Fälle ?>>
  and sem_rueck_beur_ein >= <<Seit Semester>>
  /*and sem_rueck_beur_ein <= <<Bis Semester>>*/
  /* and <<Hörerstatus>> */
  /* AND fach_sem_zahl <= <<bis Fachsemester>> */
  /* and stichtag = <<Stichtag>> */
  /* and kz_rueck_beur_ein in(<<Status>>) */
  /* and geschlecht in (<<Geschlecht>>) */
  /* and ${<<Filter Studierende>>} */
  /* and tid_stg in (select tid from dim_studiengang where abschluss in <@printkeys Abschluss.allNeededKeysList />)  --<<Abschluss>> */
   and ''s_'' || tid_stg::char(10) in <@printkeys Studiengang.allNeededKeysList />  --<<Studiengang>> 
  /* and tid_stg in (select tid from dim_studiengang where stg in <@printkeys Fächer.allNeededKeysList/>) --<<Fächer>> */ 
  /* and '''' || ca12_staat in  <@printkeys Staatsangehörigkeit.allNeededKeysList/>  --<<Staatsangehörigkeit>> */
/* and (('''' || semkfz in  <@printkeys Wohnort.allNeededKeysList/>  and semkfzkz=0) --<<Wohnort>> */
  /* or ('''' || semkfz in  <@printkeys Wohnort.allNeededKeysList/>  and semkfzkz=1)) --<<Wohnort>> */
  <#if "<<Alter>>"!=""> and ${Alter.selectedItems[0].strukturStr?replace("$1","alter")}</#if>
  <#if "<<HZB-Note>>"!=""> and ${.vars["HZB-Note"].selectedItems[0].strukturStr?replace("$1","hzbnote")}</#if>
 
   ' where maskeninfo_id=21000;
 update xcube set restriction=
 --nur Abschlussprüfungen, interessanterweise gibt es auch pnr=11!?
  
 'abschnitt = 2
 --alle normalen Abfragen joinen mit lehr_stg_ab, deshalb sicherheitshalber
  /* and pstatus = <<Prüfungsstatus>> */
 and <<Köpfe oder Fälle ?>>
  and sem_der_pruefung >= <<Seit Semester>>
  /* and sem_der_pruefung <= <<Bis Semester>>*/
  /* and stichtag = <<Stichtag>> */
  /* and tid_stg in (select tid from dim_studiengang where abschluss in <@printkeys Abschluss.allNeededKeysList />)  --<<Abschluss>> */
   and ''s_'' || tid_stg::char(10) in <@printkeys Studiengang.allNeededKeysList />  --<<Studiengang>>
  /* and tid_stg in (select tid from dim_studiengang where stg in <@printkeys Fächer.allNeededKeysList/>) --<<Fächer>> */
  /* and '''' || ca12_staat in  <@printkeys Staatsangehörigkeit.allNeededKeysList/>  --<<Staatsangehörigkeit>> */
  /* and geschlecht=<<Geschlecht>> */
    <#if "<<Alter>>"!=""> and ${Alter.selectedItems[0].strukturStr?replace("$1","alter")}</#if>
    <#if "<<Note>>"!=""> and ${.vars["Note"].selectedItems[0].strukturStr?replace("$1","note")}</#if>
  /* AND fach_sem_zahl <= <<bis Fachsemester>> */
  ' where maskeninfo_id=21100;
  
  --Personalwürfel
  
 update xcube set restriction='
 <#assign datum_stichtag=''''>
  <#if "<<oder Stichtag>>" ="">
       <#assign datum_stichtag="(select stichtag from sva_stichtag where bereich=''p'' and beschreibung=''Tagesdatum'')"/>
 <#else>
       <#assign datum_stichtag="(select stichtag from sva_stichtag where tid = <<oder Stichtag>>)"/>
   </#if>
   <#if "<<oder Stichtag>>" =""> stichtag = (select tid from sva_stichtag where bereich=''p'' and beschreibung=''Tagesdatum'') 
   <#else> stichtag = <<oder Stichtag>> 
   </#if> 
   
  AND ch110_besch_st in  <@printkeys .vars["Beschäftigungsstelle (Person)"].allNeededKeysList/>  --<<Beschäftigungsstelle (Person)>> 
  /* and beurl_art in <@printkeys Beurlaubung.allNeededKeysList/> --<<Beurlaubung>> */
  /* AND kostenstelle in  <@printkeys .vars["Kostenstelle (Person)"].allNeededKeysList/>  --<<Kostenstelle (Person)>> */
  /* AND ca107_dienstart in  <@printkeys Dienstart.allNeededKeysList/>  --<<Dienstart>> */
  /* AND ca109_key_bvl in  <@printkeys .vars["BVL-Gruppe"].allNeededKeysList/>  --<<BVL-Gruppe>> */
  /* AND ca108_amtsbez in  <@printkeys Amtsbezeichnung.allNeededKeysList/>  --<<Amtsbezeichnung>> */
  /* AND vertart in  <@printkeys Vertragsart.allNeededKeysList/>  --<<Vertragsart>> */
<#if "<<Alter (bis)>>"!=""> and ${Alter.selectedItems[0].strukturStr?replace("$1","alter")}</#if>
/* and ${datum_stichtag} between d_besch_von and d_besch_bis and d_befristung <= date_val(<<Befristet bis>>) */
/* and geschlecht = <<Geschlecht>> */
 /* AND ch212_geldgeber in  <@printkeys Geldgeber.allNeededKeysList/>  --<<Geldgeber>> */
/* and ca501_staat <<Staatsangehörigkeit>> */
/* and <<Filter Personal>> */
<#if "<<Alter>>"!=""> and ${Alter.selectedItems[0].strukturStr?replace("$1","trunc((${datum_stichtag} - geburtsdatum) / 365.25 , 0)")}</#if>
    ' where maskeninfo_id=21200; 

--Bewerbungen/Zulassungen   
 update xcube set restriction=' <<Bewerbungen>>
  /* and bewsem >= <<Seit Semester>> */
  /*and bewsem <= <<Bis Semester>>*/
  /* and stg in <@printkeys Fächer.allNeededKeysList/> --<<Fächer>> */
  /* and abschl in (<<Abschluss>>) */
  /* and zulart in (<<Zulassungsstatus>>) */
  /* and kzfa in (<<Fachkennzeichen>>) */
  /* and ${<<Filter Zulassung>>} */
  /* and ca12_staat in <@printkeys Staatsangehörigkeit.allNeededKeysList/> --<<Staatsangehörigkeit>> */
  /* and <<Hochschulzugangsber.>> */
  ' where maskeninfo_id=21250; 
   
 update xcube set restriction='
(bukz!=''PE'' or bukz is null)
 /* and jahr >= <<Jahr von>> */
 /* and jahr <= <<Jahr bis>> */
and fikrkey in <@printkeys Kostenarten.allNeededKeys /> 
  and ch110_institut in <@printkeys Kostenstelle.allNeededKeys/>
/* AND <<Zeitraum>> */
/* and monat >= <<Monat von>> */
/* and monat <= <<Monat bis>> */
/* and (ggnr in <@printkeys .vars["Geldgeber"].allNeededKeys /> or <<Geldgeber>> =''null'')*/
/* and (projnr in <@printkeys Kostenträger.allNeededKeys/> or <<Kostenträger>> =''null'') */

' where maskeninfo_id=21500;