Lade...
 

Benutzung von Birt

Benutzung von BIRT zur Berichterstellung im ClassiX System

Hinweis
Momentan werden nur die Version 4.6.0 (nur OSGI) und 4.7 aufwärts (nur POJO) unterstützt. Haben Sie eine andere Version installiert, so können Sie diese deinstallieren und anschließend die Version 4.6.0 installieren.

Berichterstellung in ClassiX

Anleitung zur Erstellung eines Berichts aus dem ClassiX System heraus. Enthält einfache Listenberichte und beschreibt wie man zusätzliche Spalten in eine Liste einfügt bzw. Spalten löscht. Außerdem wird beschrieben, wie man einen Bericht völlig frei erstellen kann und wie man einen Bericht zu seinen Favoriten hinzufügt.

Dieses Dokument gibt einen Überblick über Empfehlungen für die Neuerstellung von BIRT-Berichten.

Vorgehen bei Spaltennamenänderungen

Falls sich in ClassiX Zugriffsausdrücke für Spalten ändern oder neue Spalten hinzukommen, die in den BIRT-Bericht mit aufgenommen werden sollen, muss auch der BIRT-Bericht angepasste werden. Dies ist besonders wichtig, wenn sich die Zugriffsausdrücke ändern, da sonst die Spalten des BIRT-Berichtes nicht mehr mit Daten gefüllt werden können. Um zu überprüfen, ob in ClassiX neue Spalten hinzugekommen sind, oder sich der Zugriffspfad geändert hat kann die Funktion "Layout-Vergleich" genutzt werden (siehe auch Toolbar-Abschnitt auf der Report-Modulseite und in der PDF-Dokumentation). Für den Layoutvergleich wird ein neues Layout-File aus der aktuellen ClassiX-Liste in das Verzeichnis der Umgebungsvariable CX_REPORT_DATA erstellt und mit dem bis dahin als aktuell definierten Layout in CX_ROOT_DIR\BIRT verglichen. Je nachdem wie die Umgebungsvariable CX_DIFF_EDITOR gesetzt ist, wird der Vergleich mit dem Windows-internen Diff-Programm (FC) oder mit ExamDiff durchgeführt (oder jedem anderen Vergleichstool, das definiert wird).

Bearbeiten von BIRT-Berichten

Kurzanleitung zur Erstellung eines Berichts mit Gruppierung und Diagrammen.

Alle Informationen zur Benutzung von BIRT und der Berichterstellung im ClassiX System können der PDF Dokumentation entnommen werden. Um den Einstieg zu erleichtern, wurde eine tabellarische und graphische Übersicht erstellt. Die Links verweisen jeweils direkt auf die Überarbeitungsseiten in der PDF Dokumentation:

Tabellarische Übersicht

Thema

Spezielle Anforderung an Tabellen

Verlinkung

Tabellen

Basiswissen

4.3 Tabellen

 

Zusätzliche Tabelle einfügen

5.2.1 Einfügen einer weiteren Tabelle unterhalb der „normalen“ Tabelle

 

Merge Cells

5.2.3 Überschrift in der Tabelle soll über zwei Spalten gehen

 

Gruppen

5.2.8 Gruppen

 

Visibility-Rule (Aus- und Einblenden von Objekten, Spalten etc.)

5.2.4 Unterschiedliche Anzeigebedingung
Bzw. Für ganze Tabellen
6.9 Datenelemente immer ausblenden, ohne sie aus der Tabelle zu entfernen

 

Spaltenbreiten ändern

6.2 Spaltenbreite ändern

 

Überschrift von Gruppenwechsel

6.4 Überschriften der Gruppenwechsel sollen bei einer alphabetischen Liste nur A-Z anzeigen

 

Sortierung

6.5 Spaltenbreite ändern

 

Zusammenfassung: Anzahl der Datensätze

6.7 Anzahl der Datensätze anzeigen

 

Abhängigkeiten von Seitenumbrüchen

