Eine Java-Implementierung einer Custom-Data-Source für JasperReports um Daten von Projektrons BCS Server in Reports einzubinden
Um die Custom-Data-Source zu builden, führen Sie den Befehl gradle shadowJar
aus. Dies erzeugt (unter anderem) einen build/libs
-Ordner, welcher eine einzige .jar
-Datei beinhaltet. Diese Datei enthält sowohl die Data-Source, als auch all seine Abhängigkeiten.
- Öffnen Sie den
Data Adapter Wizard
(einen neuen Data-Adapter erstellen) - Wählen Sie
Custom implementation of JRDataSource
- Geben sie
ProjektronDataSource
imFactory Class
-Textfeld ein - Ins Feld für die statische Methode schreiben Sie
getDataSource
- Klicken Sie nun den
Add
-Knopf und wählen Sie die zuvor erstellte.jar
-Datei aus - Klicken Sie auf
Finish
(Sie können vorher auch noch aufTest
drücken)
- Erstellen Sie ein neues Data-Set. Wählen Sie dabei den gerade erstellten Data-Adapter aus der Combobox aus
- Rechtsklicken sie den Data-Set- oder den Report-Wurzelknoten und fügen Sie die gewünschten Felder hinzu (zum Beispiel
effortRegularTimeCosts
mitjava.lang.String
) - Um sich die Daten voranzeigen zu lassen, klicken sie im
Data preview
-Reiter (unten) aufRefresh Preview Data
Um die Data-Source zu debuggen können Sie JasperSoft Studio über die Quelldateien selbst bauen und dem entsprechen debuggen. Dazu können Sie folgende Schritte durchführen:
- Zip Datei “TIB_js-studiocomm_6.6.0_sources.zip” von https://sourceforge.net/projects/jasperstudio/files/DevelopersInfo/bugOracle/ runterladen und extrahieren
- Den Sourcecode von der JasperSoft-Library https://github.com/TIBCOSoftware/jasperreports runterladen
- Den Anweisungen der offiziellen Dokumentation von https://community.jaspersoft.com/documentation/tibco-jaspersoft-studio-source-build-guide/v630/tibco-jaspersoft-studio-source-build folgen und jeweils die extrahierten Ordner aus Schritt 1 wählen.
- Eine Möglichkeit Breakpoints zu setzen:
- In Custom Data Source eine bestimmte Exception einfügen
- In Eclipse einen Exception Breakpoint auf diese Exception setzen
- Beim Debugging im Data Adapter Dialog auf Test klicken
- Eclipse sollte die Source Datei des Adapters anzeigen
- Von hier aus können ganz normale Zeilenbreakpoints gesetzt werden
- Die Zeile aus Schritt i wieder löschen
- Wann immer Eclipse die Source Dateien nicht findet, einfach auf den gegebenen Knopf klicken und einen der Ordner angeben, in den der Code aus Schritten 1 und 2 heruntergeladen wurden