Benutzer-Werkzeuge

Webseiten-Werkzeuge


haushaltsdaten

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen gezeigt.

Link zu der Vergleichsansicht

Beide Seiten, vorherige Überarbeitung Vorherige Überarbeitung
Nächste Überarbeitung
Vorherige Überarbeitung
haushaltsdaten [2020/09/09 08:13]
christian [(noch ein Thema)]
haushaltsdaten [2020/12/19 11:21] (aktuell)
christian [Klassen]
Zeile 3: Zeile 3:
 Die Haushaltsvisualisierung von Lübeck habe ich als Prototyp heruntergeschrieben. Dabei habe ich mich von der Struktur der Daten leiten lassen und die simpelste Art des Einlesens genommen die funktioniert hat. Zum Beispiel habe ich den Feldtrenner,​ ein Komma, direkt ins Programm geschrieben und Werte mit konkreten Strings verglichen. Die Haushaltsvisualisierung von Lübeck habe ich als Prototyp heruntergeschrieben. Dabei habe ich mich von der Struktur der Daten leiten lassen und die simpelste Art des Einlesens genommen die funktioniert hat. Zum Beispiel habe ich den Feldtrenner,​ ein Komma, direkt ins Programm geschrieben und Werte mit konkreten Strings verglichen.
  
-Nun habe ich auch Daten aus Glückstadt bekommen und nun muss das etwas allgemeiner formuliert werden. Und die Struktur muss klar beschrieben werden, damit auch andere Gemeinden ihre Daten anpassen können. ​Diese Beschreibung ​soll im Folgenden entstehen+Nun habe ich auch Daten aus Glückstadt bekommen und nun muss das etwas allgemeiner formuliert werden. Und die Struktur muss klar beschrieben werden, damit auch andere Gemeinden ihre Daten anpassen können. 
 + 
 +Im Laufe der Zeit (2015-2020) kamen Daten mit verschiedenstem Aufbau dazu. Alle wurden in die Objektstruktur eingepasst, wobei die Objektstruktur immer wieder erweitert wurde, um die Variationen angemessen integrieren zu können. 
 + 
 +Nun bin ich bereit für ein konsolidiertes grundlegendes Modell, dass alle Möglichkeiten der bisherigen Prototypen unterstützt. Dieses ​soll hier beschreiben werden. 
 +===== Modell ===== 
 + 
 +Das Modell beschreibt die Festlegungen und Alternativen zu Sachverhalten und ihrer Entsprechung in den Daten. Dies betrifft verschiedene Ebenen vom physischen Format der Dateien bis zur logischen Definition von Haushalten. Folgende Ebenen sehe ich bisher: 
 + 
 +  * Datenformat (CSV, Kodierung, Sprache) 
 +  * Datenarten (Tabelle, Spalten, Strings und Zahlen) 
 +  * Mengen (Bytes, Zeilen) 
 +  * Abhängigkeiten (Definitionsdateien,​ Zuordnungstabellen,​ Versionen) 
 +  * Metadaten (DCAT-AP.de) 
 +  * Haushalt (gibt es Summen?, sind Aufwendungen negativ?, Doppisch/​Kameral?,​ Produktrahmen,​ Kontenrahmen,​ Soll/​Ist-Werte?,​ Verwaltungsstruktur) 
 +  * Entwicklung (Produkt- und Kontenumbenennungen,​ -zusammenlegungen,​ -aufspaltungen,​ -neue, -beendete) 
 + 
 +==== Klassen ==== 
 + 
 +Folgende Klassen definieren die sachlichen Strukturen (domain model) meiner Implementierung von Haushalten. 
 + 
 +Die Klassen sind alle in English benannt, um auch eine Basis für die internationale Zusammenarbeit zu schaffen. 
 + 
 +=== Administration === 
 + 
 +Die Verwaltung eines Gebiets (Gebietskörperschaft),​ für die der Haushalt gilt. Die Administration hat genau ein //Budget//, der alle Jahre umfaßt. 
 + 
 +Verwaltungen haben unterschiedliche Regeln für den Haushalt. Jedes Bundesland hat verschiedene genaue Anforderungen für die Form und den Inhalt der Haushaltsdokumente ihrer Kommunen. Die Länder haben auch jeweils andere Regeln, insbesondere andere Regeln als sie ihren Kommunen aufgeben. Mann kann noch weiter gehen und die Haushalte von Staaten betrachten: alle anders - nur durch sehr allgemeine Vorgaben der WTO u.A. rudimentär vergleichbar gemacht. 
 + 
 +=== Budget === 
 +Der Haushalt. Es gibt genau ein Budget für jede //​Administration//​. Er besteht aus einer Menge von Produkten, die in der Summe dem Gesamthaushalt entsprechen. Die //​Product//​s sind hierarchisch in //​Productgroup//​s zusammengefaßt. Die Wurzel der Produktgruppenhierarchie ist Teil des Budgets.  
 + 
 +Hat keine Referenz zu der //​Administration//​ zu der es gehört. Stattdessen sollen die unterschiedlichen Regeln der Verwaltungen deklarativ beschrieben werden.  
 + 
 +//Budget//s entsprechen einer oder mehreren Dateien, die jährlich zu einem bestimmten Zeitpunkt als Haushaltsplan oder Ergebnis veröffentlicht werden. Ein //Budget// liest diese Daten, konstruiert einen einfachen Haushalt (in der Regel 6 Jahre: Vorvorjahresergebnis,​ Vorjahresplan,​ aktueller Plan, Folgejahresplan,​ Folgefolgejahresplan,​ Folgefolgefolgejahresplan) und integriert ihn in den vorhergehenden Haushalt. 
 + 
 +=== Product === 
 +Die Basiseinheit eines doppischen Haushalts für die eine Bilanz und eine Gewinn- und Verlustrechnung gemacht wird. Entspricht einer staatlichen Dienstleistung 
 + 
 +=== Productgroup === 
 +Gruppe von //Product// oder //​Productgroup//,​ die als //Product// gesehen werden kann 
 + 
 +=== ProfitLossAccount === 
 +Die Gewinn- und Verlustrechnung eines //Product//Besteht aus einer //​Accountgroup//​ die das Endergebnis repräsentiert 
 + 
 +=== Account === 
 +(Sammel-)Konto mit positiven (**In**) oder negativen (**Out**) Buchungen 
 + 
 +=== Accountgroup === 
 +Gruppe von //Account// oder //​Accountgroup//,​ die als //Account// gesehen werden kann 
 + 
 +=== Series === 
 +Zeitreihe von Plan- und Istwerten für mehrere Jahre 
 + 
  
 ===== CSV Format ===== ===== CSV Format =====