6.10 Seitenumbrüche innerhalb einer Datenreihe vermeiden
Oder
5.1.3 Anzahl von Zeilen auf einer Seite anpassen

 

Text nicht länger als eine Zeile in einer Zelle

6.11 Text soll abgeschnitten / nicht abgeschnitten werden

 

Rechnen in Tabellen

5.2.6 Aggregation-Funktionen
Und
5.2.7 Rechnen in BIRT

 

Änderung falls sich der Name eines Datenelements ändert in ClassiX oder eine neue Spalte hinzugefügt werden soll

5.3 Reportänderung bei Spaltennamenänderungen

Diagramme

Basiswissen

4.7 Diagramme (Charts)

 

X-Achse als Zeitachse konfigurieren

6.12 X-Achse in Diagrammen (Charts) als Zeitachse konfigurieren

 

Diagramm basierend auf mehreren Datenquellen

6.14 Erstellen eines Diagramms basierend auf mehreren Datenquellen

Crosstabs (Summationstabellen)

Basiswissen

4.8 Crosstab (Summationstabellen)

 

Bedingtes Anzeigen von Levels in Crosstabs

6.13 Trick zum Bedingten Zeigen von Levels in Crosstabs (Summationstabellen)

Data Source

Basiswissen

4.2.10 Erstellen einer zusätzlichen Data Source

 

Mehrere Datenquellen (DataSources) hinzufügen

5.2.14 Reports mit mehreren Datenquellen erstellen

 

Data Source während der Laufzeit ändern

4.2.11 Data Source während der Laufzeit ändern

Data Set

Basiswissen

4.2 Data Source und Data Set einer xml-Datei

 

“Computed Column” in DataSets = Auswertungsspalten

Erstellen einer „Computed Column“ für ein Data Set

 

Joint Data Set

5.2.14 Reports mit mehreren Datenquellen erstellen

Texterstellung

Basiswissen

4.4 Texterstellung in BIRT

Grid

Basiswissen

4.6 Grid

Bilder

Basiswissen

5.2.11 Bilder einbinden

Barcode

Basiswissen

5.2.12 Barcodes verwenden

Masterpage

 

 

 

Überschrift eines Reports und andere Änderungen am Page-Header

5.1.1 Überschrift des Reports ändern
Und
5.2.2 Änderungen am Page-Header

 

Größe der Seitenränder des Reports ändern

6.3 Größe der Seitenränder

Report Parameter

Basiswissen

4.5 Report-Parameter in BIRT

Styles

Basiswissen

5.2.5 Unterschiedliche Darstellungsbedingungen definieren (Highlight-Rule und Styles.)

Report Scripting

Basiswissen

6.8 Beispiel für Report Scripting am Beispiel „Richtiges Hinzufügen der Einheit bei Endsummen“

 

JavaScript + Expression Builder

7. Der Expression Builder: Wichtige Funktionen in JavaScript

Fehlerbehebung

Basiswissen

8. Mögliche Fehlerquellen bei der Reporterstellung

 

CX-Debug-Konsole

3.4 Debuggen der Reporterstellung

 

Graphische Übersicht

 

Der folgenden Grafik kann entnommen werden, auf welcher Seite welche Bearbeitungsmöglichkeit zu finden ist:Der folgenden Grafik kann entnommen werden, auf welcher Seite welche Bearbeitungsmöglichkeit zu finden ist:

 

birt_uebersicht3.png

Performance-Verbesserung von der Berichtsseite aus

Die Performance von BIRT-Berichten wird von unterschiedlichen Seiten aus beeinflusst:

  • Performance der BIRT-Engine
  • Performance der Daten-Extraktion aus ClassiX
  • Performance des Datenzugriffs von BIRT auf die Datenquelle
  • Performance des Berichts selbst

Die Performance der BIRT-Engine kann dadurch verbessert werden, dass die Engine nicht bei jeder Reporterstellung neu gestartet wird, sondern einmal am Anfang gestartet wird und anschließend nur noch benutzt wird.

