From 64e3f0f23b2c470ff1ffad6518bf29659bbb9eb9 Mon Sep 17 00:00:00 2001 From: Meikel Bisping Date: Fri, 14 Mar 2025 09:43:40 +0100 Subject: [PATCH] Drittmittelbericht --- masken/888880120-drittmittel.xml | 944 +++++++++++++++++++++++++++++++ 1 file changed, 944 insertions(+) create mode 100644 masken/888880120-drittmittel.xml diff --git a/masken/888880120-drittmittel.xml b/masken/888880120-drittmittel.xml new file mode 100644 index 0000000..6027578 --- /dev/null +++ b/masken/888880120-drittmittel.xml @@ -0,0 +1,944 @@ + + + + + + +delete from maskeninfo where tid = 888880120; +delete from themenbaum where maskeninfo_id = 888880120; +delete from felderinfo where tid in (select felderinfo_id from masken_felder_bez where maskeninfo_id = 888880120); +delete from masken_felder_bez where maskeninfo_id = 888880120; +delete from sachgeb_maske_bez where maskeninfo_id = 888880120; +delete from maske_system_bez where maskeninfo_id = 888880120; + + + +insert into maske_system_bez (maskeninfo_id,systeminfo_id) values (888880120,3); +insert into sachgeb_maske_bez (maskeninfo_id,sachgebiete_id) values (888880120,50); +insert into masken_felder_bez (maskeninfo_id,felderinfo_id) values (888880120,888880120); +insert into masken_felder_bez (maskeninfo_id,felderinfo_id) values (888880120,888880121); +insert into masken_felder_bez (maskeninfo_id,felderinfo_id) values (888880120,888880122); +insert into masken_felder_bez (maskeninfo_id,felderinfo_id) values (888880120,888880123); +insert into masken_felder_bez (maskeninfo_id,felderinfo_id) values (888880120,888880124); +insert into masken_felder_bez (maskeninfo_id,felderinfo_id) values (888880120,888880125); +insert into masken_felder_bez (maskeninfo_id,felderinfo_id) values (888880120,888880126); +insert into masken_felder_bez (maskeninfo_id,felderinfo_id) values (888880120,888880127); +insert into masken_felder_bez (maskeninfo_id,felderinfo_id) values (888880120,888880128); +insert into masken_felder_bez (maskeninfo_id,felderinfo_id) values (888880120,888880129); +insert into masken_felder_bez (maskeninfo_id,felderinfo_id) values (888880120,888880130); +insert into masken_felder_bez (maskeninfo_id,felderinfo_id) values (888880120,888880131); +insert into masken_felder_bez (maskeninfo_id,felderinfo_id) values (888880120,888880132); +insert into masken_felder_bez (maskeninfo_id,felderinfo_id) values (888880120,888880133); +insert into masken_felder_bez (maskeninfo_id,felderinfo_id) values (888880120,888880134); +insert into masken_felder_bez (maskeninfo_id,felderinfo_id) values (888880120,888880135); +insert into masken_felder_bez (maskeninfo_id,felderinfo_id) values (888880120,888880136); +insert into masken_felder_bez (maskeninfo_id,felderinfo_id) values (888880120,888880137); +insert into masken_felder_bez (maskeninfo_id,felderinfo_id) values (888880120,888880138); +insert into masken_felder_bez (maskeninfo_id,felderinfo_id) values (888880120,888880139); + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +> select id,caption from sx_repository where art=''FIN_DRITTMITTELP_GRUPPE'' and sort1=2' where tid=888880122;]]> +> select ''ja'',''ja'' from xdummy' where tid=888880123;]]> + + + + + + + + + + +> select ''aufklapp'',''mit Aufklappfunktion'' from xdummy' where tid=888880134;]]> + +> select ''nein'',''nein'' from xdummy;' where tid=888880136;]]> + + +> select ''jahr'',''Jahr'' from xdummy;' where tid=888880139;]]> +projektebene nicht > 1 +-- 25.3.12 aufteilung projekte/projektevoll, wegen Rechtekontrolle 2. Ebene +-- 12.12.12 bei <> Problem wenn nicht Hauptbetreuungskostenstelle aktiv +--11.2.13 <#if berechtigung_via_hauptbetreuungskostenstellen&&projekteVOLL?is_sequence> auf VOLL geändert +--TODO Spezialberechung vojs Biberach nicht fest 2010 <> abfangen +-- 05.04.13 Projektevoll völlig falsch, wenn keine Kostenstellenrechte vergeben +-- 3.6.13 bei Summenberechnung für kategorien fehlt noch /* and rechnungsjahr=<> */ +-- 24.6.15 Projektname möglichst aus aktuellem jahr sonst vorherige +-- 6/17 linkspezielleBuchungsberichte, verfügbar g. Geldein,Rest, offsoll_e +-- 4/18 vojs als Link +-- 6/18 Performance Verbesserung Projektnamen +-- 8/21 Spezialbearbeitung UNI Regensburg zs. Spalte Projektleiter, da Projektnamen gleich +-- 02/22 inaktive Projekte ausblenden +<#include "SQL_lingua_franca"/> +<#include "SuperX_general"/> + +-- nicht mehr benoetigt in sqlvar, da schon in Rechtekontrolle ?ber proj_to_inst drin + --<#if "<>"!=""> +--and buchungsab_fb in (select projnr from fin_proj_to_inst P where haupt_kst_kz='1' and +--inst_nr in <@printkeys Kostenstelle.allNeededKeys/> ) +-- + +CDATASTARTselect content from sx_repository where <#if Gruppierung?exists>id=<><#else>1=0 and aktiv=1CDATAEND +CDATASTART +<#assign berechtigung_via_hauptbetreuungskostenstellen=false/> +<#assign template = FIN_DRITTMITTELPROJEKTE?interpret> +<@template/> +select buchungsab_fb,min(ktobez) from fin_buchab_fb B where +( --(${SxFinRechte.getProjektRights}) +<#if Kostenstelle.elementsMaxEbene>1&&(K_hs_nr=6720||berechtigung_via_hauptbetreuungskostenstellen)> +buchungsab_fb in (select distinct projnr from fin_proj_to_inst where +( +<#if berechtigung_via_hauptbetreuungskostenstellen> haupt_kst_kz='1' +--bei Biberach "Projektleiterkostenstellen" +<#if K_hs_nr=6720> substring(inst_nr from 1 for 1) not in ('0','1','2','3','4','5','6','7','8','9') +) +and + inst_nr in <@printkeys Kostenstelle.allNeededKeys/> ) +or + +(${SxFinRechte("K1","31.12.2010","","","","")}) ) +and jahr>=${drittmittelprojektestartjahr} +and ${drittmittelprojektebedingung} +<#if "<>"!=""> +and B.buchungsab_fb in (select projnr from fin_proj_to_inst P where +<#if berechtigung_via_hauptbetreuungskostenstellen||K_hs_nr=6720> +( +<#if berechtigung_via_hauptbetreuungskostenstellen> haupt_kst_kz='1' +--bei Biberach "Projektleiterkostenstellen" +<#if K_hs_nr=6720> substring(inst_nr from 1 for 1) not in ('0','1','2','3','4','5','6','7','8','9') +) and + + +inst_nr in <@printkeys Kostenstelle.allNeededKeys/> ) + +<#if MaxJahreProjektAbgelaufen?exists> +and buchungsab_fb in (select projnr from fin_proj where ${ProjektAbgelaufenFeld} is null or year(${ProjektAbgelaufenFeld})>=(year(today())-${MaxJahreProjektAbgelaufen})) + +<#if "<>"="'nein'"> + <#if ProjektInaktivKeineBuchungenInJahren?exists> + and buchungsab_fb not in (select buchungsab_fb from fin_konto_aggr group by 1 having max(rechnungsjahr) + + /* and buchungsab_fb in ( <>) */ + /* and buchungsab_fb in (select projnr from fin_proj where pjlname1 in ( <> )) */ + /* and buchungsab_fb in (select projnr from fin_proj where lehr in ( <> )) */ + group by 1; + CDATAEND + +--nicht sinnvolll, wenn keine Kostenstellenrechte angegeben +CDATASTART +<#assign berechtigung_via_hauptbetreuungskostenstellen=false/> +<#assign template = FIN_DRITTMITTELPROJEKTE?interpret> +<@template/> +select buchungsab_fb,min(ktobez) from fin_buchab_fb B where +( --(${SxFinRechte.getProjektRights}) +<#if Kostenstelle.elementsMaxEbene>1&&(K_hs_nr=6720||berechtigung_via_hauptbetreuungskostenstellen)> +buchungsab_fb in (select distinct projnr from fin_proj_to_inst where +( +<#if berechtigung_via_hauptbetreuungskostenstellen> haupt_kst_kz='1' +--bei Biberach "Projektleiterkostenstellen" +<#if K_hs_nr=6720> substring(inst_nr from 1 for 1) not in ('0','1','2','3','4','5','6','7','8','9') +) +and + inst_nr in <@printkeys Kostenstelle.allNeededKeys/> ) +and + +not (${SxFinRechte("K1","31.12.2010","","","","")}) ) +and jahr>=${drittmittelprojektestartjahr} +and ${drittmittelprojektebedingung} +<#if "<>"!=""> +and B.buchungsab_fb in (select projnr from fin_proj_to_inst P where +<#if berechtigung_via_hauptbetreuungskostenstellen||K_hs_nr=6720> +( +<#if berechtigung_via_hauptbetreuungskostenstellen> haupt_kst_kz='1' +--bei Biberach "Projektleiterkostenstellen" +<#if K_hs_nr=6720> substring(inst_nr from 1 for 1) not in ('0','1','2','3','4','5','6','7','8','9') +) and + +inst_nr in <@printkeys Kostenstelle.allNeededKeys/> ) + +<#if MaxJahreProjektAbgelaufen?exists> +and buchungsab_fb in (select projnr from fin_proj where ${ProjektAbgelaufenFeld} is null or year(${ProjektAbgelaufenFeld})>=(year(today())-${MaxJahreProjektAbgelaufen})) + +<#if "<>"="'nein'"> + <#if ProjektInaktivKeineBuchungenInJahren?exists> + and buchungsab_fb not in (select buchungsab_fb from fin_konto_aggr group by 1 having max(rechnungsjahr) + + /* and buchungsab_fb in ( <>) */ + /* and buchungsab_fb in (select projnr from fin_proj where pjlname1 in ( <> )) */ + /* and buchungsab_fb in (select projnr from fin_proj where lehr in ( <> )) */ + group by 1; + CDATAEND + +CDATASTART +select count(distinct buchungsab_fb) from fin_buchab_fb where +<#if projekte?is_sequence> buchungsab_fb in ( <#foreach p in projekte> '${p.id}'<#if p_has_next>,)<#else>1=0 +CDATAEND + +CDATASTART + select sum(hhans_dr) from fin_konto_aggr where +<#if projekte?is_sequence> buchungsab_fb in ( <#foreach p in projekte> '${p.id}'<#if p_has_next>,)<#else>1=0 + CDATAEND + +CDATASTART + select count(distinct projnr_ins) from fin_konto_aggr where projnr_ins!='' and +<#if projekte?is_sequence> buchungsab_fb in ( <#foreach p in projekte> '${p.id}'<#if p_has_next>,)<#else>1=0 +CDATAEND + +select year(today()) from xdummy + +<#if bewillsum?is_string&&bewillsum=""><#assign bewillsum=0/> + +<#assign berechtigung_via_hauptbetreuungskostenstellen=false/> +<#assign template = FIN_DRITTMITTELPROJEKTE?interpret> + + +<#if gruppierung!=''> +<#assign inlineTemplate=gruppierung?interpret> +<@inlineTemplate/> + +<#if CUSTOM_888880120?exists> +<#assign inlineTemplate=CUSTOM_888880120?interpret> +<@inlineTemplate/> + + +--Biberach Projektleiter nachtragen in FIN_VERFUEGBAR_INDIV! + +-- ################################################## +-- ##### Temp Tabelle wird erzeugt und gefuellt ###### +-- ################################################## +create temp table tmp_erg +( +ebene smallint, +katsort integer, +key varchar(255), -- fuer Anzeige +buchungsab_fb char(12), +pjlname1 char(30), +projnr_ins varchar(255), +projnr_ins_sort varchar(255) default '' not null, --fuer Sortierung nach Namen, fuer HFT wird fuer E0001 00000 eingetragen damit ganz oben +name char(200), +jahr char(10), +jahrsort char(10) default '0' not null, +detail smallint default 1, +bewill decimal (14,2) , +einnahmen decimal (14,2) , +ausgaben decimal (14,2) , +fest decimal (14,2) , +rest decimal(14,2), +vojs decimal(14,2), +offsoll_e decimal(14,2), +verfuegbar decimal(14,2),--Bewilligung +verfuegbar_geld decimal(14,2),--Geldeingang +saldobewill decimal (14,2), +saldoeinnahme decimal (14,2), +linkkoa <#if SQLdialect='Postgres'>text<#else>lvarchar(1000), +linkkoa2 <#if SQLdialect='Postgres'>text<#else>lvarchar(1000), +linkbuchakts <#if SQLdialect='Postgres'>text<#else>lvarchar(1000), +linkbuchf <#if SQLdialect='Postgres'>text<#else>lvarchar(1000), +linkbuchein <#if SQLdialect='Postgres'>text<#else>lvarchar(1000), +linkbuchvojs <#if SQLdialect='Postgres'>text<#else>lvarchar(1000), +linkbuchoffsolle <#if SQLdialect='Postgres'>text<#else>lvarchar(1000), +linkbuchaus <#if SQLdialect='Postgres'>text<#else>lvarchar(1000), +linkbuchspezial <#if SQLdialect='Postgres'>text<#else>lvarchar(1000), --Spezielle Variante des allgemeinen Buchungsbericht +linkspezialbuchungsb <#if SQLdialect='Postgres'>text<#else>lvarchar(1000) -- spezieller Bericht falls definiert + ) <@informixnolog/>; + +<#if projektcount==0> +insert into tmp_erg (name) values ('Kein Projekt gefunden'); +<@selectintotmp source="tmp_erg" target="tmp_erg2" select="*"/>; +drop table tmp_erg; +<#else> + +--falls es nur 1 Ausgabeart gibt, wird intern auf Sortierung Jahr umgestellt +<#if ausgabeartcount<2><#assign Sortierung="jahr"/> +<#assign zeigeSaldoEbene2='ja'> + + +<#if LinkFestlegung?exists&&LinkFestlegung='nur offene'> +<#assign bf="&Buchungsart=4b-ofest"/> +<#else> +<#assign bf="&Buchungsart=4-fest"/> + + +<#assign koa2="&Art=FIN_KOSTENART2"/> +<#assign linkkoa="888880140&cachingcontrol=clearmask"/> --+"&closeHeader=5" kann nur nachtraeglich aufgerufen werden +<#assign linkkoa=linkkoa?replace("'","")> -- ' entfernen +--für Direktlink +<#assign linkbuch="SuperXmlTabelle?tid=888880160&cachingcontrol=clearmask&Sortierung%20nach=1-bdat&navi=true"/> +--#assign linkbuch="888880160&cachingcontrol=clearmask&Sortierung%20nach=1-bdat" +<#assign linkbuch=linkbuch?replace("'","")> -- ' entfernen +<#assign baus="&Buchungsart=6-aus"/> +<#assign bakts="&Buchungsart=3b-aks"/> +<#assign bein="&Buchungsart=7-ein"/> +<#assign boffsolle="&Buchungsart=8-offsolle"/> +<#assign bspezial="&Buchungsart=0-alle"/> +<#assign template = FIN_DRITTMITTELPROJEKTE?interpret> +<@template/> + +<#assign katsort=1/> + +--linkbuch vojs wird unten per replace gemacht + +--Details pro Ausgabeart +<#assign params>'&Buchungsab_fb='||trim(buchungsab_fb)||'&Projnr_ins='||trim(projnr_ins)||'&ab Haushaltsjahr='||rechnungsjahr||'&bis Haushaltsjahr='||rechnungsjahr +insert into tmp_erg (buchungsab_fb,projnr_ins,key,katsort,jahr,linkbuchakts,linkbuchf,linkbuchein,linkbuchoffsolle,linkbuchaus, +linkbuchspezial, +bewill,einnahmen,ausgaben,fest,vojs,rest,offsoll_e,verfuegbar,verfuegbar_geld) +select buchungsab_fb, projnr_ins,projnr_ins,${katsort},rechnungsjahr, +'${linkbuch}${bakts}'||${params}, +'${linkbuch}${bf}'||${params}, +'${linkbuch}${bein}'||${params}, +'${linkbuch}${boffsolle}'||${params}, +'${linkbuch}${baus}'||${params}, +'${linkbuch}${bspezial}'||${params}, +sum(hhans_dr),sum(einnahmen_dr),sum(ausgaben_dr),sum(festgelegt_dr),sum(vojs_dr),sum(reste_dr),sum(offsoll_e_dr),sum(verfuegbar_dr),sum(verfuegbar_geld) +from fin_konto_aggr +where rechnungsjahr>=${drittmittelprojektestartjahr} +/* and rechnungsjahr=<> */ +and ${drittmittelprojektebedingung} +and ( +--hier stand Projektevoll +<#if berechtigung_via_hauptbetreuungskostenstellen&&projekte?is_sequence> + buchungsab_fb in ( <#foreach p in projekte> '${p.id}'<#if p_has_next>,) + or + + (${SxFinRechte("K2","31.12.2010","","","","","")}) + ) + and rechnungsjahr>=${drittmittelprojektestartjahr} +and ${drittmittelprojektebedingung} +<#if "<>"!=""> +and buchungsab_fb in (select projnr from fin_proj_to_inst P where +<#if berechtigung_via_hauptbetreuungskostenstellen||K_hs_nr=6720> +( +<#if berechtigung_via_hauptbetreuungskostenstellen> haupt_kst_kz='1' +--bei Biberach "Projektleiterkostenstellen" +<#if K_hs_nr=6720> substring(inst_nr from 1 for 1) not in ('0','1','2','3','4','5','6','7','8','9') +) and + +inst_nr in <@printkeys Kostenstelle.allNeededKeys/> ) + +<#if MaxJahreProjektAbgelaufen?exists> +and buchungsab_fb in (select projnr from fin_proj where ${ProjektAbgelaufenFeld} is null or year(${ProjektAbgelaufenFeld})>=(year(today())-${MaxJahreProjektAbgelaufen})) + +<#if "<>"="'nein'"> + <#if ProjektInaktivKeineBuchungenInJahren?exists> + and buchungsab_fb not in (select buchungsab_fb from fin_konto_aggr group by 1 having max(rechnungsjahr) + + /* and buchungsab_fb in ( <>) */ + /* and buchungsab_fb in (select projnr from fin_proj where pjlname1 in ( <> )) */ + /* and buchungsab_fb in (select projnr from fin_proj where lehr in ( <> )) */ +group by 1,2,3,4,5,6,7,8,9,10,11; + +<#if K_hs_nr=6720> +--Spezialberechung Biberach z.B. Projekt 900300 +create temp table tmp_vojs (buchungsab_fb char(10),vojs decimal(14,2)); +insert into tmp_vojs +select buchungsab_fb,sum(vojs_dr) from fin_konto_aggr where +rechnungsjahr=2010 and (dr='92' or dr2='92') +and ( +--hier stand projektevoll +<#if berechtigung_via_hauptbetreuungskostenstellen&&projekte?is_sequence> + buchungsab_fb in ( <#foreach p in projekte> '${p.id}'<#if p_has_next>,) + or + + (${SxFinRechte("K2","31.12.2010","","","","")}) + ) + and rechnungsjahr>=${drittmittelprojektestartjahr} +and ${drittmittelprojektebedingung} +<#if "<>"!=""> +and B.buchungsab_fb in (select projnr from fin_proj_to_inst P where +( +<#if berechtigung_via_hauptbetreuungskostenstellen> haupt_kst_kz='1' +--bei Biberach "Projektleiterkostenstellen" +<#if K_hs_nr=6720> substring(inst_nr from 1 for 1) not in ('0','1','2','3','4','5','6','7','8','9') +) and +inst_nr in <@printkeys Kostenstelle.allNeededKeys/> ) + +<#if MaxJahreProjektAbgelaufen?exists> +and buchungsab_fb in (select projnr from fin_proj where ${ProjektAbgelaufenFeld} is null or year(${ProjektAbgelaufenFeld})>=(year(today())-${MaxJahreProjektAbgelaufen})) + + /* and buchungsab_fb in ( <>) */ + /* and buchungsab_fb in (select projnr from fin_proj where pjlname1 in ( <> )) */ + group by 1; + +update tmp_erg set vojs=0; --vojs wird nur auf Projektebene fuer 2009 nachberechnet +update tmp_erg set fest=0 where jahr!=year(today()); --Festlegungen nur bei aktuellem Haushaltsjahr + +<#if K_hs_nr=6850> --HFT Stuttgart +update tmp_erg set fest=0 where jahr +-- ################################################## +-- ###### Daten der Tabelle werden verarbeitet ###### +-- ################################################## +update tmp_erg set linkkoa='${linkkoa}&ab%20Haushaltsjahr='||trim(jahr)||'&bis%20Haushaltsjahr='||trim(jahr)||'&Buchungsab_fb='||trim(buchungsab_fb)||'&Projnr_ins='||trim(projnr_ins) where projnr_ins!=''; +update tmp_erg set linkkoa2='${linkkoa}${koa2}&ab%20Haushaltsjahr='||trim(jahr)||'&bis%20Haushaltsjahr='||trim(jahr)||'&Buchungsab_fb='||trim(buchungsab_fb)||'&Projnr_ins='||trim(projnr_ins) where projnr_ins!=''; + +create temp table tmp_name (buchungsab_fb char(12),projnr_ins char(10),jahr char(4),ktobez varchar(255)); +insert into tmp_name select buchungsab_fb,projnr_ins,jahr::char(4),min(ktobez) from fin_projnr_ins group by 1,2,3; +create index ix_tmp_name1 on tmp_name (buchungsab_fb,projnr_ins,jahr); + + + +update tmp_erg set name=(select ktobez from tmp_name where tmp_erg.projnr_ins=tmp_name.projnr_ins +and tmp_erg.buchungsab_fb=tmp_name.buchungsab_fb +and tmp_erg.jahr=tmp_name.jahr) where projnr_ins is not null and projnr_ins!=''; +drop table tmp_name; +--fuer Bewilligungen in der Zukunft noch keine Bezeichnung, nachtragen +update tmp_erg set name=(select min(ktobez) from fin_projnr_ins where tmp_erg.projnr_ins=fin_projnr_ins.projnr_ins +and tmp_erg.buchungsab_fb=fin_projnr_ins.buchungsab_fb) where projnr_ins is not null and projnr_ins!='' and name is null; + +-- update tmp_erg2 set projnr_ins='-',name='ohne Ausgabeart' where projnr_ins=''; +--delete from tmp_erg where projnr_ins='' or projnr_ins is null; + +<@selectintotmp source="tmp_erg" target="tmp_erg2" select="*"> +where projnr_ins!='' + <@informixnolog/>; + + + --wenn es nur eine (Dummy)-Ausgabeart gibt, Details loeschen +<#if !(Haushaltsjahr?exists)||"<>"=""> + delete from tmp_erg2 where (select count(distinct projnr_ins) from tmp_erg where projnr_ins!='-' and projnr_ins!='')<2; + + +-- ################################################## +-- ######## Gesamt und Kategorien######## +-- ################################################## + +<#assign ebene=1/> +<#if projektcount>1> +insert into tmp_erg2 (ebene,katsort,projnr_ins,key,bewill,einnahmen,ausgaben,fest,vojs,rest,offsoll_e,verfuegbar,verfuegbar_geld) +select 1,0,'Gesamt','Gesamt',sum(bewill),sum(einnahmen),sum(ausgaben),sum(fest) ,sum(vojs),sum(rest),sum(offsoll_e),sum(verfuegbar),sum(verfuegbar_geld) +from tmp_erg +group by 1,2,3,4; +<#if K_hs_nr=6720> +--Spezialberechung Biberach z.B. Projekt 900300 +update tmp_erg2 set vojs=(select sum(vojs) from tmp_vojs) where ebene=1 and katsort=0; + + +<#assign ebene=2/> +<#if drittmittelprojektkategorien?exists> +create temp table tmp_fb (buchungsab_fb char(12)) <@informixnolog/>; + +<#assign ebene=3/> +<#foreach k in drittmittelprojektkategorien> +<#assign katsort=katsort+1/> +delete from tmp_fb; +insert into tmp_fb +select distinct buchungsab_fb from fin_konto_aggr where rechnungsjahr>=${drittmittelprojektestartjahr} +/* and rechnungsjahr=<> */ +and ${drittmittelprojektebedingung} +and <#if k.bedingung!='rest'>${k.bedingung} + <#else> + <#foreach k2 in drittmittelprojektkategorien> + <#if k2.bedingung!='rest'>not (${k2.bedingung}) and + + 1=1 --if Hochschule = Mannheim and zweckbestimmung_ut!='' + ; +update tmp_erg set katsort=${katsort} where buchungsab_fb in (select buchungsab_fb from tmp_fb); +update tmp_erg2 set katsort=${katsort} where buchungsab_fb in (select buchungsab_fb from tmp_fb); +insert into tmp_erg2 (ebene,katsort,buchungsab_fb,projnr_ins,key,bewill,einnahmen,ausgaben,fest,vojs,rest,offsoll_e,verfuegbar,verfuegbar_geld) +select 2,${katsort},'-','${k.name}','${k.name}',sum(bewill),sum(einnahmen),sum(ausgaben),sum(fest) ,sum(vojs),sum(rest),sum(offsoll_e),sum(verfuegbar),sum(verfuegbar_geld) +from tmp_erg where + buchungsab_fb in (select buchungsab_fb from tmp_fb) +group by 1,2,3,4,5; +<#if K_hs_nr=6720> +--Spezialberechung Biberach z.B. Projekt 900300 +update tmp_erg2 set vojs=(select sum(vojs) from tmp_vojs where buchungsab_fb in (select buchungsab_fb from tmp_fb)) + where ebene=2 and katsort=${katsort}; + + + + +drop table tmp_fb; + + +<#else> -- nur ein Projekt ??? +--geht nicht mit mehreren Projekten weil stylesheet mit | durcheinanderkommt +<#assign params><#if projekte?is_sequence>'&Buchungsab_fb=<#foreach p in projekte>${p.id}<#if p_has_next>X'<#else>'&Buchungsab_fb=unbekannt'||'&ab Haushaltsjahr='||trim((select distinct min(jahr) from tmp_erg)) +<#if "<>"!=""><#assign params=params+"||'&bis Haushaltsjahr=<>'"/> +update tmp_erg2 set +linkkoa='${linkkoa}'||${params}, +linkkoa2='${linkkoa}${koa2}'||${params}, +linkbuchakts='${linkbuch}${bakts}'||${params}, +linkbuchf='${linkbuch}${bf}'||${params}, +linkbuchein='${linkbuch}${bein}'||${params}, +linkbuchoffsolle='${linkbuch}${boffsolle}'||${params}, +linkbuchaus='${linkbuch}${baus}'||${params}, +linkbuchspezial='${linkbuch}${bspezial}'||${params} + +where katsort=1000; + + +<#if !(Haushaltsjahr?exists)||"<>"=""||K_hs_nr!=6760> --bei HS KA keine Projektsummenzeile wenn Haushaltsjahr gewaehlt +-- Summenzeilen auf Projektebene +<#assign projektebene=ebene/> +<#assign summenebene=ebene/> +insert into tmp_erg2 (ebene,katsort,buchungsab_fb,key,bewill,einnahmen,ausgaben,fest,vojs,rest,offsoll_e,verfuegbar,verfuegbar_geld) +select distinct ${ebene},katsort,buchungsab_fb,buchungsab_fb,sum(bewill),sum(einnahmen),sum(ausgaben),sum(fest),sum(vojs),sum(rest),sum(offsoll_e),sum(verfuegbar),sum(verfuegbar_geld) +from tmp_erg +group by 1,2,3,4; +--Spezialbearbeitung Uni Regensburg +<#if K_hs_nr=1341> +update tmp_erg2 set pjlname1=(select pjlname1 from fin_proj where projnr = tmp_erg2.buchungsab_fb and ebene=${projektebene}); + +--Namen eintragen möglichst bezeichnung von aktuellem jahr, falls älteres projekt von vorjahren +create temp table tmp_projnames (key char(10),jahr smallint,name varchar(255)) <@informixnolog/>; +insert into tmp_projnames (key,jahr) +select buchungsab_fb,max(jahr) from fin_buchab_fb where buchungsab_fb in (select buchungsab_fb from tmp_erg2) +/* and jahr=<> */ +group by 1; +update tmp_projnames set name=(select min(ktobez) from fin_buchab_fb where tmp_projnames.key=fin_buchab_fb.buchungsab_fb and tmp_projnames.jahr=fin_buchab_fb.jahr); +update tmp_erg2 set name=(select min(name) from tmp_projnames where tmp_projnames.key=tmp_erg2.buchungsab_fb) +where ebene=${ebene} ; +drop table tmp_projnames; + +create index ix_tmp_erg2a on tmp_erg2 (ebene); + +create temp table tmp_minjahr (buchungsab_fb char(12),minjahr char(4)) <@informixnolog/>; +insert into tmp_minjahr (buchungsab_fb,minjahr) select buchungsab_fb,min(jahr) from tmp_erg group by 1; + + +<#assign params>'&Buchungsab_fb='||trim(buchungsab_fb)||'&ab Haushaltsjahr='||trim((select minjahr from tmp_minjahr where tmp_erg2.buchungsab_fb=tmp_minjahr.buchungsab_fb)) +<#assign paramsFestOffSoll=params/> +<#if K_hs_nr=6850> --HFT Stuttgart Festlegungen und offSoll nur ab aktuellem Haushaltsjahr +<#assign paramsFestOffSoll>'&Buchungsab_fb='||trim(buchungsab_fb)||'&ab Haushaltsjahr=${yeartoday}' + +<#if "<>"!=""><#assign params=params+"||'&bis Haushaltsjahr=<>'"/> +update tmp_erg2 set linkkoa='${linkkoa}'||${params}, +linkkoa2='${linkkoa}${koa2}'||${params}, +linkbuchakts='${linkbuch}${bakts}'||${params}, +linkbuchf='${linkbuch}${bf}'||${paramsFestOffSoll}, +linkbuchein='${linkbuch}${bein}'||${params}, +linkbuchoffsolle='${linkbuch}${boffsolle}'||${paramsFestOffSoll}, +linkbuchaus='${linkbuch}${baus}'||${params}, +linkbuchspezial='${linkbuch}${bspezial}'||${params} +where ebene=${ebene}; +<#assign ebene=ebene+1/> +<#else> +<#assign summenebene=ebene-1/> + + +-- ################################################## +-- ########## Summenzeile fuer ausgabeart/jahr wird hinzugefuegt ########## +-- ################################################## +<#if Sortierung = "ausgabeart"> +insert into tmp_erg2 (ebene,katsort,buchungsab_fb,projnr_ins,key,bewill,einnahmen,ausgaben,fest,vojs,rest,offsoll_e,verfuegbar,verfuegbar_geld) +select distinct ${ebene},katsort,buchungsab_fb,projnr_ins,projnr_ins,sum(bewill),sum(einnahmen),sum(ausgaben),sum(fest),sum(vojs),sum(rest),sum(offsoll_e),sum(verfuegbar),sum(verfuegbar_geld) +from tmp_erg where projnr_ins!='' +group by ebene,katsort,buchungsab_fb,projnr_ins,key; +--name besser nachtragen als group by wegen moeglicherweise unterschiedlichen Bezeichnungen +create temp table tmp_name (buchungsab_fb char(12),projnr_ins char(10),ktobez varchar(255)); +insert into tmp_name select buchungsab_fb,projnr_ins,min(ktobez) from fin_projnr_ins group by 1,2; +create index ix_tmpname1 on tmp_name (buchungsab_fb,projnr_ins); + + + +update tmp_erg2 set name=(select ktobez from tmp_name where tmp_erg2.projnr_ins=tmp_name.projnr_ins +and tmp_erg2.buchungsab_fb=tmp_name.buchungsab_fb) where projnr_ins is not null and projnr_ins!='' and name is null + and ebene=${ebene}; +drop table tmp_name; + <#assign params>'&Buchungsab_fb='||trim(buchungsab_fb)||'&Projnr_ins='||trim(projnr_ins)||'&ab Haushaltsjahr='||trim((select minjahr from tmp_minjahr where tmp_minjahr.buchungsab_fb=tmp_erg2.buchungsab_fb)) +<#assign paramsFestOffSoll=params/> +<#if K_hs_nr=6850> --HFT Stuttgart Festlegungen und offSoll nur aktuelles Haushaltsjahr +<#assign paramsFestOffSoll>'&Buchungsab_fb='||trim(buchungsab_fb)||'&Projnr_ins='||trim(projnr_ins)||'&ab Haushaltsjahr=${yeartoday}' + +<#if "<>"!=""><#assign params=params+"||'&bis Haushaltsjahr=<>'"/> +update tmp_erg2 set linkkoa='${linkkoa}'||${params}, +linkkoa2='${linkkoa}{koa2}'||${params}, +linkbuchakts='${linkbuch}${bakts}'||${params}, +linkbuchf='${linkbuch}${bf}'||${paramsFestOffSoll}, +linkbuchein='${linkbuch}${bein}'||${params}, +linkbuchoffsolle='${linkbuch}${boffsolle}'||${paramsFestOffSoll}, +linkbuchaus='${linkbuch}${baus}'||${params}, +linkbuchspezial='${linkbuch}${bspezial}'||${params} +where ebene=${ebene}; +<#assign ebene=ebene+1/> + + + +<#if Sortierung = "jahr"> + +insert into tmp_erg2 (ebene,katsort,buchungsab_fb,projnr_ins,jahr,key,bewill,einnahmen,ausgaben,fest,vojs,rest,offsoll_e,verfuegbar,verfuegbar_geld) +select distinct ${ebene},katsort,buchungsab_fb,'Summe',jahr,jahr,sum(bewill),sum(einnahmen),sum(ausgaben),sum(fest),sum(vojs),sum(rest),sum(offsoll_e),sum(verfuegbar),sum(verfuegbar_geld) +from tmp_erg +group by 1,2,3,4,5,6; +<#assign params>'&Buchungsab_fb='||trim(buchungsab_fb)||'&ab Haushaltsjahr='||trim(jahr)||'&bis Haushaltsjahr='||trim(jahr) +update tmp_erg2 set linkkoa='${linkkoa}'||${params}, +linkkoa2='${linkkoa}${koa2}'||${params}, +linkbuchakts='${linkbuch}${bakts}'||${params}, +linkbuchf='${linkbuch}${bf}'||${params}, +linkbuchein='${linkbuch}${bein}'||${params}, +linkbuchoffsolle='${linkbuch}${boffsolle}'||${params}, +linkbuchaus='${linkbuch}${baus}'||${params}, +linkbuchspezial='${linkbuch}${bspezial}'||${params} +where projnr_ins='Summe' +and jahr != '' +and jahr is not null; +<#assign ebene=ebene+1/> + + +update tmp_erg2 set ebene=${ebene} where detail=1; + +update tmp_erg2 set vojs=0 where vojs is null; + +update tmp_erg2 set linkbuchvojs=replace(linkbuchein,'7-ein','10-vojs'); + +-- bei allen ohne projnr_ins werden die Links geloescht +update tmp_erg2 set linkkoa='',linkbuchakts='',linkbuchf='',linkbuchein='',linkbuchaus='',linkbuchvojs='' where name='ohne Ausgabeart'; +update tmp_erg2 set projnr_ins_sort=projnr_ins; +update tmp_erg2 set projnr_ins_sort='0000',linkkoa='' where projnr_ins='E0001'; + + + + + +<#if K_hs_nr=6720> +--Spezialberechung Biberach z.B. Projekt 900300 +update tmp_erg2 set vojs=( + select sum(vojs) from tmp_vojs where tmp_vojs.buchungsab_fb=tmp_erg2.buchungsab_fb) +where ebene=${projektebene} and buchungsab_fb is not null; +update tmp_erg2 set vojs=0 where ebene=${projektebene} and buchungsab_fb is not null and vojs is null; +drop table tmp_vojs; + + + + +update tmp_erg2 set saldobewill=bewill-ausgaben-fest, +saldoeinnahme= +-- HFT Stuttgart ohne Vojs +<#if K_hs_nr!=6850>vojs+einnahmen-ausgaben-fest; + + + +<#if Sortierung = "ausgabeart"> +--bei Darstellung nach ausgabeart saldo nur bei Gesamtzeile zeigen +update tmp_erg2 set saldoeinnahme=null where ebene>${projektebene}; + + +--wenn es nicht mehrere Ausgabearten gibt, wird nur die Bezeichnungspalte angezeigt +<#if ausgabeartcount<2> +update tmp_erg2 set name=projnr_ins where projnr_ins!='' and projnr_ins is not null; + + + +drop table tmp_erg; + +update tmp_erg2 set jahrsort=jahr; +update tmp_erg2 set jahrsort=0 where jahrsort is null; +update tmp_erg2 set projnr_ins_sort='' where projnr_ins_sort is null; + +/*delete from tmp_erg2 where ebene> <>; */ + +--Spezialbearbeitung Biberach z.B. Projekt 900300 +<#if K_hs_nr=6720> +update tmp_erg2 set vojs=null where ebene>${summenebene}; +update tmp_erg2 set fest=null,linkbuchf=null where ebene>${summenebene} and jahr!=year(today()); --Festlegungen nur bei aktuellem Haushaltsjahr +update tmp_erg2 set saldoeinnahme=null where ebene>${summenebene}; + +--Spezialbearbeitung Hochschule Karlsruhe +<#if K_hs_nr=6760> +<#if Haushaltsjahr?exists&&"<>"!=""> +update tmp_erg2 set key=buchungsab_fb,name=(select min(ktobez) from fin_buchab_fb where tmp_erg2.buchungsab_fb=fin_buchab_fb.buchungsab_fb) +where ebene>${summenebene}; --in Karlsruhe nur Projekte keine Ausgabearten +<#else> +update tmp_erg2 set vojs=null,fest=null,linkbuchf=null,linkbuchvojs=null,saldoeinnahme=null where ebene<=${summenebene} ; + + +--Spezialbearbeitung HFT Stuttgart +<#if K_hs_nr=6850> +update tmp_erg2 set linkbuchf=null,linkbuchoffsolle=null where jahr +--Spezialbearbeitung HS Weingarten +<#if K_hs_nr=6820> +update tmp_erg2 set vojs=null,fest=null,linkbuchf=null,linkbuchvojs=null,saldoeinnahme=null where ebene<=${summenebene} ; + + + +-- Ö umkodieren +--update tmp_erg2 set linkkoa= replace(linkkoa,'Ö','%D6'); +--update tmp_erg2 set linkkoa2=replace(linkkoa2,'Ö','%D6'); +--update tmp_erg2 set linkbuchakts=replace(linkbuchakts,'Ö','%D6'); +--update tmp_erg2 set linkbuchf=replace(linkbuchf,'Ö','%D6'); +--update tmp_erg2 set linkbuchein=replace(linkbuchein,'Ö','%D6'); +--update tmp_erg2 set linkbuchoffsolle=replace(linkbuchoffsolle,'Ö','%D6'); +--update tmp_erg2 set linkbuchaus=replace(linkbuchaus,'Ö','%D6'); +<#if speziellerBuchungsbericht?exists> +update tmp_erg2 set linkspezialbuchungsb=replace(linkbuchaus,'888880160','${speziellerBuchungsbericht}'); +update tmp_erg2 set linkspezialbuchungsb=replace(linkspezialbuchungsb,'&Buchungsart=6-aus',''); +update tmp_erg2 set linkspezialbuchungsb=replace(linkspezialbuchungsb,'SuperXmlTabelle?tid=',''); + + +drop table tmp_minjahr; + + + +-- ###### Funktion isWanted ######################### +<#function isWanted field> +<#assign result=true> +<#if (field?index_of('bewill')>-1 && bewillsum?is_number&&bewillsum=0) ><#assign result=false/> +<#if field?starts_with('linkbuch')&&Einzelbuchrecht?exists&&Einzelbuchrecht?is_number&&Einzelbuchrecht=0><#assign result=false/> +<#if (field='einnahmen'||field='offsoll_e'||field?starts_with('linkbuchein')||field?starts_with('linkbuchoffsolle'))&&"<>"!="'ja'"><#assign result=false/> +--<#if field='key'&&projektcount<2&&ausgabeartcount<2> <#assign result=false/> +<#return result> + + +-- ################################################## +-- ########## Select fuer Ergebnistabelle ############ +-- ################################################## +-- customize automatisch die felder aus... + +<#if customize?exists> + select + <#foreach f in customize.resulttable> + <#if isWanted(f.field)> + ${f.field} <#if f_has_next>, + + + from tmp_erg2 T + <#if Sortierung = "ausgabeart"> + order by katsort,buchungsab_fb,projnr_ins_sort,ebene,jahrsort + <#elseif Sortierung = "jahr"> + order by katsort,buchungsab_fb,jahrsort,ebene,projnr_ins_sort + ; + +<#else> + -- hier der uebliche select + select ebene , +-- <#if projektcount>1||ausgabeartcount>1> key, + key, + name , jahr, vojs, + <#if isWanted("bewill")> bewill , + <#if isWanted("einnahmen")> einnahmen , + <#if isWanted("offsoll_e")> offsoll_e, +ausgaben, +fest ,--verfuegbar, + <#if isWanted("bewill")> saldobewill , + saldoeinnahme , + linkkoa as nextwindowtable4, + <#if isWanted("bewill")> linkbuchakts as hidden_bewill, + linkbuchf as hidden_fest, + <#if isWanted("einnahmen")>linkbuchein as hidden_einnahmen, + <#if isWanted("linkbuchoffsolle")> linkbuchoffsolle as hidden_offsoll_e, + linkbuchaus as hidden_ausgaben + from tmp_erg2 + <#if Sortierung = "ausgabeart"> + order by katsort,buchungsab_fb,projnr_ins_sort,ebene,jahrsort + <#elseif Sortierung = "jahr"> + order by katsort,buchungsab_fb,jahrsort,ebene,projnr_ins_sort + ; +]]> + +<#assign result=true> +<#if (field?index_of('bewill')>-1 && bewillsum?is_number&&bewillsum=0) ><#assign result=false/> +<#if field?starts_with('linkbuch')&&Einzelbuchrecht?exists&&Einzelbuchrecht?is_number&&Einzelbuchrecht=0><#assign result=false/> +<#if (field='einnahmen'||field='offsoll_e'||field?starts_with('linkbuchein')||field?starts_with('linkbuchoffsolle'))&&"<>"!="'ja'"><#assign result=false/> +--<#if field='key'&&projektcount<2&&ausgabeartcount<2> <#assign result=false/> +<#return result> + +XIL List + drop_and_delete movable_columns sizable_columns horizontal_scrolling white_space_color=COLOR_WHITE min_heading_height=35 +fixed_columns=2 +<#if CUSTOM_888880120?exists> +xxx +<#assign inlineTemplate=CUSTOM_888880120?interpret> +<@inlineTemplate/> + +<#if customize?exists> +<#foreach f in customize.resulttable> +<#if isWanted(f.field)> +Column CID=2 heading_text="${f.caption}" center_heading +row_selectable col_selectable heading_platform readonly width=${f.width} + + +<#else> +Column CID=0 heading_text="Gliederung" center_heading explanation="" row_selectable col_selectable heading_platform readonly width=10 text_size=10 + <#if isWanted("key")> +Column CID=0 heading_text="<#if projektcount>1||"<>"!=""||"<>"!="">Projekt/Ausgabeart" explanation="" center_heading row_selectable col_selectable heading_platform readonly width=9 text_size=0 + +Column CID=0 heading_text="Bezeichnung" explanation="" center_heading row_selectable col_selectable heading_platform readonly width=9 text_size=0 +Column CID=0 heading_text="Jahr" explanation="" center_heading row_selectable col_selectable heading_platform readonly width=50 text_size=50 +Column CID=0 heading_text="Vorjahresrest" explanation="" center_heading row_selectable col_selectable heading_platform readonly width=20 +<#if isWanted("bewill")> +Column CID=0 heading_text="Bewilligung" explanation="" center_heading row_selectable col_selectable heading_platform readonly width=20 + +<#if isWanted("einnahmen")> +Column CID=0 heading_text="Einnahmen" explanation="" center_heading row_selectable col_selectable heading_platform readonly width=17 text_size=8 + +<#if isWanted("offsoll_e")> +Column CID=0 heading_text="ausstehende\nEinnahmen (OP)" explanation="" center_heading row_selectable col_selectable heading_platform readonly width=17 text_size=8 + +Column CID=0 heading_text="Ausgaben" explanation="@@@fin_ausgaben@@@" center_heading row_selectable col_selectable heading_platform readonly width=17 text_size=15 +Column CID=0 heading_text="Festlegungen" explanation="@@@fin_festgelegt@@@" center_heading row_selectable col_selectable heading_platform readonly width=17 text_size=15 +<#if isWanted("bewill")> +Column CID=0 heading_text="Saldo\ngegen Bewilligung" explanation="" center_heading row_selectable col_selectable heading_platform readonly width=17 text_size=8 + +Column CID=0 heading_text="Saldo\ngegen Einnahme" explanation="" center_heading row_selectable col_selectable heading_platform readonly width=17 text_size=8 +Column CID=0 heading_text="Details Koa" explanation="Details nach Kostenarten - wenn Sie den Link anklicken erhalten Sie in einem neuen Fenster Details nach Kostenarten" center_heading row_selectable col_selectable heading_platform readonly width=17 text_size=8 +<#if isWanted("bewill")> +Column CID=0 heading_text="Buchungen\nBewilligung" explanation="wenn Sie den Link anklicken, erscheinen Einzelbuchungen zu Bewilligungen in einem neuen Fenster" center_heading row_selectable col_selectable heading_platform readonly width=17 + +Column CID=0 heading_text="Buchungen\nFestlegungen" explanation="wenn Sie den Link anklicken, erscheinen Einzelbuchungen zu Festlegungen in einem neuen Fenster" center_heading row_selectable col_selectable heading_platform readonly width=17 text_size=8 +<#if isWanted("einnahmen")> +Column CID=0 heading_text="Buchungen\nEinnahmen" explanation="wenn Sie den Link anklicken, erscheinen Einzelbuchungen zu den Einnahmen in einem neuen Fenster" center_heading row_selectable col_selectable heading_platform readonly width=17 text_size=8 + +<#if isWanted("linkbuchoffsolle")> +Column CID=0 heading_text="Buchungen\nausst.Einnahmen" explanation="wenn Sie den Link anklicken, erscheinen Einzelbuchungen zu den ausst. Einnahmen in einem neuen Fenster" center_heading row_selectable col_selectable heading_platform readonly width=17 text_size=8 + +Column CID=0 heading_text="Buchungen\nAusgaben" explanation="wenn Sie den Link anklicken, erscheinen Einzelbuchungen zu den Ausgaben in einem neuen Fenster" center_heading row_selectable col_selectable heading_platform readonly width=17 text_size=8 + + +@@@]]> + + +> SELECT distinct ord,name FROM aggregierung where kategorie='FIN-Jahr' and ord>=2005 order by 1;]]> +> select distinct lehr,lehr from fin_proj where lehr like 'SFB%' order by 1]]> +> select id,caption from sx_repository where art='FIN_DRITTMITTELP_GRUPPE' and aktiv=1 order by sort1,caption]]> +> select 'ja','ja' from xdummy union select 'nein','nein' from xdummy;]]> +> select tid,type,name from sichten where art='FIN-Kostenstellen-Sicht' and aktiv=1 order by type,tid DESC]]> +> select wert, name from aggregierung where kategorie = 'ZeitraumMonat';]]> +> +--freemarker template +<#include "SQL_lingua_franca"/> +<#include "SuperX_general"/> +<#assign template = FIN_DRITTMITTELPROJEKTE?interpret> +<@template/> +--erwartet drittmittelstartjahr und drittmittelprojektebedingung + +create temp table tmp_proj (key char(12),jahr smallint) <@informixnolog/>; + +insert into tmp_proj (key,jahr) select buchungsab_fb,max(jahr) from fin_buchab_fb B +where +( +<#if berechtigung_via_hauptbetreuungskostenstellen&&Kostenstelle.elementsMaxEbene>1> + buchungsab_fb in (select distinct projnr from fin_proj_to_inst where haupt_kst_kz='1' and inst_nr in <@printkeys Kostenstelle.allNeededKeys/> ) +or + + (${SxFinRechte("K1","31.12.2010","","","","")}) +) +<#if "<>"!=""&&Kostenstelle.elementsMaxEbene>1> +and buchungsab_fb in (select distinct projnr from fin_proj_to_inst where haupt_kst_kz='1' and inst_nr in <@printkeys Kostenstelle.allNeededKeys/> ) + +and jahr>=${drittmittelprojektestartjahr} +and ${drittmittelprojektebedingung} +<#if Projektleiter?exists&&"<>"!=""> +and buchungsab_fb in (select projnr from fin_proj where pjlname1 in (<>)) + +<#if MaxJahreProjektAbgelaufen?exists> +and buchungsab_fb in (select projnr from fin_proj where ${ProjektAbgelaufenFeld} is null or year(${ProjektAbgelaufenFeld})>=(year(today())-${MaxJahreProjektAbgelaufen})) + +/* and jahr=<> */ +group by buchungsab_fb +; + select distinct key, trim(key)||'-'::char(1)||trim(ktobez) from fin_buchab_fb join tmp_proj + on fin_buchab_fb.buchungsab_fb = tmp_proj.key and fin_buchab_fb.jahr = tmp_proj.jahr + order by key; +drop table tmp_proj;]]> +> +--Freemarker Template +<#include "SQL_lingua_franca"/> +<#include "SuperX_general"/> +<@procedure name='sp_fin_user_projnrins' paramlist='<>,<>'/>; +select distinct projnr_ins,trim(projnr_ins)||'-'||max(name) from tmp_projnr_ins where 1=1 /* and jahr=<> */ /* and kapitel=<> */ +/* and (dr in (<>) */ +/* or dr2 in (<>)) */ + /* and titel in (<>) */ /* and buchungsab_fb in (<>) */ group by 1 order by 1;drop table tmp_projnr_ins;]]> +> select distinct ins2,trim(ins2)||'-'||max(ktobez) from fin_ins2 where 1=1 /* and jahr=<> */ /* and kapitel in (<>) */ +/* and (dr in (<>) */ +/* or dr2 in (<>)) */ +/* and titel in (<>) */ /* and buchungsab_fb in (<>) */ +/* and projnr_ins in (<>) */ +group by 1 order by 1;]]> +> select distinct ins3,trim(ins3)||'-'||max(ktobez) from fin_ins3 where 1=1 /* and jahr=<> */ /* and kapitel=<> */ +/* and (dr in (<>) */ +/* or dr2 in (<>)) */ +/* and titel=<> */ /* and buchungsab_fb in (<>) */ /* and projnr_ins in (<>) */ /* and ins2 in (<>) */ group by 1 order by 1]]> +> +<#assign template = FIN_DRITTMITTELPROJEKTE?interpret> +<@template/> +select distinct pjlname1,pjlname1 from fin_proj where pjlname1 is not null and pjlname1!='' +and projnr in ( +select distinct buchungsab_fb from fin_buchab_fb where +( +<#if berechtigung_via_hauptbetreuungskostenstellen&&Kostenstelle.elementsMaxEbene>1> + buchungsab_fb in (select distinct projnr from fin_proj_to_inst where haupt_kst_kz='1' and inst_nr in <@printkeys Kostenstelle.allNeededKeys/> ) +or + + (${SxFinRechte("K1","31.12.2010","","","","")}) +) +<#if "<>"!=""&&Kostenstelle.elementsMaxEbene>1> +and buchungsab_fb in (select distinct projnr from fin_proj_to_inst where haupt_kst_kz='1' and inst_nr in <@printkeys Kostenstelle.allNeededKeys/> ) + + +and jahr>=${drittmittelprojektestartjahr} +and ${drittmittelprojektebedingung} + +) order by 1]]> +> select tid,type,name,sortnr from sichten where art='FIN-Kosten-/Erlösarten-Sicht' and aktiv=1 order by sortnr,type,name]]> +> select tid,type,name,sortnr from sichten where art='FIN-Kostenträger-Sicht' and aktiv=1 order by sortnr,type,name]]> +>select tid,type,name,sortnr from sichten where art ='Geldgeber-Sicht (FIN)' and aktiv=1 order by sortnr,type,name;]]> +> select 'aufklapp','mit Aufklappfunktion' from xdummy union select 'tab','Tabelle' from xdummy]]> +> select distinct dr,ktobez from fin_dr where 1=1 /* and jahr=<> */ /* and kapitel=<> */ order by ktobez]]> +> select 'ja','ja' from xdummy union select 'nein','nein' from xdummy;]]> +> select id,caption from sx_repository where art='FIN_FINANZIERUNGSQUELLE' and aktiv=1 and gueltig_seit<=date_val('1.1.<>') and gueltig_bis>=date_val('31.12.<>')]]> +> select content,caption from sx_repository where aktiv=1 and today() between gueltig_seit and gueltig_bis and art='FIN_Filter']]> +> select 'jahr','Jahr' from xdummy union select 'ausgabeart','Ausgabeart' from xdummy;]]> +