Zeile 101: Zeile 155:
   75625 Zeilen (3207 Buchungen, 914 checks) in 14.084774 seconds   75625 Zeilen (3207 Buchungen, 914 checks) in 14.084774 seconds
   3094 Zeilen (823 Buchungen, 384 checks) in 835.174 milliseconds   3094 Zeilen (823 Buchungen, 384 checks) in 835.174 milliseconds
-===== Modell ===== 
- 
-==== Klassen ==== 
- 
-Folgende Klassen definieren die sachlichen Strukturen (domain model) meiner Implementierung von Haushalten. 
- 
-Die Klassen sind alle in English benannt, um auch eine Basis für die internationale Zusammenarbeit zu schaffen. 
- 
-  * **City** - die administrative Gebiet, das einen Haushalt erstellt. 
-  * **Budget** - Der Haushalt. Das #product enthält die Wurzel-Productgroup. Hat keine Referenz zu der //City// zu der es gehört. Kann Haushalte von Tabellendateien lesen. 
-  * **Product** - die Basiseinheit eines doppischen Haushalts für die eine Bilanz und eine Gewinn- und Verlustrechnung gemacht wird. Entspricht einer staatlichen Dienstleistung 
-  * **Productgroup** - Gruppe von //Product// oder //​Productgroup//,​ die als //Product// gesehen werden kann 
-  * **ProfitLossAccount** - die Gewinn- und Verlustrechnung eines //​Product//​. Besteht aus einer //​Accountgroup//​ die das Endergebnis repräsentiert 
-  * **Account** - ein (Sammel-)Konto mit positiven (**In**) oder negativen (**Out**) Buchungen 
-  * **Accountgroup** - Gruppe von //Account// oder //​Accountgroup//,​ die als //Account// gesehen werden kann 
-  * **Series** - Zeitreihe von Plan- und Istwerten für mehrere Jahre 
  
  
haushaltsdaten.1599631996.txt.gz · Zuletzt geändert: 2020/09/09 08:13 von christian