Zum letzten Punkt wurde dieses Dokument erstellt, das eine Übersicht über die Performance unterschiedlicher Objekte im Bericht darstellt.

Fehlersuche

Es gibt verschiedene Gründe, warum ein BIRT-Bericht aus ClassiX heraus nicht aufgerufen werden kann:

Im Idealfall erzeugt oder öffnet ClassiX einen BIRT Bericht ohne weitere Benutzereingriffe. Je nach Fehlerfall bekommt ClassiX aber zu wenig Informationen, um eine eindeutige Fehlermeldung anzuzeigen. In diesem Fall muss die Kommunikation zwischen ClassiX und BIRT geprüft, sowie die Fehlermeldung von BIRT bzw. dem aufrufenden Programm analysiert werden. Dafür gibt es zwei Hilfsmittel:

  • Analyse des ClassiX-Logfiles (siehe Logging). Konkret werden beim Aufruf von Birt Einträge im Bereich cx.process geschrieben. Vor allem wird der Aufruf sowie die Parameter und der Returncode der gestarteten Anwendung geloggt (ggf. den Logging-Level erhöhen). Bitte prüfen Sie, ob die übergebenen Input-Files existieren. Sie können auch den gesamten Aufruf von einer Konsole aus wiederholen.
     
  • Öffnen der Debug-Konsole. Durch setzen der Umgebungsvariable CX_BIRT_DEBUG_CONSOLE wird beim Aufruf von Birt eine Konsole geöffnet, auf der die Anwendung eventuelle Probleme anzeigt. Die Konsole schließt sich wieder wenn der Aufruf erfolgreich war. In der Ausgabe dieser Konsole sollten Sie auf folgende Punkte achten:

     

    • Erscheinen schon beim Aufruf Fehler? (Programm nicht gefunden, Java nicht korrekt installiert, PATH nicht korrekt gesetzt)
    • Findet java bestimmte Klassen nicht? ("Class not found": Classpath für Birt oder ClassiX-Bibliotheken nicht korrekt gesetzt, Achtung: das Verzeichnis %BIRT_HOME%\ReportEngine\plugins darf nicht dem Classpath hinzugefügt werden, da es sonst zu Fehlermeldungen kommt)
    • Welche Parameter werden übergeben? Existieren die Dateien oder Parameter?
    • Tritt eine Exception auf?

Seit dem Upgrade auf BIRT 3.7.2 können Fehler beim Starten von ClassiX ohne Administratorrechte auftreten. Hierfür sollte die Konfiguration von BIRT ab 3.7.2 beachtet werden.

Falls ein Report generiert wird, aber keine Daten enthält, CLASSPATH Variable kontrollieren (siehe Installation Birt-Runtime). Fehlt der "addons" Ordner im Classpath, wird das Layout des Reports erfolgreich generiert, aber die Tabellen bleiben leer.

Fehler bei der Kommunikation von ClassiX und Birt und Fehler im Birt-Code

Die folgende Tabelle gibt den Fehlercode, Fehlermeldung und mögliche Lösungsstrategien für einen Fehler im Birt-Code oder bei der Parameterübergabe zwischen ClassiX und Birt aus.

Beachten Sie bitte, dass bei jedem Absturz der ReportEngine ein Dump-File erzeugt werden, das möglicherweise hilft die Lösung des Problems zu finden. Dieses wird im "Temp" Verzeichnis (Umgebungsvariable "Temp") gespeichert und hat den Namen "classix-ExecuteReportNummer.dmp".

Code Fehlermeldung Lösung
1 Wrong number of Parameters

error04.jpg

Wahrscheinlich liegt ein Problem mit den von BIRT benötigten Java-Libraries vor. Das Problem kann also entweder sein, dass das BIRT-HOME falsch gesetzt ist, dass das BirtInterface nicht erreichbar ist oder dass die Java Runtime Engine (JRE) nicht erreichbar ist.

