Projekt

Allgemein

Profil

Ablauf der Reporterzeugung » Historie » Version 1

Steffen Christgau, 13.02.2013 21:31

1 1 Steffen Christgau
h1. Ablauf der Reporterzeugung
2
3
h2. Prinzipieller Ablauf
4
5
Reports werden grundsätzlich aus den Ergebnissen einer oder mehrerer Datenbankabfragen generiert. Die Ergebnisse werden in einer XML-Datei gespeichert. Aus dieser Rohdatendatei können mit Hilfe von _Backends_ verschiedene Ausgaben generiert werden. Zur Zeit sind dies PDF-Dateien, CSV-Dateien oder die direkte Ausgabe an den Drucker. Nicht für alle Reports werden alle Ausgabeformate unterstützt. 
6
7
Die Einstellungen für die Reporterzeugung und einzelnen Reports erfolgt über eine Vielzahl von Dateien, die sich unter dem Verzeichnis @reporting@ befinden.
8
9
h2. Generierung der Rohdaten
10
11
12
h2. Umwandlung in Ausgabeformate
13
14
Die Umwandlung in andere Formate geschieht grundsätzlich mit XML-Stylesheets (XSL-Dateien). Diese Dateien befinden sich im Verzeichnis @XSL@ und Unterverzeichnissen, die nach dem jeweiligen _Backend_ benannt sind (@FP@ ist das Backend für den Direktdruck, @INC@ enthält allgemeine, wiederverwendbare Dateien). Soll ein Backend einen Report unterstützen, muss eine XSL-Datei im Verzeichnis des Backends mit dem Kürzel des Reports existieren (bspw. M_ME.xsl für das Meldeergebnis). Die XSL-Datei wird schließlich auf die XML-Datei, die die Rohdaten enthält, angewendet ("XSL Transformation":http://de.wikipedia.org/wiki/XSL_Transformation).
15
16
Zur Generierung von PDFs wird durch die XSL-Transformation eine XSL-FO-Datei erzeugt. Diese wird anschließend durch "Apache FOP":http://xmlgraphics.apache.org/fop/ in eine PDF-Datei umgewandelt. Da Apache FOP eine Java-Anwendung ist, ist für das Erzeugen von PDFs eine [[Aquarius_installieren#Systemvoraussetzungen|Java-Installation notwendig]].
17
18
Im Falle von CSV erfolgt nach der XSL-Transformation keine weitere Umwandlung. 
19
20
Für die direkte Druckausgabe wird eine Seitenbeschreibung generiert und anschließend an den Drucker gesendet.