In diesem Abschnitt werden die externen EGL-Typen beschrieben, die Sie bei der Codierung eines Ereignishandlers für das Berichtslayout verwenden. Hintergrundinformationen finden Sie in den Abschnitten 'EGL-BIRT-Berichte', 'BIRT-Handler' und 'BIRT-Ereignishandler für das Berichtslayout'.
Eine Variable des Typs 'CellInstance' referenziert eine Zelle in einer Berichtstabelle oder einem Berichtsraster. Hintergrunddetail: Der Report Designer oder der Ereignishandler ermöglichen die Definition einer Zelle durch die Kombination von Spalten, Zeilen oder beidem.
Die Funktionen und Felder, die im Abschnitt 'ReportElementInstance' beschrieben werden, sind ebenfalls verfügbar.
function myFunction( myCell CellInstance, myContext ReportContext )
{ eventType = onCreate, elementName = "myTable", rowNumber = 2 }
if (myCell.columnNumber == 1)
;
end
end
Die Felder und Funktionen, die in den Abschnitten 'ReportElementInstance' und 'ReportItemInstance' beschrieben sind, sind ebenfalls verfügbar.
function myFunction( myData DataInstance, myContext ReportContext )
{ eventType = onCreate, elementName = "DepartmentName"}
if (myData.value == "Sales")
;
end
end
Die Felder und Funktionen, die in den Abschnitten 'ReportElementInstance' und 'ReportItemInstance' beschrieben sind, sind ebenfalls verfügbar.
function myFunction( myText DynamicTextInstance, myContext ReportContext )
{ eventType = onCreate, elementName = "resultOfEvaluation" }
if (myText.text == "<b>Promote!</b>";
;
end
end
Eine Variable des Typs 'GridInstance' referenziert ein Raster, d. h. eine einfache tabellenartige Struktur. Die einzigen verfügbaren Funktionen sind die in den Abschnitten 'ReportElementInstance' und 'ReportItemInstance' beschriebenen Funktionen.
function myFunction( myGridInstance GridInstance, myContext ReportContext )
{ eventType = onCreate, elementName = "myGrid" }
;
end
Wenn Sie im BIRT-Designer arbeiten, geben Sie den Typ des Images in der Anzeige für die Bearbeitung von Bildelementen an. In der BIRT-Dokumentation werden Images des Typs 'URI' und 'Datei' als verknüpfte Images bezeichnet.
Die Variable macht die folgenden Felder verfügbar:
Die Getter-Methode und die Setter-Methode des Java-Codes lauten getData und setData.
Die Getter-Methode und die Setter-Methode des Java-Codes lauten getImageName und setImageName.
Die Getter-Methode und die Setter-Methode des Java-Codes lauten getURL und setURL.
Die Getter-Methode des Java-Codes lautet getURI.
Die Getter-Methode und die Setter-Methode des Java-Codes lauten getMimeType und setMimeType.
Die Getter-Methode und die Setter-Methode des Java-Codes lauten getFile und setFile.
function changeImage( theImage ImageInstance, myContext ReportContext )
{ eventType = onCreate, elementName = "salesGraphic" }
theImage.imageURI == "file:///c:/images/myGraphic01.bmp";
end
function changeImage( theImage ImageInstance, myContext ReportContext )
{ eventType = onCreate, elementName = "salesGraphic02" }
theImage.embeddedImageName = "myGraphic02.bmp";
end
Die Felder und Funktionen, die in den Abschnitten 'ReportElementInstance' und 'ReportItemInstance' beschrieben sind, sind ebenfalls verfügbar.
function myLabelFunction( theLabel LabelInstance, myContext ReportContext )
{ eventType = onCreate, elementName = "remark_label" }
balance float = theLabel.getRowData().getColumnValue("account_balance");
if( balance > 0 )
theLabel.text = "Balance Due";
theLabel.getStyle().color = "red";
end
end
Eine Variable des Typs 'ListInstance' referenziert eine Liste. Die einzigen verfügbaren Funktionen sind die in den Abschnitten 'ReportElementInstance' und 'ReportItemInstance' beschriebenen Funktionen.
function myFunction( myList ListInstance, myContext ReportContext )
{ eventType = onCreate, elementName = "employeeList" }
;
end
reportContext.setParameterValue
( parameterName STRING in, parameterValue ANY in )
reportContext.getParameterValue
( parameterName STRING in) returns (ANY)
'ReportContext' ist kein Berichtslayoutelementtyp und nicht relevant für die Abschnitte zu 'ReportElementInstance' und 'ReportItemInstance'.
Der Typ 'ReportElementInstance' entspricht einer Java™-Superklasse und ist allen anderen Berichtslayoutelementtypen übergeordnet, einschließlich den Typen 'CellInstance', 'RowInstance' und der Java-Superklasse 'ReportItemInstance'. Das Feld und die Funktionen, die in diesem Abschnitt beschrieben sind, sind für eine Variable eines beliebigen dieser Typen verfügbar.
Einige Felder und Funktionen greifen auf die folgenden CSS-Maßeinheiten (CSS = Cascading Style Sheet) zu: cm (Zentimeter), em (für eine bestimmte Schriftart erforderliche Höhe), ex (schriftartspezifische Höhe des Buchstabens x), in (Inch), mm (Millimeter), pc (Pica), % (Prozentsatz der Höhe des einschließenden Elements), pt (Punkt), px (Pixel). Hintergrunddetails finden Sie in http://www.w3.org/TR/CSS21/syndata.html.
element.getParent()returns (ReportElementInstance)
function myLabelFunction( theLabel LabelInstance, myContext ReportContext )
{ eventType = onCreate, elementName = "remark_label" }
myReportInstance ReportElementInstance = theLabel.getParent();
if (myReportInstance isa CellInstance )
myCellInstance CellInstance =
myReportElementInstance as CellInstance;
if (myCellInstance.columnNumber == 1)
;
end
end
end
element.getRowData() returns (RowData)
element.getStyle() returns (Style)
element.getNamedExpressionValue
(expressionName STRING in) returns (ANY)
function onTotalLabel( l LabelInstance, c ReportContext )
{ eventType = onCreate, elementName = "total" }
l.text = "Total balance = " + l.getNamedExpressionValue("BalanceTotal");
end
'RowData' ist kein Berichtslayoutelementtyp wie 'LabelInstance', und kein Ereignishandler verwendet einen Parameter des Typs 'RowData'. Stattdessen wird ein Objekt des Typs 'RowData' zurückgegeben, wenn 'element.getRowData()' aufgerufen wird. Eine Beschreibung hierzu finden Sie im Abschnitt zu 'ReportElementInstance'.
element.getRowData().getColumnCount() returns (INT)
element.getRowData().getColumnName( columnNumber INT in )returns (STRING)
Die erste Spalte weist die Nummer 1 auf, nicht 0.
element.getRowData().getColumnValue( columnName STRING in )returns (ANY)
element.getRowData().getColumnValue( columnNumber INT in ) returns (ANY)
Die erste Spalte weist die Nummer 1 auf, nicht 0.
Eine Variable des Typs 'RowInstance' referenziert eine Zeile in einer Berichtstabelle. Die einzigen verfügbaren Funktionen sind die im Abschnitt 'ReportElementInstance' beschriebenen Funktionen.
function myFunction( myRow RowInstance, myContext ReportContext )
{ eventType = onCreate, elementName = "myTable", rowType = detail, rowNumber = 2 }
;
end
'Style' ist kein Berichtslayoutelementtyp wie 'LabelInstance', und kein Ereignishandler verwendet einen Parameter des Typs 'Style'. Stattdessen wird ein Objekt des Typs 'Style' zurückgegeben, wenn 'element.getStyle()' aufgerufen wird. Eine Beschreibung hierzu finden Sie im Abschnitt zu 'ReportElementInstance'.
myElement.getStyle().backgroundColor = "red";
myColor STRING;
myColor = myElement.getStyle().backgroundColor;
Wie in der folgenden Tabelle dargestellt kann auf viele Java-Felder auf diese Weise zugegriffen werden.
| Feldname | Bedeutung |
|---|---|
| backgroundAttachment | Gibt an, ob ein Hintergrundimage beim Blättern zusammen mit dem Rest der Seite verschoben wird oder fixiert bleibt. Der Wert lautet 'scroll' (Standardwert) oder 'fixed'. |
| backgroundColor | Die Hintergrundfarbe des Elements. |
| backgroundImage | Die Web- oder Dateiadresse des Hintergrundimages. |
| backgroundPositionX | Die horizontale Position des Hintergrundimages: 'center', 'left', 'right' oder eine Zeichenfolge bestehend aus einer Zahl und einer Maßeinheit, z. B. '12pc'. Die Zeichenfolge enthält keine Leerzeichen. Weitere Details zu Maßeinheiten finden Sie im Abschnitt zu 'ReportElementInstance'. |
| backgroundPositionY | Die vertikale Position des Hintergrundimages: 'center', 'top', 'bottom' oder eine Zeichenfolge bestehend aus einer Zahl und einer Maßeinheit, z. B. '12pc'. Die Zeichenfolge enthält keine Leerzeichen. Weitere Details zu Maßeinheiten finden Sie im Abschnitt zu 'ReportElementInstance'. |
| backgroundRepeat | Gibt an, ob ein Hintergrundimage wiederholt wird: 'repeat' (Standardwert: horizontal und vertikal auf der Seite wiederholen), 'no-repeat' (keine Wiederholung), 'repeat-x' (horizontal auf der Seite wiederholen) oder 'repeat-y' (vertikal auf der Seite wiederholen). |
| borderBottomColor | Die Farbe der Umrandung ganz unten. Eine Farbe ist nur verfügbar, wenn 'borderBottomStyle' festgelegt ist. |
| borderBottomStyle | Ein Wert (falls zutreffend) zur Beschreibung der Umrandung ganz unten: 'solid' (durchgezogen), 'dotted' (gepunktet), 'dashed' (gestrichelt), 'double' (doppelt). |
| borderBottomWidth | Die Breite der Umrandung ganz unten: 'thin', 'medium', 'thick'. Eine Breite ist nur verfügbar, wenn 'borderBottomStyle' festgelegt ist. |
| borderLeftColor | Die Farbe der Umrandung ganz links. Eine Farbe ist nur verfügbar, wenn 'borderLeftStyle' festgelegt ist. |
| borderLeftStyle | Ein Wert (falls zutreffend) zur Beschreibung der Umrandung ganz links: 'solid' (durchgezogen), 'dotted' (gepunktet), 'dashed' (gestrichelt), 'double' (doppelt). |
| borderLeftWidth | Die Breite der Umrandung ganz links: 'thin', 'medium', 'thick'. Eine Breite ist nur verfügbar, wenn 'borderLeftStyle' festgelegt ist. |
| borderRightColor | Die Farbe der Umrandung ganz rechts. Eine Farbe ist nur verfügbar, wenn 'borderRightStyle' festgelegt ist. |
| borderRightStyle | Ein Wert (falls zutreffend) zur Beschreibung der Umrandung ganz rechts: 'solid' (durchgezogen), 'dotted' (gepunktet), 'dashed' (gestrichelt), 'double' (doppelt). |
| borderRightWidth | Die Breite der Umrandung ganz rechts: 'thin', 'medium', 'thick'. Eine Breite ist nur verfügbar, wenn 'borderRightStyle' festgelegt ist. |
| borderTopColor | Die Farbe der Umrandung ganz oben. Eine Farbe ist nur verfügbar, wenn 'borderTopStyle' festgelegt ist. |
| borderTopStyle | Ein Wert (falls zutreffend) zur Beschreibung der Umrandung ganz oben: 'solid' (durchgezogen), 'dotted' (gepunktet), 'dashed' (gestrichelt), 'double' (doppelt). |
| borderTopWidth | Die Breite der Umrandung ganz oben: 'thin', 'medium', 'thick'. Eine Breite ist nur verfügbar, wenn 'borderTopStyle' festgelegt ist. |
| canShrink | Gibt an, ob der Textbereich in der HTML-Ausgabe verkleinert werden soll, wenn der Inhalt nicht den gesamten Bereich benötigt: 'false' (Standardwert) oder 'true'. |
| color | Die Vordergrundfarbe des Elements. |
| dateFormat | Eines der durch BIRT definierten Standarddatumsformate:
BIRT ermöglicht es dem Report Designer darüber hinaus, ein benutzerdefiniertes Format auf der Basis eines Musters festzulegen, das von der Java-Klasse 'SimpleDateFormat' unterstützt wird. Beispielsweise kann das Format 'M/d/yyyy, E' verwendet werden, mit dem das aktuelle Beispiel als '10/20/1998 Tues' angezeigt wird. |
| displayType | Gibt an, ob das Element in einem separaten Textblock, in der aktuellen Zeile innerhalb des aktuellen Textblocks oder gar nicht angezeigt wird. Die Werte lauten 'block' (Standardwert), 'inline' und 'none'. Die EGL-Eigenschaft displayType entspricht der zugrunde liegenden Java-spezifischen Eigenschaft display. |
| fontFamily | Die Schriftartengruppe: 'serif' (Standardwert), 'sans-serif', 'cursive', 'fantasy', 'monospace' usw. |
| fontSize | Die Schriftgröße des Texts. Eine der durch BIRT definierten Standardgrößen: 'medium' (Standardwert), 'large', 'larger' 'small', 'smaller', 'x-large', 'x-small', 'xx-large' oder 'xx-small'. Alternativ dazu kann der Wert eine Zeichenfolge bestehend aus einer Zahl und einer Maßeinheit sein, z. B. '12pc'. Die Zeichenfolge enthält keine Leerzeichen. Weitere Details zu Maßeinheiten finden Sie im Abschnitt zu 'ReportElementInstance'. |
| fontStyle | Der Schriftstil des Texts: 'normal' (Standardwert), 'italic' oder 'oblique'. |
| fontVariant | Die Schriftvariante: 'normal' (Standardwert) oder 'small-caps'. |
| fontWeight | Die Schriftstärke des Texts: 'normal', 'bold', 'bolder', 'lighter' oder ein Hunderterwert von 100 bis 900. |
| letterSpacing | Das Leerzeichen zwischen den Buchstaben. Der Standardwert lautet 'normal' (der Wert ist für die jeweilige Schriftart spezifisch). Alternativ dazu kann der Wert eine Zeichenfolge bestehend aus einer Zahl und einer Maßeinheit sein, z. B. '12pc'. Die Zeichenfolge enthält keine Leerzeichen. Weitere Details zu Maßeinheiten finden Sie im Abschnitt zu 'ReportElementInstance'. |
| lineHeight | Die Zeilenhöhe: Der Standardwert lautet 'normal' (der Wert ist für die jeweilige Schriftart spezifisch). Alternativ dazu kann der Wert eine Zeichenfolge bestehend aus einer Zahl und einer Maßeinheit sein, z. B. '12pc'. Die Zeichenfolge enthält keine Leerzeichen. Weitere Details zu Maßeinheiten finden Sie im Abschnitt zu 'ReportElementInstance'. |
| marginBottom | Der Abstand zwischen der untersten Linie der Umrandung und dem nächsten horizontalen Element. Die Zeichenfolge enthält keine Leerzeichen und beinhaltet eine Maßeinheit; z. B. '12pc'. Weitere Details zu Maßeinheiten finden Sie im Abschnitt zu 'ReportElementInstance'. |
| marginLeft | Der Abstand zwischen der ganz linken Linie der Umrandung und dem vorhergehenden vertikalen Element. Die Zeichenfolge enthält keine Leerzeichen und beinhaltet eine Maßeinheit; z. B. '12pc'. Weitere Details zu Maßeinheiten finden Sie im Abschnitt zu 'ReportElementInstance'. |
| marginRight | Der Abstand zwischen der ganz rechten Linie der Umrandung und dem nächsten vertikalen Element. Die Zeichenfolge enthält keine Leerzeichen und beinhaltet eine Maßeinheit; z. B. '12pc'. Weitere Details zu Maßeinheiten finden Sie im Abschnitt zu 'ReportElementInstance'. |
| marginTop | Der Abstand zwischen der obersten Linie der Umrandung und dem vorhergehenden horizontalen Element. Die Zeichenfolge enthält keine Leerzeichen und beinhaltet eine Maßeinheit; z. B. '12pc'. Weitere Details zu Maßeinheiten finden Sie im Abschnitt zu 'ReportElementInstance'. |
| masterPage | Eine Zeichenfolge, die die Masterseite identifiziert. |
| numberFormat | Eines der durch BIRT definierten Zahlenformate: Beispiele: 'General Number', 'Fixed', 'Percent' und 'Scientific'. BIRT ermöglicht es dem Report Designer darüber hinaus, ein benutzerdefiniertes Format auf der Basis eines Musters festzulegen, das von der Java-Klasse 'DecimalFormat' unterstützt wird. Beispielsweise kann das Zahlenformat '$#,##0.00' verwendet werden, durch das die Zahl 123456 als $1,234.56 angezeigt wird. |
| paddingBottom | Abstand zwischen dem Inhalt eines Elements und der untersten Linie in der Umrandung des Elements. Die Zeichenfolge enthält keine Leerzeichen und beinhaltet eine Maßeinheit; z. B. '12pc'. Weitere Details zu Maßeinheiten finden Sie im Abschnitt zu 'ReportElementInstance'. |
| paddingLeft | Abstand zwischen dem Inhalt eines Elements und der ganz linken Linie in der Umrandung des Elements. Die Zeichenfolge enthält keine Leerzeichen und beinhaltet eine Maßeinheit; z. B. '12pc'. Weitere Details zu Maßeinheiten finden Sie im Abschnitt zu 'ReportElementInstance'. |
| paddingRight | Abstand zwischen dem Inhalt eines Elements und der ganz rechten Linie in der Umrandung des Elements. Die Zeichenfolge enthält keine Leerzeichen und beinhaltet eine Maßeinheit; z. B. '12pc'. Weitere Details zu Maßeinheiten finden Sie im Abschnitt zu 'ReportElementInstance'. |
| paddingTop | Abstand zwischen dem Inhalt eines Elements und der obersten Linie in der Umrandung des Elements. Die Zeichenfolge enthält keine Leerzeichen und beinhaltet eine Maßeinheit; z. B. '12pc'. Weitere Details zu Maßeinheiten finden Sie im Abschnitt zu 'ReportElementInstance'. |
| pageBreakAfter | Gibt die Bedingung an, unter der ein nachfolgender Seitenumbruch stattfindet: 'auto' (Standardwert, d. h. der Seitenumbruch findet automatisch statt, um andere Anforderungen hinsichtlich des Platzbedarfs zu erfüllen), 'always', 'avoid', 'always-excluding-first', 'always-excluding-last'. |
| pageBreakBefore | Gibt die Bedingung an, unter der ein Seitenumbruch unmittelbar vor dem Element stattfindet: 'auto' (Standardwert, d. h. der Seitenumbruch findet automatisch statt, um andere Anforderungen hinsichtlich des Platzbedarfs zu erfüllen), 'always', 'avoid', 'always-excluding-first', 'always-excluding-last'. |
| pageBreakInside | Gibt die Bedingung an, unter der ein Seitenumbruch innerhalb des Elements stattfindet: 'auto' (Standardwert, d. h. der Seitenumbruch findet automatisch statt, um andere Anforderungen hinsichtlich des Platzbedarfs zu erfüllen), 'avoid'. |
| showIfBlank | Gibt an, ob ein Element angezeigt werden soll, auch wenn es leer ist oder wenn alle untergeordneten Elemente leer sind: 'false' (Standardwert), 'true'. |
| stringFormat | Eine Formatierzeichenfolge basierend auf einem durch BIRT definierten System von Symbole wie z. B. @ & | > <. |
| textAlign | Einer der Werte für die horizontale Ausrichtung: 'left', 'right', 'center', 'justify'. |
| textIndent | Die Einrückung des Texts innerhalb des Elements. Die Zeichenfolge enthält keine Leerzeichen und beinhaltet eine Maßeinheit; z. B. '12pc'. Weitere Details zu Maßeinheiten finden Sie im Abschnitt zu 'ReportElementInstance'. |
| textTransform | Gibt an, wie der Text geändert werden soll, der in das Element eingefügt wird: 'none' (Standardwert: keine Änderung), 'capitalize' (den ersten Buchstaben jedes Wortes in Großbuchstaben umsetzen), 'uppercase' (alle Buchstaben in Großbuchstaben umsetzen), 'lowercase' (alle Buchstaben in Kleinbuchstaben umsetzen). |
| verticalAlign | Einer der Werte für die vertikale Ausrichtung: 'top', 'middle', 'bottom'. |
| visibleFormat | Gibt an, ob das Element ausgeblendet wird, wenn die Berichtsausgabe ein bestimmtes Format aufweist: 'all', 'pdf', 'html'. |
| whiteSpace | Gibt für die HTML-Ausgabe an, wie mit Leerzeichen im Elementtext verfahren werden soll: 'normal' (Standardwert: überzählige Leerzeichen entfernen und bei Bedarf Zeilenumbrüche einfügen, um den Text der Elementbreite anzupassen), 'pre' (Leerzeichen im Elementtext beibehalten, einschließlich der Zeilenumbrüche), 'nowrap' (überzählige Leerzeichen entfernen, ohne Zeilenumbrüche einzufügen). Das jeweilige Verhalten kann je nach Browsertyp und -version variieren. |
| wordSpacing | Der Abstand zwischen Wörtern. Der Standardwert lautet 'normal' (der Wert ist für die jeweilige Schriftart spezifisch). Alternativ dazu kann der Wert eine Zeichenfolge bestehend aus einer Zahl und einer Maßeinheit sein, z. B. '12pc'. Die Zeichenfolge enthält keine Leerzeichen. Weitere Details zu Maßeinheiten finden Sie im Abschnitt zu 'ReportElementInstance'. |
function myFunction( myTable TableInstance, myContext ReportContext )
{ eventType = onCreate, elementName = "myTable" }
;
end
Die Felder und Funktionen, die in den Abschnitten 'ReportElementInstance' und 'ReportItemInstance' beschrieben sind, sind ebenfalls verfügbar.
function myFunction( myText TextInstance, myContext ReportContext )
{ eventType = onCreate, elementName = "conclusion" }
if (myText.text == "<b>Promote!</b>";
;
end
end