Überprüfen Sie bitte folgendes:

  1. Zunächst die Debug-Console auf true setzen, durch die man detaillierte Fehlermeldungen bekommt: "SET CX_BIRT_DEBUG_CONSOLE=TRUE" im aufrufenden Batch-file setzen.
  2. Nun überprüfen Sie bitte alle Umgebungsvariablen:
    1. Hier finden Sie alle wichtigen Umgebungsvariablen aufgelistet. Überprüfen Sie bitte im speziellen ob:
    2. Die Umgebungsvariable BIRT HOME ist nicht richtig gesetzt (C:\birt-runtime-osgi-4_6_0 oder C:\eclipse\birt-runtime-osgi-4_6_0). Achten Sie auch auf eventuelle Fehler bei der schreibweise (Bindestrich/Unterstrich)
    3. Die Java Runtime Engine ist nicht in der Umgebungsvariable PATH enthalten, sodass keine Java-Anwendungen gestartet werden können (dazu gehört auch BIRT). Überprüfen Sie ob im "ClassiX_Start.bat" oder aber als Umgebungsvariable "Path" "Java_Installationsverzeichnis/jre/bin" gesetzt wurde (Beispiel: "C:\Program Files (x86)\Java\jre7\bin"). Fügen Sie sonst im aufrufenden Startfile die Zeile
      "SET PATH="Java_Installationsverzeichnis\jre\bin";%Path%" hinzu. Sollten die Debug-Console angestellt worden sein, so müsste dort auch ein falscher oder gar kein Path zum Java Installationsverzeichnis angegeben werden.
  3. Fehlt möglicherweise eins der folgenden Files: daten-xml, rptdesign-Name, output-pdf-name. Die Überprüfung ist durch Debug-Console möglich. Dazu muss in das aufrufende batch-File die Zeile
    "SET CX_BIRT_DEBUG_CONSOLE=TRUE" hinzugefügt werden
  4. Die Datei "BirtInterface.jar" ist nicht im „\Bin\4.5“-Verzeichnis vorhanden
  5. Die Datei "BirtInterface.jar" ist nicht aktuell. Sie sollte 2012 gebildet worden sein.
2 invalid XML Wahrscheinlich ist JAVA nicht (richtig) installiert
Zur Verifizierung bzw. falls dies nicht hilft die Debug-Console auf true setzen, durch die man detaillierte Fehlermeldungen bekommt: "SET CX_BIRT_DEBUG_CONSOLE=TRUE" im aufrufenden Batch-file setzen.
4: Birt reported error during execution

(Engine Exception)
error01.jpg

Überprüfen Sie bitte folgendes:
  1. Der Report ist möglicherweise mit einer Birt-Version erstellt worden, die momentan nicht unterstützt wird. Es werden Momentan nur Birt-Reports unterstützt die mit der Birt-Verison 4.6.0 und abwärts erstellt wurden. Man kann dies im Report überprüfen. Der Report muss die Version 23 haben. Dazu geht man in Birt im Hauptmenü auf das xml-Tab und kontrolliert ob eine der ersten Zeilen so lautet:

    lns="http://www.eclipse.org/birt/2005/design" version="3.2.23" id="1">

    Falls nicht muss die Version manuell auf 3.2.23 geändert werden und es wird empfohlen die Birt-Version downzugraden um weitere Probleme zu vermeiden.

  2. Die folgende Fehlermeldung wird in der CX_DEBUG_CONSOLE ausgegeben: "Failed to initialize emitter". Dies kann die Ursache haben, dass keine Schreibrechte in dem Ordner vorhanden sind in dem das xml oder das pdf erstellt werden soll. Beide sollten in dem Verzeichnis, das in der Umgebungsvariable %TEMP% genannt ist, erstellt werden.
    Falls Schreibrechte gesetzt sind und die Fehlermeldung weiterhin auftritt, kann es sein, dass schon ein pdf im Adobe Reader mit dem selben Namen aufgerufen ist. Schließen Sie gegebenenfalls geöffnete pdfs.
