Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Das Vorlagen-Modul ermöglicht die Anpassung Verwaltung von Reports,

  • die vom System verwendet werden, um

...

  • bestimmte Dokumente zu erzeugen, z.B. Rechnungsvorlagen
  • sowie von beliebigen individuellen Reports, die unter Modul Reports erstellt wurden
Info

Aktuell wird das Modul nur für die Rechnungserstellung (Rechnungsvorlagen) verwendet. Zum Erzeugen von allgemeinen Reports siehe Modul Reports.

Table of Contents

Funktionsweise

Das Modul basiert auf den JasperReports Bibliotheken (freier Report-Designer unter http://community.jaspersoft.com/project/ireport-designer). 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.

...

Der Unterschied zwischen dem Modul "Vorlagen" und dem Modul "Reports" besteht daran, dass unter "Reports" auch das Ausführen eines Reports möglich ist. Bezüglich der Verwaltung von Reports sind beide Interfaces ansonsten identisch.

Table of Contents

Vorlagen verwalten - Anlegen & Bearbeiten von Reports

Report im Dateisystem ablegen

Nachdem ein Report als .jrxml-Datei erstellt wurde (s.u.), muss der Report zuerst physisch an der definierten Stelle im Dateisystem abgelegt werden; es ist im Moment nicht möglich, Reports direkt hochzuladen:

  • /home/jboss/reports/

Die Übersetzung der Report-Dateien erfolgt im Verzeichnis

  • /home/jboss/reports/build 

In diesem Verzeichnis entsteht eine umbenannte Kopie der Original-.jrxml-Datei sowie weitere Dateien (.jasper). Erforderlich sind Lese- und Schreibberechtigung für den Benutzer, unter dem der Application Server läuft.

Info

Bei der Erzeugung der Reports entstehen im Verzeichnis /tmp ebenfalls temporäre Dateien. Diese sollten bzw. müssen regelmäßig über einen Systemjob (cron-job) aufgeräumt werden.

Anlegen & Bearbeiten von Reports

Damit eine ins Dateisystem kopierte Vorlage verwendet werden kann, muss diese dem System anschließend bekannt gemacht werden, indem im Interface ein neuer Report angelegt wird. Folgende Parameter müssen definiert sein:

...

ParameternameVerwendungszweckBeispielReport File Name
Name

Interner Name der Vorlage. Dieser Name wird u.a. verwendet, um aus der auf sem Server hinterlegten .jrxml-Datei die ausführbaren Dateien zu erzeugen.

Note

Es sind nur alphanumerische Zeichen zulässig, keine Leerzeichen, der Name muss eindeutig sein.

musterReport20
BeschreibungBeschreibung des Reports 
Dateipfad

Absoluter Pfad der .jrxml Datei auf dem Server.

  • /home/jboss/reports/
/home/jboss/reports/musterTemplate.jrxml
Report XML fileFuture use-Dateinicht implementiertmuss leer bleiben
Default Reporting ClassReport-KlasseSystem-Klasse, für die der Report verwendet werden kann.de.iconcept.nami.entity.abrechnung.Rechnung
Subreport-ID

Kontext-spezifische ID 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 spezifische Vorlage.

20
Name

Intern: Interner Name der Vorlage zur Identifikation im System-Logging.

Es sind nur alphanumerische Zeichen zulässige. 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. Diese sollten bzw. müssen regelmäßig über einen Systemjob (cron-job) aufgeräumt werden.

Verwendung

Das Modul wird gegenwärtig für die Abrechnung (Rechnungsvorlagen) verwendet. In der Regel existiert für die Eingangs- und Ausgangsrechnungen ein Standardvorlage. Die Definition für die zu verwendende Standardvorlage wird in der Regel über Systemparameter gesteuert.

SystemparameterVerwendungVoreinstellung
RECHNUNG_REPORT_MITGLIEDER_DEFAULTVorlage Ausgangsrechnung Mitgliederabrechnung2
RECHNUNG_REPORT_VERBAND_DEFAULTVorlage Ausgangsrechnung Verbandsabrechnung4

Aktualisierung von Report Vorlagen

RechtAuswahl eines (funktionalen, nicht gruppierungsbeschränkten) Rechts, über das ein Benutzer verfügen muss, um den Report ausführen zu können. 

Vorlagen verwalten - Dateien ersetzen

Will man eine existierende Report-Vorlage überschreiben, muss zuerst der neue Report im Verzeichnis

  • /home/reports 

abgelegt werden (s.o.).

Damit der Report neu übersetzt wird, muss außerdem die vom System erzeugte Report-Datei (.jrxml) und auch die kompilierte Version entfernt werden (.jasper). Die Namen der Dateien (ohne Suffix) entsprechen dem Namen in der JasperReport-Tabelle. Diese Dateien befinden sich im Unterverzeichnis

  • ./build 
Note

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 (siehe http://community.jaspersoft.com/project/ireport-designer) bearbeitet werden.

Info

Eine Datenbank für die Bearbeitung von Reports ist nicht notwendig. Allerdings liefert der Preview dann natürlich keine Ergebnisse.

Schriften

Bei Änderungen an den Reports sollte unbedingt darauf geachtet werden, dass nicht alle Schriftarten (Fonts), die ggf. im Report Designer angeboten werden, verwendbar sind. Verwendet werden können nur diejenigen Schriftarten, die auf dem Server, auf dem der Report später erzeugt wird, auch installiert sind. Da die Font-Dateien sind nicht Bestandteil der Reportvorlage sind (da die Weitergabe von Fonts ggf. rechtlichen Beschränkungen unterliegen kann), sollte die Reporterzeugung in jedem Fall auf dem Zielsystem geprüft werden.

Darüber hinaus sollte -sofern die verwendeten Schriften keine Standardschriften sind - die Option "pdfEmbedded" (im iReport Designer unter "Styles") angehakt werden. Dies führt bei der Erzeugung des Reports aus der Reportvorlage dazu, dass die verwendete Schriftart in der erzeugten PDF-Datei enthalten ist. Damit kann erreicht werden, dass ein Dokument auch auf Systemen angezeigt (gedruckt) werden kann, die die angegebene Schriftart nicht kennen.  

Tip

Sollen andere Schriften als die Standardschriften verwendet werden, dann sollte vorab geprüft werden, ob diese auf dem Server System installiert sind (Kommandozeile: fc-list :lang=DE).

Standardschriften

Die JasperReport Biliotheken verwenden die iText Bibliotheken, um die Schriften zu rendern. Folgende Schriften funktionieren damit in jedem Fall:

  • Courier

  • Courier-Bold

  • Courier-BoldOblique

  • Courier-Oblique

  • Helvetica

  • Helvetica-Bold

  • Helvetica-BoldOblique

  • Helvetica-Oblique

  • Symbol

  • Times-Roman

  • Times-Bold

  • Times-BoldItalic

  • Times-Italic

  • ZapfDingbats

Beispieldatenbank

Eine Beispieldatenbank dient dazu, sich die Ergebnisse von Änderungen an Vorlagen sinnvoll ansehen zu können. Beispieldatenbank auf dem Produktivsystem erzeugen über folgende shell-Kommandos:

  • user=LIVE_USER
    db=LIVE_DB
    host=LIVE_HOST

  • mysqldump -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:

...

Standardvorlagen

Abrechnung

Für die Mitglieder- und Verbandsabrechnung existiert eine Standardvorlage. Die Definition für die zu verwendende Standardvorlage wird in der Regel über Systemparameter (siehe System) gesteuert.

SystemparameterBeschreibungVoreinstellung
RECHNUNG_REPORT_MITGLIEDER_DEFAULTID der zu verwendenden Vorlage Ausgangsrechnung Mitgliederabrechnung2
RECHNUNG_REPORT_VERBAND_DEFAULTID der zu verwendenden  Vorlage Ausgangsrechnung Verbandsabrechnung4

Liste der Standardvorlagen, die mindestens in der jeweils aktuellen Version mit dem System installiert werden:

VorlageInhaltBemerkungen
rechnungMitglieder.jrxmlVorlage für die Rechnung bei Mitgliederabrechnung.
Note

Beim Report für die Mitgliedsabrechnung muss bei der Klassen-Defintion (Feld: Report-Klasse) die Klasse de.iconcept.nami.entity.abrechnung.RechnungMgl gesetzt werden.

rechnungVerbandMitEinzel.jrxmlVorlage für die Rechnung bei Verbandsabrechnung.inkl. Detailaufstellung

Modul Führungszeugnisse

Für das Modul Führungszeugnisse (siehe Modul Führungszeugnisse) werden zwei Vorlagen benötigt:

  1. Antragsunterlagen (mehrere Seiten)
  2. Bescheinigung

Damit Vorlagen als .jrxml-Dateien verwendet werden können, mussen einige Systemparameter (siehe System) gesetzt werden:

SystemparameterBeschreibungVoreinstellung
FZ_USE_JASPER_REPORTSnur wenn auf ja gesetzt, werden .jrxml-Vorlagen verwendetnein (in älteren Versionen wurde für die Vorlagen des Moduls Führungszeugnisse eine andere Technologie verwendet, die weiter unterstützt wird)
REPORT_FUEHRUNGSZEUGNIS_BEANTRAGUNGID der zu verwendenden Vorlage für die mehrseitigen Antragsunterlagen15
REPORT_FUEHRUNGSZEUGNIS_BESCHEINIGUNGID der zu verwendenden Vorlage für die Bescheinigung4

Folgende Vorlagen werden als Basis mitgeliefert:

VorlageInhaltBemerkungen
ica-fz-beantragen.jrxmlVorlage für die mehrseitigen Antragsunterlagen 
ica-fz-bescheinigung.jrxmlVorlage für die Bescheinigung 

.jrxml-Report/Vorlage erstellen oder bearbeiten

Siehe dazu Modul Reports.