1 changed files with 808 additions and 0 deletions
@ -0,0 +1,808 @@
@@ -0,0 +1,808 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?> |
||||
<xupdate> |
||||
|
||||
<!-- fuer Maske 888880080--> |
||||
<themenbaum maskentid="888880080" parentname="Haushalt"/> |
||||
<!--Hier Themenbaumparent eintragen Name z.B: Haushalt--> |
||||
<sql>delete from maskeninfo where tid = 888880080;</sql> |
||||
<sql>delete from themenbaum where maskeninfo_id = 888880080;</sql> |
||||
<sql>delete from felderinfo where tid in (select felderinfo_id from masken_felder_bez where maskeninfo_id = 888880080);</sql> |
||||
<sql>delete from masken_felder_bez where maskeninfo_id = 888880080;</sql> |
||||
<sql>delete from sachgeb_maske_bez where maskeninfo_id = 888880080;</sql> |
||||
<sql>delete from maske_system_bez where maskeninfo_id = 888880080;</sql> |
||||
<sql><![CDATA[insert into maskeninfo (tid,name,chart_xtitel,chart_ytitel) values (888880080,'','','');]]></sql> |
||||
<sql><![CDATA[update maskeninfo set name='Kostenartenbericht' where tid=888880080;]]></sql> |
||||
<sql><![CDATA[update maskeninfo set cleanup_stmt='drop table tmp_erg2;', frontend=1, breite=750, hoehe=550, hilfe=1 where tid=888880080;]]></sql> |
||||
<sql>insert into maske_system_bez (maskeninfo_id,systeminfo_id) values (888880080,3);</sql> |
||||
<sql>insert into sachgeb_maske_bez (maskeninfo_id,sachgebiete_id) values (888880080,50);</sql> |
||||
<sql>insert into masken_felder_bez (maskeninfo_id,felderinfo_id) values (888880080,888880080);</sql> |
||||
<sql>insert into masken_felder_bez (maskeninfo_id,felderinfo_id) values (888880080,888880081);</sql> |
||||
<sql>insert into masken_felder_bez (maskeninfo_id,felderinfo_id) values (888880080,888880082);</sql> |
||||
<sql>insert into masken_felder_bez (maskeninfo_id,felderinfo_id) values (888880080,888880083);</sql> |
||||
<sql>insert into masken_felder_bez (maskeninfo_id,felderinfo_id) values (888880080,888880084);</sql> |
||||
<sql>insert into masken_felder_bez (maskeninfo_id,felderinfo_id) values (888880080,888880085);</sql> |
||||
<sql>insert into masken_felder_bez (maskeninfo_id,felderinfo_id) values (888880080,888880086);</sql> |
||||
<sql>insert into masken_felder_bez (maskeninfo_id,felderinfo_id) values (888880080,888880087);</sql> |
||||
<sql>insert into masken_felder_bez (maskeninfo_id,felderinfo_id) values (888880080,888880088);</sql> |
||||
<sql>insert into masken_felder_bez (maskeninfo_id,felderinfo_id) values (888880080,888880089);</sql> |
||||
<sql>insert into masken_felder_bez (maskeninfo_id,felderinfo_id) values (888880080,888880090);</sql> |
||||
<sql>insert into masken_felder_bez (maskeninfo_id,felderinfo_id) values (888880080,888880091);</sql> |
||||
<sql>insert into masken_felder_bez (maskeninfo_id,felderinfo_id) values (888880080,888880092);</sql> |
||||
<sql>insert into masken_felder_bez (maskeninfo_id,felderinfo_id) values (888880080,888880093);</sql> |
||||
<sql>insert into masken_felder_bez (maskeninfo_id,felderinfo_id) values (888880080,888880094);</sql> |
||||
<sql>insert into masken_felder_bez (maskeninfo_id,felderinfo_id) values (888880080,888880095);</sql> |
||||
<sql>insert into masken_felder_bez (maskeninfo_id,felderinfo_id) values (888880080,888880096);</sql> |
||||
<sql>insert into masken_felder_bez (maskeninfo_id,felderinfo_id) values (888880080,888880097);</sql> |
||||
<sql>insert into masken_felder_bez (maskeninfo_id,felderinfo_id) values (888880080,888880098);</sql> |
||||
<sql>insert into masken_felder_bez (maskeninfo_id,felderinfo_id) values (888880080,888880099);</sql> |
||||
<sql><![CDATA[insert into felderinfo (tid,name,nummer,x,y,buttonbreite,feldbreite,zeilenanzahl,typ,laenge) values (888880080,'',0,0,0,100,50,1,'integer',30);]]></sql> |
||||
<sql><![CDATA[insert into felderinfo (tid,name,nummer,x,y,buttonbreite,feldbreite,zeilenanzahl,typ,laenge) values (888880081,'',10,0,0,100,150,1,'char',30);]]></sql> |
||||
<sql><![CDATA[insert into felderinfo (tid,name,nummer,x,y,buttonbreite,feldbreite,zeilenanzahl,typ,laenge) values (888880082,'',15,0,0,100,400,3,'char',150);]]></sql> |
||||
<sql><![CDATA[insert into felderinfo (tid,name,nummer,x,y,buttonbreite,feldbreite,zeilenanzahl,typ,laenge) values (888880083,'',21,0,0,100,150,3,'char',30);]]></sql> |
||||
<sql><![CDATA[insert into felderinfo (tid,name,nummer,x,y,buttonbreite,feldbreite,zeilenanzahl,typ,laenge) values (888880084,'',1020,0,0,100,150,1,'char',30);]]></sql> |
||||
<sql><![CDATA[insert into felderinfo (tid,name,nummer,x,y,buttonbreite,feldbreite,zeilenanzahl,typ,laenge) values (888880085,'',26,0,0,100,150,3,'char',50);]]></sql> |
||||
<sql><![CDATA[insert into felderinfo (tid,name,nummer,x,y,buttonbreite,feldbreite,zeilenanzahl,typ,laenge) values (888880086,'',30,0,0,100,150,3,'char',30);]]></sql> |
||||
<sql><![CDATA[insert into felderinfo (tid,name,nummer,x,y,buttonbreite,feldbreite,zeilenanzahl,typ,laenge) values (888880087,'',60,0,0,100,150,3,'char',30);]]></sql> |
||||
<sql><![CDATA[insert into felderinfo (tid,name,nummer,x,y,buttonbreite,feldbreite,zeilenanzahl,typ,laenge) values (888880088,'',70,0,0,100,150,3,'char',30);]]></sql> |
||||
<sql><![CDATA[insert into felderinfo (tid,name,nummer,x,y,buttonbreite,feldbreite,zeilenanzahl,typ,laenge) values (888880089,'',60,0,0,100,150,3,'char',30);]]></sql> |
||||
<sql><![CDATA[insert into felderinfo (tid,name,nummer,x,y,buttonbreite,feldbreite,zeilenanzahl,typ,laenge) values (888880090,'',25,0,0,100,150,3,'char',30);]]></sql> |
||||
<sql><![CDATA[insert into felderinfo (tid,name,nummer,x,y,buttonbreite,feldbreite,zeilenanzahl,typ,laenge) values (888880091,'',1016,300,-1,100,150,3,'char',30);]]></sql> |
||||
<sql><![CDATA[insert into felderinfo (tid,name,nummer,x,y,buttonbreite,feldbreite,zeilenanzahl,typ,laenge) values (888880092,'',1035,300,-1,100,150,1,'char',30);]]></sql> |
||||
<sql><![CDATA[insert into felderinfo (tid,name,nummer,x,y,buttonbreite,feldbreite,zeilenanzahl,typ,laenge) values (888880093,'',1045,300,-1,100,150,1,'char',20);]]></sql> |
||||
<sql><![CDATA[insert into felderinfo (tid,name,nummer,x,y,buttonbreite,feldbreite,zeilenanzahl,typ,laenge) values (888880094,'',10,0,0,100,150,1,'char',30);]]></sql> |
||||
<sql><![CDATA[insert into felderinfo (tid,name,nummer,x,y,buttonbreite,feldbreite,zeilenanzahl,typ,laenge) values (888880095,'',19,0,0,100,150,3,'char',30);]]></sql> |
||||
<sql><![CDATA[insert into felderinfo (tid,name,nummer,x,y,buttonbreite,feldbreite,zeilenanzahl,typ,laenge) values (888880096,'',11,300,-1,100,150,1,'char',30);]]></sql> |
||||
<sql><![CDATA[insert into felderinfo (tid,name,nummer,x,y,buttonbreite,feldbreite,zeilenanzahl,typ,laenge) values (888880097,'',70,300,-1,100,30,1,'integer',5);]]></sql> |
||||
<sql><![CDATA[insert into felderinfo (tid,name,nummer,x,y,buttonbreite,feldbreite,zeilenanzahl,typ,laenge) values (888880098,'',55,0,0,100,150,1,'char',20);]]></sql> |
||||
<sql><![CDATA[update felderinfo set name='Haushaltsjahr' where tid=888880080;]]></sql> |
||||
<sql><![CDATA[update felderinfo set name='Kapitel' where tid=888880081;]]></sql> |
||||
<sql><![CDATA[update felderinfo set name='Finanzierungsquelle' where tid=888880082;]]></sql> |
||||
<sql><![CDATA[update felderinfo set name='Titel' where tid=888880083;]]></sql> |
||||
<sql><![CDATA[update felderinfo set name='Kostenstelle' where tid=888880084;]]></sql> |
||||
<sql><![CDATA[update felderinfo set name='FB_INS' where tid=888880085;]]></sql> |
||||
<sql><![CDATA[update felderinfo set name='Buchungsab_fb' where tid=888880086;]]></sql> |
||||
<sql><![CDATA[update felderinfo set name='Projnr_ins' where tid=888880087;]]></sql> |
||||
<sql><![CDATA[update felderinfo set name='ins2' where tid=888880088;]]></sql> |
||||
<sql><![CDATA[update felderinfo set name='ins3' where tid=888880089;]]></sql> |
||||
<sql><![CDATA[update felderinfo set name='Untertitel' where tid=888880090;]]></sql> |
||||
<sql><![CDATA[update felderinfo set name='Kostenarten' where tid=888880091;]]></sql> |
||||
<sql><![CDATA[update felderinfo set name='Kostenträger' where tid=888880092;]]></sql> |
||||
<sql><![CDATA[update felderinfo set name='Budgetherkunft' where tid=888880093;]]></sql> |
||||
<sql><![CDATA[update felderinfo set name='Kapitel' where tid=888880094;]]></sql> |
||||
<sql><![CDATA[update felderinfo set name='Deckungsring' where tid=888880095;]]></sql> |
||||
<sql><![CDATA[update felderinfo set name='Budgettyp' where tid=888880096;]]></sql> |
||||
<sql><![CDATA[update felderinfo set name='Filter bis Ebene' where tid=888880097;]]></sql> |
||||
<sql><![CDATA[update felderinfo set name='Art' where tid=888880098;]]></sql> |
||||
<sql><![CDATA[update felderinfo set obligatorisch=1, art=1, attribut='', defaultwert='<<SQL>> SELECT year(today()) FROM xdummy;' where tid=888880080;]]></sql> |
||||
<sql><![CDATA[update felderinfo set obligatorisch=0, art=999, attribut='', defaultwert='' where tid=888880081;]]></sql> |
||||
<sql><![CDATA[update felderinfo set obligatorisch=1, art=1, attribut='', defaultwert='' where tid=888880082;]]></sql> |
||||
<sql><![CDATA[update felderinfo set obligatorisch=0, art=1, attribut='', defaultwert='' where tid=888880083;]]></sql> |
||||
<sql><![CDATA[update felderinfo set obligatorisch=0, art=12, attribut='hidden', defaultwert='' where tid=888880084;]]></sql> |
||||
<sql><![CDATA[update felderinfo set obligatorisch=0, art=1, attribut='hidden', defaultwert='' where tid=888880085;]]></sql> |
||||
<sql><![CDATA[update felderinfo set obligatorisch=0, art=1, attribut='', defaultwert='' where tid=888880086;]]></sql> |
||||
<sql><![CDATA[update felderinfo set obligatorisch=0, art=1, attribut='', defaultwert='' where tid=888880087;]]></sql> |
||||
<sql><![CDATA[update felderinfo set obligatorisch=0, art=1, attribut='hidden', defaultwert='' where tid=888880088;]]></sql> |
||||
<sql><![CDATA[update felderinfo set obligatorisch=0, art=1, attribut='hidden', defaultwert='' where tid=888880089;]]></sql> |
||||
<sql><![CDATA[update felderinfo set obligatorisch=0, art=1, attribut='', defaultwert='' where tid=888880090;]]></sql> |
||||
<sql><![CDATA[update felderinfo set obligatorisch=0, art=12, attribut='', defaultwert='' where tid=888880091;]]></sql> |
||||
<sql><![CDATA[update felderinfo set obligatorisch=0, art=999, attribut='', defaultwert='' where tid=888880092;]]></sql> |
||||
<sql><![CDATA[update felderinfo set obligatorisch=0, art=999, attribut='', defaultwert='' where tid=888880093;]]></sql> |
||||
<sql><![CDATA[update felderinfo set obligatorisch=0, art=1, attribut='', defaultwert='' where tid=888880094;]]></sql> |
||||
<sql><![CDATA[update felderinfo set obligatorisch=0, art=1, attribut='', defaultwert='' where tid=888880095;]]></sql> |
||||
<sql><![CDATA[update felderinfo set obligatorisch=0, art=999, attribut='', defaultwert='' where tid=888880096;]]></sql> |
||||
<sql><![CDATA[update felderinfo set obligatorisch=0, art=999, attribut='', defaultwert='' where tid=888880097;]]></sql> |
||||
<sql><![CDATA[update felderinfo set obligatorisch=1, art=1, attribut='hidden', defaultwert='<<SQL>> select ''FIN_KOSTENART'',''FIN_KOSTENART'' from xdummy' where tid=888880098;]]></sql> |
||||
<text table="maskeninfo" field="select_stmt" where="tid=888880080"><![CDATA[--Freemarker Template |
||||
--15.6.10 in Link Kostenstellensicht (tid) eingebaut |
||||
--29.6.10 sx_butype eingebaut- FELDERINFO sx_butype EINBAUEN |
||||
-- 21.7.10 SxFinRechte replace * % |
||||
-- 16.9.10 sx_butype?exists |
||||
-- 8.10.10 bei FIN_EINNAHMEN keine Ausgaben anzeigen |
||||
-- 21.12.10 nur XIL: Spaltenfixierung auf 2 |
||||
-- 3.8.11 Einstellungsmöglichkeit ${drtit} |
||||
-- 25.8.11 Kostenstelle-Sicht nur wenn existiert |
||||
-- 6.10.11/27.2.12 4. Ebene |
||||
-- 4.12.12 link params replace angepasst |
||||
-- 8/13 koa2 sowie showEinzelTitel |
||||
-- 4.11.13 titel auf 10stellig |
||||
-- 6/17 prozentualer Anteil |
||||
-- 9/17 AKtuelles soll inklreste und geldreste, verfuegbar_geld |
||||
-- 10/17 hhans, akts_plus_vojs |
||||
-- 4/18 hhans_reste |
||||
-- 6/22 LInks für Monate |
||||
-- 10/24 Einschränkungsmöglichkeit auf bestimmte KLR-Kostenarten |
||||
|
||||
<#include "SQL_lingua_franca"/> |
||||
<#include "SuperX_general"/> |
||||
|
||||
<sqlvars> |
||||
<sqlvar name="maxmonat">select month(today()) from xdummy where year(today())=<<Haushaltsjahr>> union select 12 from xdummy where year(today())!=<<Haushaltsjahr>></sqlvar> |
||||
<sqlvar name="finkostenarten">CDATASTARTselect id,caption,content as strukturstr from sx_repository where aktiv=1 and |
||||
<#if "<<Art>>"!='FIN_KOSTENART'> art=<<Art>> <#else> art='FIN_KOSTENART'</#if> and gueltig_seit<=date_val('1.1.<<Haushaltsjahr>>') and gueltig_bis>=('1.1.<<Haushaltsjahr>>') order by sort1CDATAEND</sqlvar> |
||||
<sqlvar name="TMP_FINANZIERUNGSQUELLEN">select id,caption,content from sx_repository where aktiv=1 |
||||
/* and id in (<<Finanzierungsquelle>>) */ |
||||
and gueltig_seit<=date_val('1.1.<<Haushaltsjahr>>') and gueltig_bis>=('1.1.<<Haushaltsjahr>>') |
||||
</sqlvar> |
||||
<sqlvar name="KST_SICHT">select min(name_intern) from sichten where |
||||
name = 'KST_Budgetbericht_<<Haushaltsjahr>>' and systeminfoid=3 --FIN-Kopie |
||||
</sqlvar> |
||||
<sqlvar name="anzahl_klr_rechte">select count(*) from user_institution where userid=<<UserID>> |
||||
</sqlvar> |
||||
</sqlvars> |
||||
--<#if KST_SICHT?length<2> |
||||
--Keine Kostenstellensicht KST_Budgetbericht_<<Haushaltsjahr>> gefunden |
||||
--</#if> |
||||
<#assign linkbuchstart=""/> -- bei altem Kernmodul SuperXmlTabelle?tid= |
||||
<#assign verfuegbar_misch_aktiv=false/> |
||||
<#if CUSTOM_888880080?exists> |
||||
<#assign inlineTemplate=CUSTOM_888880080?interpret> |
||||
<@inlineTemplate/> |
||||
</#if> |
||||
|
||||
<#assign linkbuch="SuperXmlTabelle?tid=888880040&Haushaltsjahr=<<Haushaltsjahr>>&navi=true"/> |
||||
|
||||
<#if .vars['Kostenstelle-Sicht']?exists><#assign linkbuch=linkbuch+"&Kostenstelle-Sicht=${.vars['Kostenstelle-Sicht']}"/></#if> |
||||
--Referenz auf erste Kostenstelle wird fuer FREIES benoetigt |
||||
--<#assign kstelle='-999'> |
||||
--<#if anzahl_klr_rechte>0> |
||||
--<#assign kstelle=Kostenstelle.elements?first/> |
||||
--<#assign linkbuch=linkbuch+"&Kostenstelle="+kstelle.key> |
||||
--&+"Kostenstelle-Sicht="+KST_SICHT/> |
||||
--<#else> |
||||
--TODO klappt noch nicht als Fehlermeldung - verbessern |
||||
--<#if Finanzierungsquelle?index_of("FREIES")>-1> FEHLER FueR FREIES BUDGET MUSS EINE KOSTENSTELLE AUSGEWaeHLT SEIN</#if> |
||||
--</#if> |
||||
<#assign linkbuch=linkbuch+"&cachingcontrol=clearmask&Finanzierungsquelle="/> |
||||
--Finanzierungsquelle obligatorisch vorausgesetzt |
||||
|
||||
<#assign baus="&Buchungsart=6-aus"/> |
||||
<#if LinkFestlegung?exists&&LinkFestlegung='nur offene'> |
||||
<#assign bf="&Buchungsart=4b-ofest"/> |
||||
<#else> |
||||
<#assign bf="&Buchungsart=4-fest"/> |
||||
</#if> |
||||
<#assign bakts="&Buchungsart=3b-aks"/> |
||||
<#assign bhhans="&Buchungsart=9-hhans"/> |
||||
<#assign bhhans_reste="&Buchungsart=9b-hhans-reste"/> |
||||
<#assign bein="&Buchungsart=7-ein"/> |
||||
|
||||
<#foreach finanzierungsquelle in TMP_FINANZIERUNGSQUELLEN> |
||||
<#assign linkbuch=linkbuch+finanzierungsquelle.id/> |
||||
<#if finanzierungsquelle_has_next> <#assign linkbuch=linkbuch+","/></#if> |
||||
</#foreach> |
||||
<#if "<<Buchungsab_fb>>"!=""> |
||||
<#assign linkbuch=linkbuch+"&Buchungsab_fb="+Buchungsab_fb?replace("'","")?replace("|",",")/> |
||||
</#if> |
||||
<#if "<<Projnr_ins>>"!=""> |
||||
<#assign linkbuch=linkbuch+"&Projnr_ins="+Projnr_ins?replace("'","")?replace("|",",")/> |
||||
</#if> |
||||
<#if "<<ins2>>"!=""&&ins2?exists> |
||||
<#assign linkbuch=linkbuch+"&ins2="+ins2?replace("'","")?replace("|",",")/> |
||||
</#if> |
||||
<#if "<<ins3>>"!=""&&ins3?exists> |
||||
<#assign linkbuch=linkbuch+"&ins3="+ins3?replace("'","")?replace("|",",")/> |
||||
</#if> |
||||
<#if "<<FB_INS>>"!=""&&FB_INS?exists> |
||||
<#assign linkbuch=linkbuch+"&FB_INS="+FB_INS?replace("'","")?replace("|",",")/> |
||||
</#if> |
||||
<#if "<<Titel>>"!=""&&Titel?exists> |
||||
<#assign linkbuch=linkbuch+"&Titel="+Titel?replace("'","")?replace("|",",")/> |
||||
</#if> |
||||
<#if "<<Deckungsring>>"!=""&&Deckungsring?exists> |
||||
<#assign linkbuch=linkbuch+"&Deckungsring="+Deckungsring?replace("'","")?replace("|",",")/> |
||||
</#if> |
||||
<#if sx_butype?exists&&"<<sx_butype>>"!=""> |
||||
<#assign linkbuch=linkbuch+"&sx_butype="+sx_butype/> |
||||
</#if> |
||||
<#if Kostenstelle?exists&&"<<Kostenstelle>>"!=""><#assign linkbuch=linkbuch+"&Kostenstelle=<<Kostenstelle>>"?replace("'","")></#if> |
||||
<#assign linkbuchspezKoa=linkbuch/> |
||||
<#if (Kostenarten.selectionCount>0)> |
||||
<#assign linkbuch=linkbuch+"&Kostenarten=<<Kostenarten>>"?replace("'","")/> |
||||
</#if> |
||||
|
||||
<#macro kamrights> |
||||
--( |
||||
--(select count(*) from userinfo where tid=<<UserID>> and administration=1)>0 or |
||||
--(select count(*) from fin_user_kam where buchungsab_fb='0' and projnr_ins='0' and userid=<<UserID>>)>0 |
||||
--or |
||||
--( |
||||
--buchungsab_fb in (select buchungsab_fb from fin_user_kam where projnr_ins='0' and userid=<<UserID>> ) |
||||
--or |
||||
--projnr_ins in (select projnr_ins from fin_user_kam where buchungsab_fb='0' and userid=<<UserID>> ) |
||||
--or |
||||
--'ba_'|| buchungsab_fb || '_pr_' ||projnr_ins in (select 'ba_'|| buchungsab_fb || '_pr_' ||projnr_ins from fin_user_kam --where userid=<<UserID>> ) |
||||
--) |
||||
--) |
||||
--kst_sql wird momentan nicht gebraucht |
||||
<#assign kst_sql>ch110_institut in <@printkeys Kostenstelle.allNeededKeysList /></#assign> |
||||
${SxFinRechte(kst_sql,'31.12.<<Haushaltsjahr>>')} |
||||
</#macro> |
||||
|
||||
create temp table tmp_roh |
||||
( |
||||
koa char(100), |
||||
dritt smallint, |
||||
titel char(10), |
||||
monat smallint, |
||||
fikr char(12), |
||||
hhans decimal (14,2) default 0, |
||||
reste decimal (14,2) default 0, |
||||
akt_soll decimal (14,2) default 0, |
||||
akts_plus_vojs decimal(14,2) default 0, |
||||
sperr decimal (14,2) default 0, |
||||
ausgaben decimal (14,2) default 0, |
||||
einnahmen decimal(14,2) default 0, |
||||
fest decimal (14,2) default 0, |
||||
verfuegbar decimal (14,2) default 0, |
||||
verfuegbar_geld decimal (14,2) default 0, |
||||
verfuegbar_misch decimal (14,2) default 0 -- gegen Ansatz bei Haushalt, gegen Geldeingang bei Drittmitteln |
||||
|
||||
) <@informixnolog/>; |
||||
create temp table tmp_fikrsum |
||||
( |
||||
koa char(100), |
||||
monat smallint, |
||||
fikr char(12), |
||||
ausgaben decimal (14,2) default 0, |
||||
einnahmen decimal (14,2) default 0 |
||||
|
||||
) <@informixnolog/>; |
||||
create temp table tmp_erg |
||||
( |
||||
ebene smallint default 1, |
||||
koa char(100), |
||||
fikr char(12), |
||||
name char(100), |
||||
sortnr integer default 0, sort2 integer default 0, |
||||
hhans decimal (14,2) default 0, |
||||
reste decimal(14,2) default 0, |
||||
hhans_reste decimal(14,2) default 0, |
||||
akt_soll decimal (14,2) default 0, |
||||
sperr decimal (14,2) default 0, |
||||
akts_plus_vojs decimal(14,2) default 0, |
||||
ausgaben decimal (14,2) default 0, |
||||
prozent decimal(14,2), |
||||
gesamtausgaben decimal(16,6), |
||||
einnahmen decimal (14,2) default 0, |
||||
<#list 1..maxmonat as i> |
||||
aus${i} decimal(14,2) default 0, |
||||
linkbuchaus${i} <#if SQLdialect='Postgres'>text<#else>lvarchar</#if>, |
||||
</#list> |
||||
fest decimal (14,2) default 0, |
||||
verfuegbar decimal (14,2) default 0, |
||||
verfuegbar_geld decimal (14,2) default 0, |
||||
verfuegbar_misch decimal (14,2) default 0, -- gegen Ansatz bei Haushalt, gegen Geldeingang bei Drittmitteln |
||||
verfuegbar_misch_of decimal (14,2) default 0, -- gegen Ansatz bei Haushalt, gegen Geldeingang bei Drittmitteln |
||||
--linkbuchhhans <#if SQLdialect='Postgres'>text<#else>lvarchar</#if>, gibt's nicht im Buchungsbericht |
||||
linkbuchakts <#if SQLdialect='Postgres'>text<#else>lvarchar</#if>, |
||||
linkbuchhhans <#if SQLdialect='Postgres'>text<#else>lvarchar</#if>, |
||||
linkbuchhhans_reste <#if SQLdialect='Postgres'>text<#else>lvarchar</#if>, |
||||
linkbuchf <#if SQLdialect='Postgres'>text<#else>lvarchar</#if>, |
||||
linkbuchaus <#if SQLdialect='Postgres'>text<#else>lvarchar</#if>, |
||||
linkbuchein <#if SQLdialect='Postgres'>text<#else>lvarchar</#if> |
||||
) <@informixnolog/>; |
||||
-- left outer join auf xdummy fügt gegenfalls null als Werte ein, daher kommt unten noch mal update |
||||
|
||||
-- das Makro |
||||
<#macro insert koa> |
||||
<#assign koaTemplate = koa.strukturStr?interpret> |
||||
<#assign showKLRKostenarten='nein'> --defaultwert wird ggfs. im folgenden Schritt ueberschriebenen |
||||
select count(*) from fin_konto_aggr where 1=0 and <@koaTemplate/>; |
||||
|
||||
<#foreach finanzierungsquelle in TMP_FINANZIERUNGSQUELLEN> |
||||
--defaults |
||||
<#assign drtitparam='dr'/> |
||||
<#assign aktsollausdruck="sum(akt_soll_"+drtitparam+")"/> |
||||
<#assign verfuegbarausdruck="sum(verfuegbar_"+drtitparam+")"/> |
||||
<#assign drtit="dr"/> --default kann von FInanzierungsquelle überschrieben werden |
||||
<#assign inlineTemplate = finanzierungsquelle.strukturStr?interpret> |
||||
select 0 from fin_konto_aggr where 1=0 and <@inlineTemplate />; |
||||
<#if koa.id!='FIN_KSONSTIGES'&&koa.strukturStr?index_of("titel")>-1||"<<Deckungsring>>"="'no_dr'"><#assign drtit="tit"/></#if> |
||||
<#if drtit="tit"||("<<Titel>>"!=""&&Titel?exists)||(koa.id!='FIN_KSONSTIGES'&&koa.strukturStr?index_of("titel")>1)> |
||||
<#assign drtitparam='tit'/> |
||||
<#assign aktsollausdruck=aktsollausdruck?replace("_dr","_tit")/> |
||||
<#assign verfuegbarausdruck=verfuegbarausdruck?replace("_dr","_tit")/> |
||||
</#if> |
||||
|
||||
insert into tmp_roh (koa,titel,monat <#if showKLRKostenarten!='nein'>,fikr</#if> <#if verfuegbar_misch_aktiv>, dritt</#if>, |
||||
hhans,reste,akt_soll,akts_plus_vojs,sperr,ausgaben,einnahmen,fest,verfuegbar,verfuegbar_geld) |
||||
select '${koa.id}'::char(100),titel,monat <#if showKLRKostenarten!='nein'>,fikr</#if> <#if verfuegbar_misch_aktiv>, dritt</#if>, |
||||
sum(hhans_${drtitparam}),sum(reste_${drtitparam}),${aktsollausdruck},sum(akt_soll_${drtitparam})+sum(vojs_${drtitparam}),sum(sperr_${drtitparam}),sum(ausgaben_${drtitparam}), |
||||
sum(einnahmen_${drtitparam}),sum(festgelegt_${drtitparam}),${verfuegbarausdruck},sum(verfuegbar_geld) |
||||
from fin_konto_aggr where |
||||
rechnungsjahr=<<Haushaltsjahr>> |
||||
/* and buchungsab_fb in (<<Buchungsab_fb>>) */ |
||||
/* and projnr_ins in (<<Projnr_ins>>) */ |
||||
/* and ins2 in (<<ins2>>) */ |
||||
/* and ins3 in (<<ins3>>) */ |
||||
/* and (buchungsab_fb in (<<FB_INS>>) */ |
||||
/* or projnr_ins in (<<FB_INS>>) ) */ |
||||
/* and titel in (<<Titel>>) */ |
||||
<#if "<<Deckungsring>>"="'no_dr'"> |
||||
and (dr='' or dr is null) |
||||
<#else> |
||||
/* and (dr in (<<Deckungsring>>) */ |
||||
/* or dr2 in (<<Deckungsring>>)) */ |
||||
</#if> |
||||
/* and zweckbestimmung_ut in (<<Untertitel>>) */ |
||||
/* and sx_butype in (<<sx_butype>>) */ |
||||
<#if (Kostenarten.selectionCount>0)> |
||||
and fikr in <@printkeys Kostenarten.allNeededKeys /> |
||||
</#if> |
||||
--Kostenstellenrechte brauchen nicht abgefragt zu werden, wird ggfs. ber Finanzierungsquelle gemacht |
||||
and (<@inlineTemplate />) |
||||
|
||||
and <@koaTemplate/> |
||||
group by 1,2,3 <#if showKLRKostenarten!='nein'>,fikr</#if> <#if verfuegbar_misch_aktiv>,dritt</#if>; |
||||
</#foreach> |
||||
<#if verfuegbar_misch_aktiv> |
||||
update tmp_roh set verfuegbar_misch=verfuegbar where dritt=0; |
||||
update tmp_roh set verfuegbar_misch=verfuegbar_geld where dritt=1; |
||||
</#if> |
||||
</#macro> |
||||
|
||||
<#foreach koa in finkostenarten> |
||||
<#if koa.strukturStr?length<2>Achtung - fuer ${koa.id} kein SQL definiert</#if> |
||||
<@insert koa=koa/> |
||||
</#foreach> |
||||
create index tmp_ixroh on tmp_roh(fikr); |
||||
|
||||
|
||||
<#assign sort=1/> |
||||
<#foreach koa in finkostenarten> |
||||
--defaultwerte falls nicht gewuenscht anders in repository definieren |
||||
<#assign showAnsatz='ja'> |
||||
<#assign showSperre='ja'> |
||||
<#assign showFestgelegt='ja'> |
||||
<#assign showVerfuegbar='ja'> |
||||
<#assign showKLRKostenart=''/> |
||||
<#assign showEinzeltitel='nein'/> |
||||
--Variablen ggfs. durch repository Wert ueberschreiben |
||||
<#assign inlineTemplate = koa.strukturStr?interpret> |
||||
select count(*) from fin_konto_aggr where 1=0 and <@inlineTemplate />; |
||||
|
||||
<#assign sort=sort+1/> |
||||
insert into tmp_erg (koa,name,sortnr,sort2,hhans,reste,akt_soll,akts_plus_vojs,sperr,ausgaben,einnahmen,fest,verfuegbar,verfuegbar_geld,verfuegbar_misch, |
||||
linkbuchhhans,linkbuchhhans_reste,linkbuchakts,linkbuchf,linkbuchaus,linkbuchein) |
||||
select '${koa.id}'::char(100),'${koa.name}'::char(100),${sort},0, |
||||
--hier könnte eigentlich in if show Ansatz rein, aber die Spalten werden standardmäßig eh nicht dargestellt, nur bei entsprechender CUSTOM_888880080 Variable |
||||
sum(hhans),sum(reste), |
||||
<#if showAnsatz!='nein'>sum(akt_soll),sum(akts_plus_vojs)<#else>null::decimal(14,2),null::decimal(14,2)</#if>, |
||||
<#if showSperre!='nein'>sum(sperr)<#else>null::decimal(14,2)</#if>,sum(ausgaben),sum(einnahmen), |
||||
<#if showFestgelegt!='nein'>sum(fest)<#else>null::decimal(14,2)</#if>, |
||||
<#if showVerfuegbar!='nein'>sum(verfuegbar),sum(verfuegbar_geld),sum(verfuegbar_misch)<#else>null::decimal(14,2),null::decimal(14,2),null::decimal(14,2)</#if>, |
||||
'${linkbuch}&FIN-Kostenart=${koa.id}${bhhans}','${linkbuch}&FIN-Kostenart=${koa.id}${bhhans_reste}', |
||||
<#if showAnsatz!='nein'>'${linkbuch}&FIN-Kostenart=${koa.id}${bakts}'<#else>null::char(255)</#if>, |
||||
<#if showFestgelegt!='nein'>'${linkbuch}&FIN-Kostenart=${koa.id}${bf}'<#else>null::char(255)</#if>, |
||||
'${linkbuch}&FIN-Kostenart=${koa.id}${baus}', |
||||
'${linkbuch}&FIN-Kostenart=${koa.id}${bein}' |
||||
from xdummy left outer join tmp_roh on (koa='${koa.id}'::char(100)) |
||||
group by 1,2,3,4; |
||||
|
||||
<#if showEinzeltitel!='nein'> |
||||
<#assign sort=sort+1/> |
||||
insert into tmp_erg (ebene,koa,fikr,name,sortnr,sort2,hhans,reste,akt_soll,akts_plus_vojs,sperr,ausgaben,einnahmen,fest,verfuegbar,verfuegbar_geld,verfuegbar_misch, |
||||
linkbuchhhans,linkbuchhhans_reste,linkbuchakts,linkbuchf,linkbuchaus,linkbuchein) |
||||
select |
||||
2, |
||||
'${koa.id}'::char(100),'titel',titel,${sort},titel::integer, |
||||
--hier könnte eigentlich in if show Ansatz rein, aber die Spalten werden standardmäßig eh nicht dargestellt, nur bei entsprechender CUSTOM_888880080 Variable |
||||
sum(hhans),sum(reste), |
||||
<#if showAnsatz!='nein'>sum(akt_soll),sum(akts_plus_vojs)<#else>null::decimal(14,2),null::decimal(14,2)</#if>, |
||||
<#if showSperre!='nein'>sum(sperr)<#else>null::decimal(14,2)</#if>, |
||||
sum(ausgaben), |
||||
sum(einnahmen), |
||||
<#if showFestgelegt!='nein'>sum(fest)<#else>null::decimal(14,2)</#if>, |
||||
<#if showVerfuegbar!='nein'>sum(verfuegbar),sum(verfuegbar_geld),sum(verfuegbar_misch)<#else>null::decimal(14,2),null::decimal(14,2),null::decimal(14,2)</#if>, |
||||
'${linkbuch}&FIN-Kostenart=${koa.id}${bhhans}&Titel='||trim(titel),'${linkbuch}&FIN-Kostenart=${koa.id}${bhhans_reste}&Titel='||trim(titel), |
||||
<#if showAnsatz!='nein'>'${linkbuch}&FIN-Kostenart=${koa.id}${bakts}&Titel='||trim(titel)<#else>null::char(255)</#if>, |
||||
<#if showFestgelegt!='nein'>'${linkbuch}&FIN-Kostenart=${koa.id}${bf}&Titel='||trim(titel)<#else>null::char(255)</#if>, |
||||
'${linkbuch}&FIN-Kostenart=${koa.id}${baus}&Titel='||trim(titel), |
||||
'${linkbuch}&FIN-Kostenart=${koa.id}${bein}&Titel='||trim(titel) |
||||
from tmp_roh where koa='${koa.id}'::char(100) and titel!='' |
||||
group by 1,2,3,4,5,6; |
||||
|
||||
</#if> |
||||
-- KLR-Kostenarten muessen jetzt auf Ebene zwei sein, unter Titel nicht vorgesehen |
||||
<#if showKLRKostenarten!='nein'> |
||||
<#assign sort=sort+1/> |
||||
<#assign sort2=1/> |
||||
<#foreach klrkoa in Kostenarten.elements> |
||||
<#if (Kostenarten.selectionCount==0)> |
||||
<#assign klrkoa_ebene=klrkoa.level/> |
||||
|
||||
<#else> |
||||
<#assign klrkoa_ebene=klrkoa.levelFromSelection+2/> |
||||
</#if> |
||||
|
||||
<#if klrkoa.level>=2> |
||||
insert into tmp_erg (ebene,koa,fikr,name,sortnr,sort2,hhans,reste,akt_soll,akts_plus_vojs,sperr,ausgaben,einnahmen,fest,verfuegbar,verfuegbar_geld,verfuegbar_misch, |
||||
linkbuchakts,linkbuchf,linkbuchaus,linkbuchein) |
||||
select |
||||
${klrkoa_ebene}, |
||||
'${koa.id}'::char(100),'${klrkoa.key}'::char(12),'${klrkoa.name}'::char(150),${sort},${sort2}, |
||||
--hier könnte eigentlich in if show Ansatz rein, aber die Spalten werden standardmäßig eh nicht dargestellt, nur bei entsprechender CUSTOM_888880080 Variable |
||||
sum(hhans),sum(reste), |
||||
<#if showAnsatz!='nein'>sum(akt_soll),sum(akts_plus_vojs)<#else>null::decimal(14,2),null::decimal(14,2)</#if>, |
||||
<#if showSperre!='nein'>sum(sperr)<#else>null::decimal(14,2)</#if>, |
||||
sum(ausgaben), |
||||
sum(einnahmen), |
||||
<#if showFestgelegt!='nein'>sum(fest)<#else>null::decimal(14,2)</#if>, |
||||
<#if showVerfuegbar!='nein'>sum(verfuegbar),sum(verfuegbar_geld),sum(verfuegbar_misch)<#else>null::decimal(14,2),null::decimal(14,2),null::decimal(14,2)</#if>, |
||||
<#if showAnsatz!='nein'>'${linkbuchspezKoa}&FIN-Kostenart=${koa.id}&Kostenarten=${klrkoa.key}${bakts}'<#else>null::char(255)</#if>, |
||||
<#if showFestgelegt!='nein'>'${linkbuchspezKoa}&FIN-Kostenart=${koa.id}&Kostenarten=${klrkoa.key}${bf}'<#else>null::char(255)</#if>, |
||||
'${linkbuchspezKoa}&FIN-Kostenart=${koa.id}&Kostenarten=${klrkoa.key}${baus}', |
||||
'${linkbuchspezKoa}&FIN-Kostenart=${koa.id}&Kostenarten=${klrkoa.key}${bein}' |
||||
from tmp_roh where koa='${koa.id}'::char(100) |
||||
and fikr in <@printkeys klrkoa.subkeys/> |
||||
group by 1,2,3,4,5,6; |
||||
<#assign sort2=sort2+1/> |
||||
</#if> |
||||
</#foreach> |
||||
|
||||
</#if> |
||||
</#foreach> |
||||
--Summe fuer KLR_kostenarten einschliesslich untergeordneter |
||||
<#foreach klrkoa in Kostenarten.elements> |
||||
insert into tmp_fikrsum (koa,fikr,monat,ausgaben,einnahmen) |
||||
select koa,'${klrkoa.key}'::char(12),monat,sum(ausgaben),sum(einnahmen) from tmp_roh where fikr in <@printkeys klrkoa.subkeys/> |
||||
group by 1,2,3; |
||||
</#foreach> |
||||
create index tmp_ix1 on tmp_fikrsum (koa,monat); |
||||
create index tmp_ix2 on tmp_fikrsum (fikr,monat); |
||||
|
||||
<#list 1..maxmonat as i> |
||||
update tmp_erg set aus${i}=(select sum(ausgaben) from tmp_roh where monat=${i} and tmp_erg.koa=tmp_roh.koa) where ebene=1; |
||||
--fuer KLR-Koa |
||||
update tmp_erg set aus${i}= |
||||
(select sum(ausgaben) from tmp_fikrsum where monat=${i} and tmp_erg.koa=tmp_fikrsum.koa and tmp_erg.fikr=tmp_fikrsum.fikr) where ebene>1; |
||||
-- für Einzeltitel |
||||
update tmp_erg set aus${i}= |
||||
(select sum(ausgaben) from tmp_roh where monat=${i} and tmp_erg.koa=tmp_roh.koa and tmp_erg.name=tmp_roh.titel) where |
||||
fikr='titel' and ebene>1; |
||||
|
||||
update tmp_erg set aus${i}=0 where aus${i} is null; |
||||
</#list> |
||||
|
||||
drop table tmp_fikrsum; |
||||
drop table tmp_roh; |
||||
|
||||
--update tmp_erg set akt_soll=0 where akt_soll is null; |
||||
--update tmp_erg set sperr=0 where sperr is null; |
||||
update tmp_erg set ausgaben=0 where ausgaben is null; |
||||
--update tmp_erg set fest=0 where fest is null; |
||||
--update tmp_erg set verfuegbar=0 where verfuegbar is null; |
||||
update tmp_erg set name=(select max(ktobez) from fin_titel where tmp_erg.name=fin_titel.titel and fin_titel.jahr=<<Haushaltsjahr>>) |
||||
where fikr='titel'; |
||||
|
||||
<@selectintotmp source="tmp_erg" target="tmp_erg2" select="*"/><@informixnolog/>; |
||||
<#if finkostenarten?size>1> |
||||
insert into tmp_erg2 (name,sortnr,linkbuchhhans,linkbuchhhans_reste,linkbuchakts,linkbuchf,linkbuchaus,linkbuchein,hhans, |
||||
akt_soll,akts_plus_vojs,sperr,<#list 1..maxmonat as i>aus${i},</#list>ausgaben,einnahmen,fest,verfuegbar,verfuegbar_geld, |
||||
verfuegbar_misch) |
||||
select 'Summe'::char(5),${sort+1}, |
||||
<#if showAnsatz!='nein'>'${linkbuch}${bhhans}'<#else>null::char(255)</#if>, |
||||
<#if showAnsatz!='nein'>'${linkbuch}${bhhans_reste}'<#else>null::char(255)</#if>, |
||||
<#if showAnsatz!='nein'>'${linkbuch}${bakts}'<#else>null::char(255)</#if>, |
||||
<#if showFestgelegt!='nein'>'${linkbuch}${bf}'<#else>null::char(255)</#if>, |
||||
'${linkbuch}${baus}', |
||||
'${linkbuch}${bein}' |
||||
,sum(hhans),sum(akt_soll),sum(akts_plus_vojs),sum(sperr), |
||||
<#list 1..maxmonat as i>sum(aus${i}),</#list>sum(ausgaben),sum(einnahmen),sum(fest),sum(verfuegbar),sum(verfuegbar_geld),sum(verfuegbar_misch) from tmp_erg |
||||
where ebene=1 group by 1,2,3,4,5,6; |
||||
</#if> |
||||
update tmp_erg2 set gesamtausgaben=(select sum(ausgaben) from tmp_erg where ebene=1); |
||||
update tmp_erg2 set prozent=(ausgaben/gesamtausgaben)*100 where gesamtausgaben is not null and gesamtausgaben!=0; |
||||
drop table tmp_erg; |
||||
|
||||
update tmp_erg2 set verfuegbar_misch_of=verfuegbar_misch+fest; |
||||
|
||||
update tmp_erg2 set hhans=0 where hhans is null; |
||||
update tmp_erg2 set reste=0 where reste is null; |
||||
update tmp_erg2 set hhans_reste=hhans+reste; |
||||
update tmp_erg2 set akt_soll=0 where akt_soll is null; |
||||
update tmp_erg2 set sperr=0 where sperr is null; |
||||
update tmp_erg2 set akts_plus_vojs=0 where akts_plus_vojs is null; |
||||
update tmp_erg2 set ausgaben=0 where ausgaben is null; |
||||
update tmp_erg2 set einnahmen=0 where einnahmen is null; |
||||
update tmp_erg2 set fest=0 where fest is null; |
||||
update tmp_erg2 set verfuegbar=0 where verfuegbar is null; |
||||
update tmp_erg2 set verfuegbar_geld=0 where verfuegbar_geld is null; |
||||
update tmp_erg2 set verfuegbar_misch=0 where verfuegbar_misch is null; |
||||
update tmp_erg2 set verfuegbar_misch_of=0 where verfuegbar_misch_of is null; |
||||
|
||||
<#if Username?starts_with("demo")> |
||||
<#function rand min max> |
||||
<#assign objectConstructor = "freemarker.template.utility.ObjectConstructor"?new()> |
||||
<#local n1 = objectConstructor("java.util.Date")> |
||||
<#local n2 = n1.getTime()/> |
||||
<#local now=n2?string /> |
||||
<#local leng=now?length/> |
||||
<#local randomNum=0.36+("0."+now[(leng-1)]+now[(leng-2)..(leng-1)])?number/> |
||||
<#if (randomNum > 1)> |
||||
<#assign _rand = randomNum % 1 /> |
||||
<#else> |
||||
<#assign _rand = randomNum /> |
||||
</#if> |
||||
<#return (min + ((max - min) * _rand))/> |
||||
</#function> |
||||
<#assign zufall=rand(3,9)?string?replace(",",".")/> |
||||
update tmp_erg2 set hhans=hhans*${zufall} , |
||||
sperr=sperr*${zufall} , |
||||
akt_soll=akt_soll*${zufall} , |
||||
akts_plus_vojs=akts_plus_vojs*${zufall} , |
||||
einnahmen =einnahmen*${zufall}, |
||||
ausgaben=ausgaben*${zufall}, |
||||
<#list 1..maxmonat as i>aus${i}=aus${i}*${zufall},</#list> |
||||
verfuegbar=verfuegbar*${zufall} , |
||||
verfuegbar_geld=verfuegbar_geld*${zufall}, |
||||
verfuegbar_misch=verfuegbar_misch*${zufall}, |
||||
verfuegbar_misch_of=verfuegbar_misch_of*${zufall}; |
||||
|
||||
</#if> |
||||
|
||||
<#list 1..maxmonat as i> |
||||
update tmp_erg2 set linkbuchaus${i}=linkbuchaus||'&Monat=${i}'; |
||||
</#list> |
||||
|
||||
|
||||
<#if customize?exists> |
||||
-- wenn das Feld nicht versteckt ist, muss Link gekürzt werden |
||||
<#foreach f in customize.resulttable> |
||||
<#if f.field?index_of("linkbuchhhans")>-1&&f.field?index_of("hidden")==-1> |
||||
update tmp_erg2 set linkbuchhhans=replace(linkbuchhhans,'SuperXmlTabelle?tid=',''); |
||||
update tmp_erg2 set linkbuchhhans_reste=replace(linkbuchhhans_reste,'SuperXmlTabelle?tid=',''); |
||||
</#if> |
||||
<#if f.field?index_of("linkbuchakts")>-1&&f.field?index_of("hidden")==-1> |
||||
update tmp_erg2 set linkbuchakt=replace(linkbuchakts,'SuperXmlTabelle?tid=',''); |
||||
</#if> |
||||
<#if f.field?index_of("linkbuchf")>-1&&f.field?index_of("hidden")==-1> |
||||
update tmp_erg2 set linkbuchf=replace(linkbuchf,'SuperXmlTabelle?tid=',''); |
||||
</#if> |
||||
<#if f.field?index_of("linkbuchaus")>-1&&f.field?index_of("hidden")==-1> |
||||
update tmp_erg2 set linkbuchaus=replace(linkbuchaus,'SuperXmlTabelle?tid=',''); |
||||
</#if> |
||||
<#if f.field?index_of("linkbuchein")>-1&&f.field?index_of("hidden")==-1> |
||||
update tmp_erg2 set linkbuchein=replace(linkbuchein,'SuperXmlTabelle?tid=',''); |
||||
</#if> |
||||
</#foreach> |
||||
|
||||
|
||||
|
||||
select <#foreach f in customize.resulttable> |
||||
<#if f.caption='Ausgaben'> |
||||
<#if Finanzierungsquelle!='FIN_EINNAHMEN'> |
||||
<#list 1..maxmonat as i>aus${i},</#list> ausgaben, |
||||
<#list 1..maxmonat as i>linkbuchaus${i} as hidden_aus${i},</#list> linkbuchaus as hidden_ausgaben, |
||||
</#if> |
||||
<#else> |
||||
<#if !f.field?starts_with("linkbuchaus")||Finanzierungsquelle!='FIN_EINNAHMEN'> |
||||
${f.field} <#if f_has_next>,</#if> |
||||
</#if> |
||||
</#if> |
||||
</#foreach> |
||||
from tmp_erg2 order by sortnr,sort2,name; |
||||
<#else> |
||||
select ebene,name,akt_soll,einnahmen,sperr, |
||||
<#if Finanzierungsquelle!='FIN_EINNAHMEN'> |
||||
<#list 1..maxmonat as i>aus${i},</#list> ausgaben, |
||||
<#list 1..maxmonat as i>linkbuchaus${i} as hidden_aus${i},</#list> linkbuchaus as hidden_ausgaben, |
||||
</#if> |
||||
fest, verfuegbar, |
||||
linkbuchakts as hidden_akt_soll, linkbuchf as hidden_fest, |
||||
linkbuchein as hidden_einnahmen |
||||
from tmp_erg2 order by sortnr,sort2,name; |
||||
</#if>]]></text> |
||||
<text table="maskeninfo" field="xil_proplist" where="tid=888880080"><![CDATA[XIL List |
||||
--Freemarker Template |
||||
<#include "SQL_lingua_franca"/> |
||||
<#include "SuperX_general"/> |
||||
<#assign monate=["Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember"]/> |
||||
|
||||
<sqlvars> |
||||
<sqlvar name="maxmonat">select month(today()) from xdummy where year(today())=<<Haushaltsjahr>> union select 12 from xdummy where year(today())!=<<Haushaltsjahr>></sqlvar> |
||||
</sqlvars> |
||||
sizable_columns horizontal_scrolling |
||||
white_space_color=COLOR_WHITE |
||||
fixed_columns=2 |
||||
min_heading_height=35 |
||||
<#if CUSTOM_888880080?exists> |
||||
<#assign inlineTemplate=CUSTOM_888880080?interpret> |
||||
<@inlineTemplate/> |
||||
</#if> |
||||
<#if customize?exists> |
||||
<#foreach f in customize.resulttable> |
||||
<#if f.caption='Ausgaben'> |
||||
<#if Finanzierungsquelle!='FIN_EINNAHMEN'> |
||||
<#list 1..maxmonat as i> |
||||
Column CID=0 heading_text="Ausgaben\000${monate[i-1]}" explanation="" center_heading row_selectable heading_platform readonly width=10 text_size=10 |
||||
</#list> |
||||
Column CID=0 heading_text="Ausgaben\000GESAMT" explanation="" center_heading row_selectable heading_platform readonly width=10 text_size=10 |
||||
</#if> |
||||
<#list 1..maxmonat as i> |
||||
Column CID=0 heading_text="hidden_Ausgaben${monate[i-1]}" explanation="" center_heading row_selectable heading_platform readonly width=1 text_size=10 |
||||
</#list> |
||||
Column CID=0 heading_text="hidden_Ausgaben" explanation="" center_heading row_selectable heading_platform readonly width=10 text_size=1 |
||||
<#else> |
||||
<#if !f.field?starts_with("linkbuchaus")||Finanzierungsquelle!='FIN_EINNAHMEN'> |
||||
Column CID=2 heading_text="${f.caption}" explanation="" center_heading |
||||
row_selectable col_selectable heading_platform readonly width=${f.width} |
||||
</#if> |
||||
</#if> |
||||
</#foreach> |
||||
|
||||
<#else> |
||||
Column CID=0 heading_text="Ebene" explanation="" center_heading |
||||
row_selectable heading_platform readonly |
||||
width=8 text_size=8 |
||||
Column CID=0 heading_text="Kostenart" explanation="" center_heading |
||||
row_selectable heading_platform readonly |
||||
width=30 text_size=30 |
||||
Column CID=0 heading_text="Ansatz inkl.Reste" explanation="" center_heading |
||||
row_selectable heading_platform readonly |
||||
width=10 text_size=10 |
||||
Column CID=0 heading_text="Einnahmen" explanation="" center_heading |
||||
row_selectable heading_platform readonly |
||||
width=10 text_size=10 |
||||
Column CID=0 heading_text="Sperre" explanation="" center_heading |
||||
row_selectable heading_platform readonly |
||||
width=10 text_size=10 |
||||
<#if Finanzierungsquelle!='FIN_EINNAHMEN'> |
||||
<#list 1..maxmonat as i> |
||||
Column CID=0 heading_text="Ausgaben\000${monate[i-1]}" explanation="" center_heading |
||||
row_selectable heading_platform readonly |
||||
width=10 text_size=10 |
||||
</#list> |
||||
</#if> |
||||
Column CID=0 heading_text="Ausgaben\000GESAMT" explanation="" center_heading |
||||
row_selectable heading_platform readonly |
||||
width=10 text_size=10 |
||||
<#list 1..maxmonat as i> |
||||
Column CID=0 heading_text="hidden_Ausgaben${monate[i-1]}" explanation="" center_heading row_selectable heading_platform readonly width=1 text_size=10 |
||||
</#list> |
||||
Column CID=0 heading_text="hidden_Ausgaben" explanation="" center_heading row_selectable heading_platform readonly width=10 text_size=1 |
||||
Column CID=0 heading_text="Festgelegt" explanation="" center_heading |
||||
row_selectable heading_platform readonly |
||||
width=12 text_size=12 |
||||
Column CID=0 heading_text="Verfügbar" explanation="" center_heading |
||||
row_selectable heading_platform readonly |
||||
width=12 text_size=12 |
||||
Column CID=0 heading_text="Buchungen\nAnsatz" explanation="" center_heading |
||||
row_selectable heading_platform readonly |
||||
width=12 text_size=12 |
||||
Column CID=0 heading_text="Buchungen\nFestgelegt" explanation="" center_heading |
||||
row_selectable heading_platform readonly |
||||
width=12 text_size=12 |
||||
<#if Finanzierungsquelle!='FIN_EINNAHMEN'> |
||||
Column CID=0 heading_text="Buchungen\nAusgaben" explanation="" center_heading |
||||
row_selectable heading_platform readonly |
||||
width=12 text_size=12 |
||||
</#if> |
||||
Column CID=0 heading_text="Buchungen\nEinnahmen" explanation="" center_heading |
||||
row_selectable heading_platform readonly |
||||
width=12 text_size=12 |
||||
</#if>]]></text> |
||||
<text table="maskeninfo" field="erlaeuterung" where="tid=888880080"><![CDATA[Übersicht über Verteilung nach Kostenarten für Haushaltsbudgets]]></text> |
||||
<text table="maskeninfo" field="hinweis" where="tid=888880080"><![CDATA[<<SQL>> |
||||
--freemarker template |
||||
select 'Achtung Demodaten' from xdummy where 1=0 <#if Username?starts_with("demo")> or 1=1</#if>]]></text> |
||||
<text table="felderinfo" field="relation" where="tid=888880080"><![CDATA[<<SQL>> SELECT distinct ord,name FROM aggregierung where kategorie='FIN-Jahr' and ord>=2020 order by 1 DESC;]]></text> |
||||
<text table="felderinfo" field="relation" where="tid=888880081"><![CDATA[<<SQL>> select kapitel,ktobez from fin_kapitel where 1=1 /* and jahr=<<Haushaltsjahr>> */ order by ktobez]]></text> |
||||
<text table="felderinfo" field="relation" where="tid=888880082"><![CDATA[<<SQL>> select id,caption from sx_repository where art='FIN_FINANZIERUNGSQUELLE' and aktiv=1 and gueltig_seit<=date_val('1.1.<<Haushaltsjahr>>') and gueltig_bis>=date_val('31.12.<<Haushaltsjahr>>')]]></text> |
||||
<text table="felderinfo" field="relation" where="tid=888880083"><![CDATA[<<SQL>> |
||||
--freemarker template |
||||
select distinct titel,ktobez from fin_titel where 1=1 /* and jahr=<<Haushaltsjahr>> */ /* and kapitel=<<Kapitel>> */ |
||||
<#if "<<Deckungsring>>"="'no_dr'"> |
||||
and (dr='' or dr is null) |
||||
<#else> |
||||
/* and (dr in (<<Deckungsring>>) */ |
||||
/* or dr2 in (<<Deckungsring>>)) */ |
||||
</#if> |
||||
order by ktobez]]></text> |
||||
<text table="felderinfo" field="relation" where="tid=888880084"><![CDATA[<<SQL>> select tid,type,name from sichten where art='FIN-Kostenstellen-Sicht' and aktiv=1 order by type,tid]]></text> |
||||
<text table="felderinfo" field="relation" where="tid=888880085"><![CDATA[<<SQL>> |
||||
<#assign template = FIN_DRITTMITTELPROJEKTE?interpret> |
||||
<@template/> |
||||
--erwartet drittmittelstartjahr und drittmittelprojektebedingung |
||||
select distinct buchungsab_fb,trim(buchungsab_fb)||'-'||max(ktobez) from fin_buchab_fb where jahr=<<Haushaltsjahr>> |
||||
/* and kapitel in (<<Kapitel>>) */ |
||||
<#if "<<Deckungsring>>"="'no_dr'"> |
||||
and (dr='' or dr is null) |
||||
<#else> |
||||
/* and (dr in (<<Deckungsring>>) */ |
||||
/* or dr2 in (<<Deckungsring>>)) */ |
||||
</#if> |
||||
/* and titel in (<<Titel>>) */ |
||||
/* and zweckbestimmung_ut in (<<Untertitel>>) */ |
||||
and ${SxFinRechte("K1","31.12.<<Haushaltsjahr>>","","","","")} |
||||
and not (${drittmittelprojektebedingung}) |
||||
group by 1 |
||||
union |
||||
select distinct projnr_ins,trim(projnr_ins)||'-'||max(ktobez) from fin_projnr_ins where jahr=<<Haushaltsjahr>> |
||||
/* and kapitel in (<<Kapitel>>) */ |
||||
/* and (dr in (<<Deckungsring>>) */ |
||||
/* or dr2 in (<<Deckungsring>>)) */ |
||||
/* and titel in (<<Titel>>) */ |
||||
/* and zweckbestimmung_ut in (<<Untertitel>>) */ |
||||
and ${SxFinRechte("K2","31.12.<<Haushaltsjahr>>","","","","","")} |
||||
and not (${drittmittelprojektebedingung}) |
||||
group by 1 order by 1;]]></text> |
||||
<text table="felderinfo" field="relation" where="tid=888880086"><![CDATA[<<SQL>> |
||||
--freemarker template |
||||
select distinct buchungsab_fb,trim(buchungsab_fb)||'-'||max(ktobez) from fin_buchab_fb where jahr=<<Haushaltsjahr>> |
||||
/* and kapitel in (<<Kapitel>>) */ |
||||
<#if "<<Deckungsring>>"="'no_dr'"> |
||||
and (dr='' or dr is null) |
||||
<#else> |
||||
/* and (dr in (<<Deckungsring>>) */ |
||||
/* or dr2 in (<<Deckungsring>>)) */ |
||||
</#if> |
||||
|
||||
and ${SxFinRechte("K1","31.12.<<Haushaltsjahr>>","","","","")} |
||||
group by 1 order by 1]]></text> |
||||
<text table="felderinfo" field="relation" where="tid=888880087"><![CDATA[<<SQL>> |
||||
--Freemarker Template |
||||
<#include "SQL_lingua_franca"/> |
||||
select distinct projnr_ins,trim(projnr_ins)||'-'||max(ktobez) from fin_projnr_ins where jahr=<<Haushaltsjahr>> |
||||
/* and kapitel in (<<Kapitel>>) */ |
||||
/* and (dr in (<<Deckungsring>>) */ |
||||
/* or dr2 in (<<Deckungsring>>)) */ |
||||
/* and buchungsab_fb in (<<Buchungsab_fb>>) */ |
||||
and ${SxFinRechte("K2","31.12.<<Haushaltsjahr>>","","","","","")} |
||||
group by 1 order by 1;]]></text> |
||||
<text table="felderinfo" field="relation" where="tid=888880088"><![CDATA[<<SQL>> |
||||
--Freemarker Template |
||||
select ins2,trim(ins2)||'-'||max(ktobez) from fin_ins2 where |
||||
${SxFinRechte("K3","31.12.<<Haushaltsjahr>>","","","","","")} |
||||
/* and jahr=<<Haushaltsjahr>> */ |
||||
/* and kapitel in (<<Kapitel>>) */ |
||||
<#if "<<Deckungsring>>"="'no_dr'"> |
||||
and (dr='' or dr is null) |
||||
<#else> |
||||
/* and (dr in (<<Deckungsring>>) */ |
||||
/* or dr2 in (<<Deckungsring>>)) */ |
||||
</#if> |
||||
/* and buchungsab_fb in (<<Buchungsab_fb>>) */ |
||||
/* and projnr_ins in (<<Projnr_ins>>) */ |
||||
group by 1 order by 1;]]></text> |
||||
<text table="felderinfo" field="relation" where="tid=888880089"><![CDATA[<<SQL>> |
||||
--Freemarker Template |
||||
select ins3,trim(ins3)||'-'||max(ktobez) from fin_ins3 |
||||
where |
||||
${SxFinRechte("K4","31.12.<<Haushaltsjahr>>","","","","","")} |
||||
/* and jahr=<<Haushaltsjahr>> */ |
||||
/* and kapitel=<<Kapitel>> */ |
||||
<#if "<<Deckungsring>>"="'no_dr'"> |
||||
and (dr='' or dr is null) |
||||
<#else> |
||||
/* and (dr in (<<Deckungsring>>) */ |
||||
/* or dr2 in (<<Deckungsring>>)) */ |
||||
</#if> |
||||
/* and titel in (<<Titel>>) */ |
||||
/* and zweckbestimmung_ut in (<<Untertitel>>) */ |
||||
/* and buchungsab_fb in (<<Buchungsab_fb>>) */ |
||||
/* and projnr_ins in (<<Projnr_ins>>) */ |
||||
/* and ins2 in (<<ins2>>) */ |
||||
group by 1 order by 1]]></text> |
||||
<text table="felderinfo" field="relation" where="tid=888880090"><![CDATA[<<SQL>> |
||||
|
||||
--freemarker template |
||||
select distinct zweckbestimmung_ut,ktobez from fin_zweck_ut where 1=1 /* and jahr=<<Haushaltsjahr>> */ /* and kapitel=<<Kapitel>> */ |
||||
<#if "<<Deckungsring>>"="'no_dr'"> |
||||
and (dr='' or dr is null) |
||||
<#else> |
||||
/* and (dr in (<<Deckungsring>>) */ |
||||
/* or dr2 in (<<Deckungsring>>)) */ |
||||
</#if> |
||||
/* and titel in (<<Titel>>) */ order by ktobez]]></text> |
||||
<text table="felderinfo" field="relation" where="tid=888880091"><![CDATA[<<SQL>> select tid,type,name,sortnr from sichten where art='FIN-Kosten-/Erlösarten-Sicht' and aktiv=1 order by sortnr,type,name]]></text> |
||||
<text table="felderinfo" field="relation" where="tid=888880092"><![CDATA[<<SQL>> select tid,type,name,sortnr from sichten where art='FIN-Kostenträger-Sicht' and aktiv=1 order by sortnr,type,name]]></text> |
||||
<text table="felderinfo" field="relation" where="tid=888880093"><![CDATA[<<SQL>>select tid,type,name,sortnr from sichten where art ='Geldgeber-Sicht (FIN)' and aktiv=1 order by sortnr,type,name;]]></text> |
||||
<text table="felderinfo" field="relation" where="tid=888880094"><![CDATA[<<SQL>> select distinct kapitel,ktobez from fin_kapitel where jahr=<<Haushaltsjahr>> order by ktobez]]></text> |
||||
<text table="felderinfo" field="relation" where="tid=888880095"><![CDATA[<<SQL>> select distinct dr,ktobez from fin_dr where 1=1 /* and jahr=<<Haushaltsjahr>> */ /* and kapitel=<<Kapitel>> */ |
||||
union select 'no_dr','Keine Titelgruppe' from xdummy |
||||
order by ktobez]]></text> |
||||
<text table="felderinfo" field="relation" where="tid=888880096"><![CDATA[<<SQL>> select tid,name,sortnr from sichten where art='Buchungstyp-Sicht' and aktiv=1 order by sortnr,name]]></text> |
||||
<text table="felderinfo" field="relation" where="tid=888880097"><![CDATA[]]></text> |
||||
<text table="felderinfo" field="relation" where="tid=888880098"><![CDATA[<<SQL>> select 'FIN_KOSTENART','FIN_KOSTENART' from xdummy union select 'FIN_KOSTENART2','FIN_KOSTENART2' from xdummy]]></text> |
||||
</xupdate> |
Loading…
Reference in new issue