5 (Birt Exception)

BIRT_error_05.png

BIRT_error_05_1.png

Überprüfen Sie bitte folgendes:
  1. Haben die User Vollzugriff + Rechte Zum Ändern und Löschen von Ordnern auf das Verzeichnis Laufwerkspfad_von_birt-runtime-osgi-4_6_0\ReportEngine\configuration haben. (siehe hier)
  2. Wurden die Umgebungsvariablen richtig gesetzt? (wie hier beschrieben)
  3. Sind im Verzeichnis C:\Benutzer\%Benutzername%\AppData\Local\Temp bereits 1000 Dateien vom Typ cx-report-xxx.pdf (xxx= 0-999) vorhanden? Wenn dies der Fall ist, löschen Sie diese Dateien.

 

 

Schreibrechte im BIRT-Runtime-Verzeichnis fehlen. Geben Sie dem Verzeichnis Schreibrechte oder kopieren Sie es an einem Platz mit Schreibrechten.

6 FileNotFoundException Überprüfen Sie, ob das rptdesign wirklich vorhanden ist und ob im Verzeichnis „C:\Mandantname\Birt“ der Ordner „Mandantname“ vorhanden ist (siehe Fehlercode 99)
7 UnsupportedEncodingException Möglicherweise ist das daten-xml falsch encoded (es sollte utf-8 sein). Schauen Sie nach, ob am Anfang noch Steuerzeichen enthalten sind. Öffnen Sie dazu das xml in Eclipse aus dem Verzeichnis C:\temp.
8 IO Exception  
12 Birt_error12_1.JPG Der BIRT-Server wurde vom ersten ClassiX-User mit seinen User-Rechten gestartet. Wenn nun ein anderer User ebenfalls ein BIRT-Bericht erstellen möcht, wird erkannt, dass bereits ein BIRT-Server läuft und ihm wird die Aufgabe geschickt. Der BIRT-Server hat in diesem Fall nicht die Rechte um auf das tempoärer Verzeichnis des User zuzugreifen.

Abhilfe kann das Setzen dieser Variablen schaffen: SET CX_PREVENT_BIRT_SERVER=TRUE

Diese Variable verhindert das automatische Starten des BIRT-Servers, so dass jeder User seine eigene Instant von BIRT aufruft.

99 Exception

(z.B. bei Null-Pointer-Exception)

Birt_d1.JPG

 

Sonstige Fehler; Kontrollieren sie folgendes:
  • Der Name des Reports darf kein / enthalten. In diesem Fall wird der Report nicht erstellt.
  • Es muss in dem Verzeichnis „C:\Mandantname\Birt“ der Ordner „Mandantname“ vorhanden sein, da der Report vom Report-Designer in diesem Verzeichnis gespeichert wird. Ist der Ordner nicht vorhanden, so kann der Bericht nicht korrekt erstellt werden. Die Fehlermeldung lautet dann in der Debug-Console: „das System kann den angegebenen Pfad nicht finden“
  • Sollten zwei unterschiedliche ClassiX-Anwendungen zur gleichen Zeit gestartet sein und man möchte mit beiden Anwendungen Reports drucken, so kommt es zu einer Fehlermeldung. Der Grund hierfür ist, dass beide ClassiX-Anwendung dasselbe pdf-Dokument erstellen möchten. Dies ist aber beim zweiten Mal nicht möglich, da bereits ein solches Dokument geöffnet ist und verwendet wird. Es muss aus diesem Grund zunächst das pdf geschlossen werden.
  • Ist die Variable CX_BIRT_DEBUG_CONSOLE gesetzt und es erscheint in der Console "Java.lang.NullPointerException in der startupEngine", liegt es möglicherweise daran, dass die verwendete Runtime-Engine falsch konfiguriert ist. Möglicherweise wurde sie von einem anderen Computer kopiert, was nicht möglich ist, da Computerspezifische Datein erzeugt werden, was zu Fehlern führt. Am Besten wird der Ordner "birt-runtime-osgi-4_6_0" komplett gelöscht und wie hier erklärt neu installiert werden.
