BIRT-Berichte

Ein zentraler Bestandteil der EGL-Unterstützung für BIRT (Business Intelligence and Reporting Tool) ist der externe Typ 'BIRTReport'. Im vorliegenden Abschnitt wird beschrieben, wie eine Variable dieses Typs erstellt und zur Ausgabegenerierung verwendet wird.

Eine Übersicht zur EGL-Unterstützung für BIRT finden Sie im Abschnitt zur Berichterstellung mit BIRT im Programmiererhandbuch ("Creating reports with BIRT", Programmer's Guide).

Variable des Typs 'BIRTReport' deklarieren

Bei der Deklaration eines Berichts (einer Variablen des Typs 'BIRTReport') können Sie einige oder alle der für die Berichterstellung erforderlichen Details einbeziehen. Sie können dann die berichtsspezifischen Felder und Funktionen aufrufen und Details, die in der Deklaration nicht enthalten waren, hinzufügen oder Details ändern. In allen Fällen geben Sie eine Vielzahl unterschiedlicher Details an und rufen erst zu einem späteren Zeitpunkt eine Funktion auf, die die Ausgabe für einen bestimmten Bericht erstellt.

Mithilfe der folgenden Syntax können Sie Details bei der Deklaration des Berichts angeben:

myReport BIRTReport = new BIRTReport
  (designFile, documentFile, reportFile,
   outputFormat, reportHandler); 
myReport
Der Name der Variablen.
designFile
Der Name der Designdatei. Wenn Sie die Ausgabe nicht aus einer Designdatei, sondern aus einer Dokumentdatei erstellen, wird jeder hier eingegebene Name ignoriert; der Übersichtlichkeit halber können Sie jedoch anstelle eines Dateinamens null angeben.

Weitere Informationen finden Sie unter 'Regeln für die Angabe von Dateinamen' zu einen späteren Zeitpunkt im vorliegenden Abschnitt.

documentFile
Der Name der Dokumentdatei. Wenn Sie die Ausgabe aus einer Designdatei erstellen, wird jeder hier eingegebene Name ignoriert; der Übersichtlichkeit halber können Sie jedoch anstelle eines Dateinamens null angeben.

Weitere Informationen finden Sie unter 'Regeln für die Angabe von Dateinamen' zu einen späteren Zeitpunkt im vorliegenden Abschnitt.

reportFile
Der Name der Berichtsdatei. Wenn Sie eine Dokumentdatei, aber keine Ausgabe erstellen, wird jeder hier eingegebene Name ignoriert; der Übersichtlichkeit halber können Sie jedoch anstelle eines Dateinamens null angeben.

Weitere Informationen finden Sie unter 'Regeln für die Angabe von Dateinamen' zu einen späteren Zeitpunkt im vorliegenden Abschnitt.

outputFormat
Wenn Sie eine Ausgabe erstellen, geben Sie 'HTML', 'PDF' oder eine Variable an, die in eine dieser Zeichenfolgen aufgelöst wird. Der Standardwert lautet 'HTML'. Wenn Sie nur eine Dokumentdatei erstellen, werden alle Einstellungen ignoriert; der Übersichtlichkeit halber können Sie jedoch anstelle eines Ausgabeformats null angeben.
reportHandler
Der Name einer Variablen, die auf einem BIRT-Handlerabschnitt basiert. Der Handlerabschnitt enthält Funktionen, die auf Laufzeitereignisse reagieren. Wenn Sie keinen BIRT-Handlerabschnitt verwenden, geben Sie null anstelle eines Variablennamens an.

Jedes Feld mit Ausnahme des letzten weist den Typ STRING? auf (das Fragezeichen gibt an, dass null ein gültiger Wert ist). Das letzte Feld weist den Typ ANY auf.

Die folgende Syntax enthält keine Details; Sie müssen Felder definieren, wie weiter unten beschrieben:
  myReport BIRTReport{};
myReport
Der Name der Variablen.
Diese zweite Syntax entspricht der folgenden:
  myReport BIRTReport = new BIRTReport();

Berichtsspezifische Felder und Funktionen

Jede Variable des Typs 'BIRTReport' bietet Zugriff auf Felder, in denen Sie den Designdateinamen, den Dokumentdateinamen, den Berichtsdateinamen oder das Ausgabeformat angeben können. Dem Verweis auf das jeweilige Feld ist ein Berichtsname wie myReport vorangestellt. Beispielanweisung:

myReport.designFile = "C:/myDesignFile.rptDesign";
Die Felder sind nachfolgend aufgeführt; jedes weist den Typ STRING auf:
designFile
Der Name der Designdatei. Wenn Sie die Ausgabe nicht aus einer Designdatei, sondern aus einer Dokumentdatei erstellen, wird jeder hier eingegebene Name ignoriert; der Übersichtlichkeit halber können Sie jedoch anstelle eines Dateinamens null angeben oder Sie können gar keinen Dateinamen angeben.

Weitere Informationen finden Sie unter 'Regeln für die Angabe von Dateinamen' zu einen späteren Zeitpunkt im vorliegenden Abschnitt.

documentFile
Der Name der Dokumentdatei. Wenn Sie die Ausgabe aus einer Designdatei erstellen, wird jeder hier eingegebene Name ignoriert; der Übersichtlichkeit halber können Sie jedoch anstelle eines Dateinamens null angeben oder Sie können gar keinen Dateinamen angeben.

Weitere Informationen finden Sie unter 'Regeln für die Angabe von Dateinamen' zu einen späteren Zeitpunkt im vorliegenden Abschnitt.

reportFile
Der Name der Berichtsdatei. Wenn Sie eine Dokumentdatei, aber keine Ausgabe erstellen, wird jeder hier eingegebene Name ignoriert; der Übersichtlichkeit halber können Sie jedoch anstelle eines Dateinamens null angeben.

Wenn Sie keinen Namen angeben, sondern createReportFromDesign oder createReportFromDocument aufrufen, wird von der Berichtsengine bei der Erstellung der Ausgabe ein Name zugewiesen.

Weitere Informationen finden Sie unter 'Regeln für die Angabe von Dateinamen' zu einen späteren Zeitpunkt im vorliegenden Abschnitt.

outputFormat
Wenn Sie eine Ausgabe erstellen, geben Sie für das Feld 'HTML', 'PDF' oder einen Ausdruck an, der in eine dieser Zeichenfolgen aufgelöst wird. Der Standardwert lautet 'HTML'. Wenn Sie nur eine Dokumentdatei erstellen, werden alle Einstellungen ignoriert; der Übersichtlichkeit halber können Sie jedoch anstelle eines Ausgabeformats null angeben.
Jede Variable des Typs 'BIRTReport' bietet darüber hinaus Zugriff auf eine Reihe von Funktionen:
  • Abrufen des Standardwerts, falls vorhanden, eines Berichtsparameters. Der Report Designer deklariert Parameter bei der Arbeit in der BIRT Report Designer-Datenexploreransicht.
  • Festlegen des Werts eines Berichtsparameters vor der Erstellung des Berichts.
  • Zuweisen eines Berichtshandlers.
  • Erstellen des Berichts durch den Aufruf einer von drei Erstellungsfunktionen. Hiermit können Sie die Ausgabe im PDF- oder HTML-Format generieren oder nur eine Dokumentdatei erstellen. Wenn Sie Feldwerte, Berichtsparameterwerte oder einen Berichtshandler zugewiesen haben, werden Ihre Änderungen erst wirksam, wenn Sie anschließend eine berichtsspezifische Erstellungsfunktion aufrufen. Beachten Sie, dass das Zuweisen von Berichtsparameterwerten keine Auswirkungen hat, wenn Sie einen Bericht aus einer Dokumentdatei erstellen, da die Dokumentdatei die Parameterwerte wiedergibt, die bei der Erstellung der Datei festgelegt waren.
Jede Funktion wird durch einen Berichtsnamen wie myReport qualifiziert, wie im folgenden Beispiel dargestellt:
myReport.setParameterValue("CustomerNumber", 500);
Zuerst werden die Funktionen erläutert, die Berichtsparameter verarbeiten. Die folgende Funktion, setParameterValue, weist einem angegebenen Parameter einen Wert zu:
myReport.setParameterValue
         (parameterName STRING in, parameterValue ANY in);
parameterName
Der Parametername.
parameterValue
Der Parameterwert.
Die Funktion getParameterDefaultValue ruft den Standardparameterwert ab, der zum Designzeitpunkt angegeben wurde, selbst wenn die Handlerfunktion setParameterValue den Standardwert zur Laufzeit außer Kraft setzt. Um einen Fehler zu vermeiden, müssen Sie den Designdateinamen vor dem Aufrufen dieser Funktion festlegen. Der Aufruf lautet wie folgt:
myReport.getParameterDefaultValue 
         (parameterName STRING in) returns (parameterValue);
parameterName
Der Parametername.
parameterValue
Der Parameterwert, der den Typ ANY aufweist.
Als nächstes wird die Funktion erläutert, die einen Berichtshandler definiert:
myReport.setReportHandler (reportHandler ANY in);
reportHandler
Der Name einer Variablen, die auf einem BIRT-Handlerabschnitt basiert. Der Handlerabschnitt enthält Funktionen, die auf Laufzeitereignisse reagieren. Wenn Sie keinen BIRT-Handlerabschnitt verwenden, geben Sie entweder null an oder rufen Sie diese Funktion nicht auf.
Zuletzt werden nun die drei Erstellungsfunktionen erläutert, für die keine Argumente angegeben werden können:
  • 'myReport.createReportFromDesign ()' erstellt eine Ausgabe aus einer Designdatei und verwendet Informationen, die Sie gegebenenfalls mithilfe von Feldern und Funktionen angeben, speichert jedoch keine Dokumentdatei.
  • 'myReport.createReportFromDocument ()' erstellt eine Ausgabe aus einer vorhandenen Dokumentdatei und konvertiert dabei einen vorhandenen Bericht aus einem temporären Format in HTML oder PDF.
  • 'myReport.createDocument ()' erstellt eine Dokumentdatei aus einer Designdatei und verwendet Informationen, die Sie mithilfe von Feldern und Funktionen angeben.

Regeln für die Angabe von Dateinamen

Bei der Angabe von Dateinamen zur Verwendung im EGL-Code, der BIRT unterstützt, gelten einige Regeln:
  • Sie können einen Namen im UNIX-Format angeben. Beispiel: C:/myFolder/myFile.rptDesign. Alternativ dazu können Sie auch ein Windows-Format verwenden, müssen dabei jedoch beachten, dass der umgekehrte Schrägstrich in EGL als Escapezeichen verwendet wird. Beispiel: C:\\myDirectory\\myDesignFile.rptDesign.
  • Sie können einen Dateinamen relativ zu dem Projekt angeben, in dem sich die Datei befindet.
  • Sie können eine Literalzeichenfolge oder eine Variable verwenden.
In vielen Fällen (wie oben beschrieben) wird von der EGL-Laufzeit ein Name zugewiesen und die Datei wird in das Standardverzeichnis für temporäre Dateien geschrieben:
  • Auf Systemen unter UNIX lautet das Verzeichnis '/tmp' oder '/var/tmp'.
  • Unter Microsoft 2000/XP lautet das Verzeichnis 'C:\\temp'.

Der Dateiname beginnt mit der Zeichenfolge 'BIRTReport'. Auf diese Zeichenfolge folgt eine Reihe von Zeichen, die vom EGL-Systemcode zugewiesen werden. Die Dateierweiterung entspricht dem Dateityp und lautet '.rptdocument', '.PDF' oder '.HTML'.


Feedback