Funktionsweise
Das Reporting Modul ermöglicht die Anpassung von Reports, die vom System verwendet werden um Berichte zu erzeugen.
Aktuell wird das Reporting-Modul für die Rechnungserstellung verwendet.
Das Reporting Module basiert auf den JasperReports Bibliotheken (hier Lizenz verweis??). Dabei werden .jrxml Dateien (Report-Vorlagen), die auf der Server-Umgebung zur Verfügung - falls notwendig - zur Laufzeit (bei Report-Erzeugung) übersetzt. Danach wird der Report ausgeführt. Dazu stellt das System die aktuelle Datenbankverbindung und die benötigten Laufzeitparameter (Reporting-Parameter) zur Verfügung. Die Reporting-Parameter sind dabei von System-Seite definiert und nicht von Report-Seite.
Damit Reports verwendet werden können müssen diese dem System über die Module/JasperReports Tabelle bekannt gemacht werden. Folgende Parameter müssen definiert sein
Parametername | Verwendungszweck | Beispiel |
---|---|---|
Report File Name | Absoluter Pfad der .jrxml Datei auf dem Server | /home/jboss/reports/musterTemplate.jrxml |
Report XML file | Future use | muss leer bleiben |
Default Reporting Clss | System-Klasse, für die der Report verwendet werden kann. | de.iconcept.nami.entity.abrechnung.Rechnung |
Subreport-ID | Kontext-spezifische eines Report anhand einer übergebenen Kontextvariablen. Beispiel: Bei der Erstellung einer Ausgangsrechnung wird als Kontext-ID die ID der Gruppierung, die die Ausgangsrechnung erstellt hat übergeben. Existiert nun ein Eintrag mit der Subreport-Id 20, dann wird nicht die Standardvorlage verwendet, sondern die spezisische. | 20 |
Name | Intern: Interner Name der Vorlage zur Identifikation im System-Logging. Es sind nur Alphanumerische Zeichen zulässige. Keine Whitespaces, insbesondere keine Leerzeichen. Das Name muss eindeutig sein. | musterReport20 |
Die Übersetzung der .Report-Dateien erfolgt im Verzeichnis /home/jboss/reports/build (Lese- und Schreibberechtigung für den Benutzer unter dem der Applikation Server läuft). Bei der Erzeugung der Reports entstehen im Verzeichnis /tmp ebenfalls temporäre Dateien. Dies sollten, bzw. müssen regelmäßig über einen Systemjob (cron-job) aufgeräumt werden.
Verwendung
Das Reporting-Modul wird gegenwärtig für die Abrechnung verwendet.
In der Regel existiert für die Eingangs- und Ausgangsrechnungen ein Standardvorlage für die Eingangs- und Ausgangsrechnungen.
Die Definition für die zu verwendende Standardvorlage wird in der Regel über Systemparameter gesteutert.
Systemparameter | Verwendung | Voreinstellung |
---|---|---|
RECHNUNG_REPORT_MITGLIEDER_DEFAULT | Vorlage Ausgangsrechnung Mitgliederabrechnung | 2 |
RECHNUNG_REPORT_VERBAND_DEFAULT | Vorlage Ausgangsrechnung Verbandsabrechnung | 4 |
Aktualisierung von Report Vorlagen
Bei der Aktualisierung von Report-Vorlagen muss der neue Report im Verzeichnis /home/reports abgelegt werden. Damit der Report neu übersetzt wird muss die vom System erzeugte Report-Datei (.jrxml) und die compilierte Version entfernt werden (.jasper). Die Namen der Dateien (ohne suffix) entsprechen dem Namen in der JasperReport-Tabelle. Falls die existierenden Dateien im Unterverzeichnis ./build nicht gelöscht wurden werden die "alten" Dateien weiterverwendet.
Sicherheit
Da das Reporting Modul ggf. Zugriff auf sämtliche Daten benötigt ist eine Rechtekontrolle innerhalb der Daten, die für einen Report verwendet werden nicht mehr möglich. Das bedeutet, dass Datensicherheit hier nur über den Zugriff der Report-Generierung hergestellt werden kann. Aus diesem Grund ist die Einstellung und Definition von Reports systemseitig beschränkt.
Standardvorlagen bearbeiten
Alle Standardvorlagen (.jrxml) können mit dem iReport- Designer (ab Version 5.1) der JasperSoft Community von (Download über SourceForge) bearbeitet werden.
Eine Datenbank für die Bearbeitung von Reports ist NICHT notwendig. Allerdings liefert der Preview dann natürlich keine Ergebnisse.
Beispieldatenbank
Beispieldatenbank auf dem Produktivsystem erzeugen - shell Kommandos:
user=LIVE_USER
db=LIVE_DB
host=LIVE_HOSTmysqldump -u $user -p -h $host $db Rechnung RechnungsItem LinkableEntry \
ZahlungsKondition BeitragsSatz BeitragsArt BeitragsKonto BeitragsZahlung> ica_report_data.sql
Standardvorlagen
Liste der Standardvorlagen, die in der jeweils aktuellen Version mit dem System installiert werden:
Vorlagenname | Inhalt |
---|---|
rechnungMitglieder.jrxml | Vorlage für die Rechnung bei Mitgliederabrechnung |
rechnungVerbandMitEinzel.jrxml | Vorlage für die Rechnung bei Verbandsabrechnung |