100 Unknown error
java.lang.OutOfMemoryError: Java heap space
Birt_d2.JPG
Umgebungsvariablen in der aufrufenden Batchdatei setzen:
SET _JAVA_OPTIONS=-Xms512m -Xmx1024m
  Das System kann den angegebenen Pfad nicht finden Es muss in dem Verzeichnis „C:\Mandantname\Birt“ der Ordner „Mandantname“ vorhanden sein, da der Report vom Report-Designer in diesem Verzeichnis gespeichert wird.
Ist der Ordner nicht vorhanden, so kann der Bericht nicht korrekt erstellt werden.
Die Fehlermeldung lautet dann in der Debug-Console: „das System kann den angegebenen Pfad nicht finden“
  Wertangabe in Summenzeile ist verkehrt

232,479,000,000€. statt 2.324,79 €

oder

Beschreibung der Y-Achse des Sequential-Graphen bestehlt aus mehreren schwarzen Spalten (Schriftzeichen, die übereinander gelagert sind, so dass schwarze Spalten entstehen)

Dieses Verhalten trat in einer englischensprachigen Betriebsystemumgebung mit deutschen ClassiX Locale (Standort) auf.
Es muss im Runtime-Ordner von BIRT (%BIRT_HOME%\ReportEngine\configuration\) die config.ini um folgenden Eintrag erweitern werden:

osgi.nl=de_DE

Dies setzt das Locale hart auf Deutsch, wodurch die Summenberechnung wieder korrekt erfolgt bzw. die Spalten Beschreibung des Sequential-Graphens wieder richtig dargestellt wird.

  gestin01.JPG

Siehe Lösung für Fehler 5:

Vollzugriff auf ReportEngine\configuration

Dieser Meldung kann auftreten, wenn GESTIN im Programme-Ordner installiert wurde.
Für den Benutzer müssen dann die Ordner-Rechte erweitert werden:
gestin02.JPG
"Ordner erstellen" wird zur Behebung des eigentlichen Fehlers benötigt
"Dateien erstellen" ist sinnvoll, damit überhaupt Logdateien geschrieben werden können.

 

Es wird im REPORT_DATA ein 0 KB großes PDF erzeugt. (Leeres PDF, welches ein PDF-Reader auch nicht öffnen kann)

Wird Manchmal auch als "Interner Fehler" mit Errorcode -1 ausgegeben.

  • Java 1.8 -> Siehe Konfiguration von BIRT ab 3.7.2
  • Java 9/10 -> Java deinstallieren und eine aktuelle Java 1.8 Version installieren (Java 9 und 10 werden nicht unterstützt)
  • Ordner unter CX_REPORT_DATA vorhanden? Standard: C:\temp

Fehler in den BIRT Berichten

Fehler in den Birt-Reports können sich zu unterschiedlichen Zeitpunkten bemerkbar machen. Am besten ist, wenn die Fehler schon während der Erstellung des Reports erkannt werden (beispielsweise bei der Benutzung des Preview-Tabs, zur Erläuterung siehe Bearbeiten von Birt-Reports). Folgende Fehler sind bei der Überarbeitung von Reports aufgetreten und ihre Lösung dokumentiert (Für die genauere Fehlererläuterung siehe dieses Dokument).

Oftmals wird ein leeres PDF angezeigt, falls im Birt-Report ein Fehler vorhanden ist. Um dann genauer die Ursache zu finden, sollte der Report in BIRT-Eclipse geöffnet werden (von ClassiX aus) und dann über die Preview (Reiter) getestet werden. Dort erscheint meist eine genauere Fehlermeldung im ähnlichen Stil wie in den Beispielen in der folgenden Tabelle.

