
| Current Path : /var/www/web-klick.de/hY89j/10_buchhaltung/ |
Linux ift1.ift-informatik.de 5.4.0-216-generic #236-Ubuntu SMP Fri Apr 11 19:53:21 UTC 2025 x86_64 |
| Current File : /var/www/web-klick.de/hY89j/10_buchhaltung/uebersicht.py |
import os,re,sys
bilanzen = {}
abschluesse = {}
for jahr in (20,21,22,23,24):
bilanzen[str(jahr)] = re.sub( r"(\-?\d+\.\d\d) +(Ueberschuss)", "\\2 \\1", open("jahr_20" + str(jahr) + "_jahresabschluss_kimutage.html").read() )
bilanzen[str(jahr)] = re.sub( r"[\(\)]", "" , bilanzen[str(jahr)],9999 )
bilanzen[str(jahr)] = re.sub( r"\:", ": " , bilanzen[str(jahr)],9999 )
abschluesse[str(jahr)] = re.sub( r"\n", "\n xxx", open("jahr_20" + str(jahr) + "_endabrechnung_"+str(jahr+37)+"_kimutage.html").read(), 9999, flags=re.DOTALL)
text = '''
Uebersicht Kirchenmusiktage 2020 - 2024
Jahr 2020 2021 2022 2023 2024
---------------------------------------------------------------------------------
BESTAND:
Eigenmittel -20EIG- -21EIG- -22EIG- -23EIG- -24EIG-
fuer KiMutage 54 -20K54- -21K54- -22K54- -23K54- -24K54-
fuer KiMutage 55 -20K55- -21K55- -22K55- -23K55- -24K55-
fuer KiMutage 56 -20K56- -21K56- -22K56- -23K56- -24K56-
fuer KiMutage 57 -20K57- -21K57- -22K57- -23K57- -24K57-
fuer KiMutage 58 -20K58- -21K58- -22K58- -23K58- -24K58-
fuer KiMutage 59 -20K59- -21K59- -22K59- -23K59- -24K59-
fuer KiMutage 60 -20K60- -21K60- -22K60- -23K60- -24K60-
fuer KiMutage 61 -20K61- -21K61- -22K61- -23K61- -24K61-
---------------------------------------------------------------------------------
GESAMT: -20GES- -21GES- -22GES- -23GES- -24GES-
---------------------------------------------------------------------------------
Flessabank -20FLE- -21FLE- -22FLE- -23FLE- -24FLE-
Sparkasse -20SPK- -21SPK- -22SPK- -23SPK- -24SPK-
---------------------------------------------------------------------------------
EINNAHMEN JAHR: -20EJR- -21EJR- -22EJR- -23EJR- -24EJR-
Eintrittsgelder -20EIN- -21EIN- -22EIN- -23EIN- -24EIN-
Mitgliedsbeitraege -20MIT- -21MIT- -22MIT- -23MIT- -24MIT-
Anzeige -20AXX- -21AXX- -22AXX- -23AXX- -24AXX-
Spenden -20SPE- -21SPE- -22SPE- -23SPE- -24SPE-
Zuschuss -20ZUS- -21ZUS- -22ZUS- -23ZUS- -24ZUS-
AUSGABEN JAHR: -20AJR- -21AJR- -22AJR- -23AJR- -24AJR-
Beitraege -20BEI- -21BEI- -22BEI- -23BEI- -24BEI-
Externe Projekte -20EXT- -21EXT- -22EXT- -23EXT- -24EXT-
Honorare -20HON- -21HON- -22HON- -23HON- -24HON-
Kontogebuehren -20KTO- -21KTO- -22KTO- -23KTO- -24KTO-
Notarkosten -20NOT- -21NOT- -22NOT- -23NOT- -24NOT-
Webhosting -20WEB- -21WEB- -22WEB- -23WEB- -24WEB-
Werbung -20WER- -21WER- -22WER- -23WER- -24WER-
Verwendung MitglBeitr -20VER- -21VER- -22VER- -23VER- -24VER-
GWEINN GGUEB VORJAHR: -20UEB- -21UEB- -22UEB- -23UEB- -24UEB-
---------------------------------------------------------------------------------
KiMuTage 57 58 59 60 61
EINNAHMEN KMT: -20EKM- -21EKM- -22EKM- -23EKM- -24EKM-
Eintrittsgelder -20FIN- -21FIN- -22FIN- -23FIN- -24FIN-
Anzeige Programmheft -20ANZ- -21ANZ- -22ANZ- -23ANZ- -24ANZ-
Spenden -20SKM- -21SKM- -22SKM- -23SKM- -24SKM-
Zuschuesse -20ZKM- -21ZKM- -22ZKM- -23ZKM- -24ZKM-
Eigenmittel -20MKM- -21MKM- -22MKM- -23MKM- -24MKM-
AUSGABEN KMT: -20AKM- -21AKM- -22AKM- -23AKM- -24AKM-
Honorare -20HKM- -21HKM- -22HKM- -23HKM- -24HKM-
Werbung -20WKM- -21WKM- -22WKM- -23WKM- -24WKM-
'''
map1 = {}
map1['EIG'] = '1XEIG'
map1['K54'] = '1K54'
map1['K55'] = '1K55'
map1['K56'] = '1K56'
map1['K57'] = '1K57'
map1['K58'] = '1K58'
map1['K59'] = '1K59'
map1['K60'] = '1K60'
map1['K61'] = '1K61'
map1['FLE'] = '1Flessa Bank'
map1['SPK'] = '1Sparkasse Fuerth'
map1['GES'] = '1Bankkonten'
map1['EJR'] = '1Einnahmen nachrichtlich:'
map1['AJR'] = '1Ausgaben nachrichtlich:'
map1['EIN'] = '1einnahme'
map1['MIT'] = '1mitgliedsbeitrag'
map1['VER'] = '1mitgliedseinlage'
map1['SPE'] = '1spende'
map1['AXX'] = '1anzeige'
map1['ZUS'] = '1zuschuss'
map1['BEI'] = '1beitrag'
map1['EXT'] = '1pergolesi,1streicherorgel,1amadeuschor,1kinderkonzert,1sonderprojekt'
map1['HON'] = '1honorar'
map1['KTO'] = '1kontogebuehr'
map1['NOT'] = '1notar'
map1['DIV'] = '1divers'
map1['PER'] = '1pergolesi'
map1['WEB'] = '1webhosting'
map1['WER'] = '1werbung'
map1['UEB'] = '1Ueberschuss'
map1['ANZ'] = '2xxxanzeige'
map1['FIN'] = '2xxxeinnahme'
map1['SKM'] = '2xxxspende'
map1['ZKM'] = '2xxxzuschuss'
map1['MKM'] = '2xxxxeigenmittel'
map1['HKM'] = '2xxxhonorar'
map1['WKM'] = '2xxxwerbung'
map1['EKM'] = '2xxxanzeige,2xxxeinnahme,2xxxspende,2xxxzuschuss,2xxxxeigenmittel'
map1['AKM'] = '2xxxhonorar,2xxxwerbung'
zaehler = 0
while (0 == 0):
zaehler = zaehler + 1
if zaehler > 1000:
break
m = re.search(r"^(.*) \-(\d\d)([A-Z][A-Z0-9][A-Z0-9])\-(.*)",text,re.DOTALL)
if not m:
break
x1 = m.group(1)
jahr = m.group(2)
x2 = m.group(3)
x3 = m.group(4)
keys = map1[x2]
betrag = 0.00
for key in keys.split(","):
if key[0] == "1":
text1 = bilanzen[jahr]
else:
text1 = abschluesse[jahr]
key = key[1:]
m = re.search( " " + key + " +(\-?\d+\.\d\d)", text1 )
if m:
betrag = betrag + float(m.group(1))
text = x1 + ("%9.2f" % betrag) + x3
print(text)