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'.