Allgemeines Vorgehen bei der Fehleruntersuchung

 

  1. Wird eine Fehlermeldung im PDF ausgegeben? Wird ein leeres PDF gedruckt?
  2. Detailliertere Fehlermeldungen erhält man in jedem Fall im Preview-Reiter in BIRT-Eclipse (zur Erläuterung siehe Bearbeiten von Birt-Reports).
  3. Überprüfen:
    1. Kann eine Vorschau erstellt werden, oder erscheint direkt eine Fehlermeldung und ein Java-Stack-Trace? Ist möglicherweise ein Datentyp falsch gesetzt? Beispielsweise: Es soll von einem String, statt einem Float überprüft werden, ob ein Wert kleiner oder größer ist.
    2. Es wird eine Vorschau mit roter Fehlermeldung angezeigt. Wird in der Fehlermeldung ein bestimmtes Berichts-Objekt genannt
    3. ?
      1. table:
        1. Wird eine bestimmte Spalte angezeigt? Beispielsweise "Column Binding „delivered.mlDescription“": Überprüfung im Property-Editor für die Tabelle, ob das Binding richtig gesetzt ist / noch vorhanden ist etc.
        2. Fehler mit org.eclipse.datatools.connectivity.oda.OdaException: Tabelle kann möglicherweise nicht auf die Data-Source zugreifen. Pfade und Umgebungsvariablen überprüfen
        3. Wird eine bestimmte Expression angezeigt? Nach dieser Expression im XML-Code des Reprots suchen, um den genauen Ort des Fehleraufrufs festzustellen, dabei wichtig: Jedes Report-Objekt hat eine Nummer, durch die es eindeutig identifiziert werden kann.
      2. Nummer eines Objektes: Wird auf ein Objekt mit einer bestimmten Nummer verwiesen? Jedes Reportobjekt hat eine eindeutige Nummer, durch die es identifiziert werden kann

         

  4. Wird in der Preview keine Fehlermeldung angezeigt? Hat in der Outline (meist unten links) ein Report-Objekt ein Kreuz? Dies deutet auf ein fehlerhaftes Verhalten dieses Report-Objektes hin.
  5. Lässt sich ein Fehler nicht direkt einem Report-Objekt zuordnen oder kann die Fehlermeldung nicht gedeutet werde. Am besten die Report-Objekte einzelnd entfernen (Bilder, Data-Bindings, Grids, Tabelle) und jeweils überprüfen, ob der Fehler noch auftritt. Dadurch können bestimmte Objekte identifiziert werden
  6.  
    Fehlermeldung Lösung Lösungsweg
    Table table:
    Column Binding „delivered.mlDescription“ has referred to a data set column „delivered.mlDescritpion“ which does not exist.
    Bindings einer Tabelle sind nicht aktuell Wurde beispielsweise ClassiX-intern die Bezeichnung für eine Variable geändert (statt delivered.mlDescription auf delivered.new.mlDescription), kann Birt diese Variable in der Data-Source nicht finden.
    Somit muss das Data-Set bearbeitet und die neue Spalte hinzugefügt werden. Anschließend müssen allerdings zusätzlich die ggf. vorhandenen Referenzen in der Tabelle geändert werden. Es ist beispielsweise möglich, dass ein Column-Binding eine Referenz auf delivered.mlDescription hatte, oder dass ein Column-Binding selbst delivered.mlDescription heißt. Um dies zu überprüfen muss man auf die Tabelle klicken und im Property-Tab die Bindings kontrollieren. Geschieht das nicht tritt die dargestellte Fehlermeldung auf.

    error02.jpg

    Table table:
    An exception occured during processing. Please see the following message for details: Cannot open the connection for the driver: org.eclipse.datatools.enablement.oda.xml
    Eine Data-Source ist nicht vorhanden Diese Fehlermeldung tritt auf, wenn die im Data-Source-Tab angegebene Data-Source nicht vorhanden ist. Dieser Fehler sollte in der neuen Version (erkennbar daran, dass die xml-Dateien in „C:\temp“ gespeichert werden) nicht auftreten, wenn der Report von ClassiX aus aufgerufen wird, da automatisch eine Data-Source generiert wird.
    Um den Fehler zu beheben muss man die Data-Source im Data-Source-Tab kontrollieren. Man sollte überprüfen ob diese Datei vorhanden ist und ggf. sonst eine andere angeben. Ob die neue Data-Source funktioniert kann über „Text Connection“ getestet werden.

    error03.jpg

    A BIRT exception occurred. See next exception for more information.

    Invalid javascript expression pression>

    Fehler in der Javascript expression Möglicherweise ist nur die Klammersetzung in diesem Fall falsch. Sollte in der Fehlermeldung nicht direkt das fehlerhafte Script angezeigt werden. Ist es am Besten nach einem Begriff aus der Fehlermeldung (beispielsweise "waehrung2") im xml source code zu suchen (im Reiter "XML Source").

    error05.jpg

    Table table:
    - A BIRT exception occurred. See next exception for more information.
    Can not convert the value of to Binary type. (Element ID:374)
    Fehler im Typ eines Bindings in der Tabelle (hier bei einem Bild) Wahrscheinlich hat ein Element in der Tabelle einen falschen Typen und kann deshalb von BIRT nicht verwendet werden. Um das zu Überprüfen öffnet man zunächst den Binding Tab der Tabelle (Tabelle Markieren > Properties Editor > Binding). In der Spalte Data Type steht möglicherweise "Blob". In diesem Fall hatte ein Element, das zum Anzeigen eines Bildes verwendet den Typen "Blob". Dieser musste in "String" geändert werden. 

    error06.jpg

    Table table:
    + Nächste Datenzeile kann nicht abgerufen werden.
    org.eclipse.datatools.connectivity.oda.OdaException: The xml source file cannot be found or the URL is malformed. (Element ID:376)
    BIRT kann die Datenquelle nicht erreichen Wahrscheinlich wurde die Umgebungsvariable "CX_REPORT_DATA" nicht als Umgebungsvariable in Windows gesetzt, oder der Wert der Windows-Umgebungsvariable "CX_REPORT_DATA" entspricht nicht dem Wert Umgebungsvariable in der aufrufenden Batchdatei von ClassiX. Da sowohl Eclipse als auch ClassiX auf diese Umgebungsvariable zugreift, muss die Umgebungsvaribale als Windows-Umgebungsvariable definiert werden.
    ClassCastException: "Fehler beim Ausführen des Berichts"

     

    Datentyp des Elements falsch In der Preview wird der Report nicht angezeigt (auch nicht leer), sondern ein Fenster, in dem diese Fehlermeldung und Java-Stack-Trace angezeigt wird.

    Wird bei einem Datenelement abgefragt ob es "<0" oder ">0" ist so muss es als Float und nicht als String definiert werden. Dies muss im DataSet entsprechend angepasst werden.

     

    Hinweis
    Momentan werden nur die Version 4.6.0 (nur OSGI) und 4.7 aufwärts (nur POJO) unterstützt. Haben Sie eine andere Version installiert, so können Sie diese deinstallieren und anschließend die Version 4.6.0 installieren.

 

BIRT von der Kommandozeile aufrufen

Folgende Parameter müssen bekannt sein:

Pfad zur birt_interface.jar
BIRT_HOME (Prüfung in der Kommandozeile: set birt_home)
XML-Datei
BIRT-Design
Zieldateiname
 

BIRT-Aufruf
java  -classpath "Pfad_zur_Birt_interface.jar/birt-interface.jar;%BIRT_HOME%/ReportEngine/lib/*" org.instantview.report.exec.ExecuteReportClient C:\Temp\invanaly-Sequenzialtest.xml Y:\classix\Evaluate\BIRT\invanaly-Sequenzialtest.rptdesign C:\Temp\Sequentialtest.pdf