PITSS Tech Blog

News zu Java, PL/SQL, Entwicklung & Technologiewechsel

Q&A zur Migration nach Jasper Reports – wir haben Ihre wichtigsten Fragen beantwortet

Jasper Reports von TIBCO ist ohne Zweifel eine der beliebtesten Alternativen zum scheidenden Oracle Reports. Dies bestätigen auch unsere Webinarteilnehmer in Umfragen oder durch ihre zahlreiche und aktive Teilnahme an unseren Webinaren mit Jasper-Bezug. Ende 2017 veranstalteten wir ein Webinar (hier noch einmal ansehen), dessen Fokus explizit auf der Migration von Oracle Reports-Anwendungen hin zu JasperReports lag. Hierbei gaben wir unseren über 120 Teilnehmern die Möglichkeit, ihre eigenen Fragen zum Webinarthema zu stellen. Aufgrund der Vielzahl und Komplexität der Fragen, konnten wir sie nicht alle noch während des Webinars beantworten. Nun bieten wir Ihnen mit der nachfolgenden Q&A-Übersicht die Möglichkeit, die Antworten Ihrer Fragen nachzuschlagen. Zugleich stellen wir Ihnen mit dieser Zusammenfassung der wichtigsten Fragen und Antworten zum Jasper Reports eine wertvolle Informationsquelle rund um das Thema Migration nach Jasper Reports zur Verfügung.

Oracle Reports Support-Ende

Wann endet der Support von Oracle Reports?
Der Premium Support endet im August 2022. Zusätzlicher kostenpflichtiger Support ist als Extended Support bis August 2025 erhältlich.
Besteht auch die Möglichkeit einer Migration zum BI Publisher? Falls ja, was sind die Unterscheidungskriterien zwischen den beiden Produkten?

Das REPORTS REPLACER KIT von PITSS kann sowohl in Richtung Jasper Reports als auch BI Publisher migirieren. Die Entscheidungsfaktoren sind sehr vielfältig und können in einem Reports Orientation Day sehr gut besprochen werden.

Migrationsmethoden/REPORTS REPLACER KIT

Gibt es Tools zur kompletten Migration von Oracle Reports nach Jasper Reports oder müssen nach der Migration immer Änderungen vorgenommen werden?
Das REPORTS REPLACER KIT von PITSS kann Teile von Oracle Reports nach Jasper Reports migrieren. Der Automatisierungsgrad hängt von der Komplexität der Oracle Reports ab, kann aber mithilfe einer genaueren Analyse ermittelt werden. Nach der Migration sind Änderungen nötig, allerdings versucht das Tool, diese so weit wie möglich zu reduzieren.
Besteht auch die Möglichkeit einer Migration zum BI Publisher? Falls ja, was sind die Unterscheidungskriterien zwischen den beiden Produkten?
Das REPORTS REPLACER KIT von PITSS kann sowohl in Richtung Jasper Reports als auch BI Publisher migirieren. Die Entscheidungsfaktoren sind sehr vielfältig und können in einem Reports Orientation Day sehr gut besprochen werden.
Wie lange dauert die Migration eines Reports mit dem REPORTS REPLACER KIT im Durchschnitt?

Die Frage lässt sich leider nicht pauschal beantworten. In unserer täglichen Praxis haben wir es sowohl mit einfachen Reports zu tun, die sofort und ohne Nachbearbeitung konvertiert werden. Aber auch mit solchen, deren Layout-Forms 20 Seiten umfassen und deswegen mehrere Tage brauchen. Zur besseren Planbarkeit empfehlen wir daher vorab eine Analyse Ihrer Reports durchführen zu lassen, z.B. im Rahmen unseres Reports Live Experience Workshops, der auch unabhängig von einer Migration mit dem REPORTS REPLACER KIT gebucht werden kann.

Wie lassen sich komplexe Reports mit vielen 1:n-Beziehungen migrieren? Der Vorteil von Oracle Reports ist ja, dass beliebig viele verschachtelte Frames möglich sind – das kam uns bisher sehr zugute.
1:n-Beziehungen lassen sich auf zwei verschiedene Weisen lösen. In einem einfachen Use Case könnten Sie die Tabellen- oder Listenkomponente von Jasper wählen. Wenn das Layout des Detailrahmens komplexer ist, könnte ein Subreport verwendet werden. Im Vergleich zu Oracle Reports hat dies den enormen Vorteil, dass Sie Subreports in vielen Reports wiederverwenden und damit Ihre gesamte Codebasis reduzieren können.
Können SQL/SQR Reports oder Hyperion SQR Reports nach Jasper Reports migriert werden oder müssen sie ersetzt werden?

Ja, sie lassen sich nach Jasper Reports migrieren.

Wie geht PITSS.CON mit der Konvertierung von Oracle Reports um, die viel PL/SQL-Code und komplexe Datenmodelle enthalten? Denn Datenmodelle in Jasper Reports werden ja mit Subreports gelöst.
PITSS.CON ist in der Lage, die PL/SQL-Logik in die Datenbank zu verschieben, wann immer dies sinnvoll ist. Damit reduziert PITSS.CON die Komplexität der Reports. Bei großen SQL-Statements kann PITSS.CON Ihr Datenmodell innerhalb der Datenbank refrakturieren und eine Datenbank-View pro Gruppenabfrage erstellen, um die Wiederverwendung zu ermöglichen und den Supportaufwand zu vereinfachen.
Wie ist das Preismodell für das Migrationstool REPORTS REPLACER KIT? Basiert dies auf der Anzahl der Reports, oder hat es damit nichts zu tun?
Die Lizenz hängt von der Anzahl der Reports ab und unterteilt sich in drei verschiedene Cluster-Stufen. Wenn Sie sich für den Einstieg in einen ersten Cluster entscheiden, können wir Ihnen eine sehr detaillierte Analyse und einen Festpreis für die komplette Migration anbieten.
Kann das REPORTS REPLACER KIT mit Git statt mit Jira verknüpft werden?

Wenn es um die reine Versionsverwaltung geht, kann eine Verbindung zwischen Git und REPORTS REPLACER KIT hergestellt werden. Soweit bekannt, bietet Git jedoch keine guten Möglichkeiten zum Bugtracking. Sollte ein beliebiges Bugtracking-Tool eine REST-Schnittstelle oder CSV-Import ermöglichen, können wir es unterstützen. So bieten wir neben Jira auch Mantis, Bugzilla und sogar Trello an.

Wie können Funktionen konvertiert werden?

Es gibt drei verschiedene Ansätze. Einfache Funktionen, die in der Regel aus nur einem Return-Statement bestehen, können in das Select-Statement überführt werden. Diese sind häufig in der Reports-Entwicklung historisch entstanden und als Funktionen erhalten geblieben.
Besteht eine Funktion aus sehr viel PL/SQL-Code ist es sinnvoll, diese mit PITSS.CON BL2DB in die Datenbank zu verschieben und den Aufruf als weitere Spalte im Select-Statement zu ergänzen. Dabei achtet PITSS.CON auf notwendige Contex-Informationen (Parameter, Placeholder, etc.) und ersetzt diese automatisch durch passende Parameter für die Funktion.

Zu guter Letzt besteht die Möglichkeit, die Funktion in Jasper als Java-Methode neu zu erstellen. Dazu bietet sich der PLSQL2Java-Converter von PITSS.CON an, der in der Lage ist, eine PL/SQL-Funktion aus Reports in eine passende, statische Java-Methode zu migrieren. In einer Analyse mit PITSS.CON wird für jede Funktion die beste Option vorgeschlagen.

JasperReports Funktionalitäten

Was ändert sich aus Entwicklersicht?

Die wichtigsten Änderungen bei einer Migration nach Jasper Reports sind auf der einen Seite die striktere Einführung von Subreports bei geschachtelten Wiederholgruppen und der Wegfall der Format-Trigger durch deklarative Styles.

Wo finde ich die Community Edition von Jasper Reports?
Bitte besuchen Sie folgende Webseite: https://community.jaspersoft.com/ oder jaspersoft.com
Was sind die technischen Mindestanforderungen an Jasper und was kostet die Nutzung?

Die Frage ist individuell zu beantworten, je nachdem, ob Sie die Nutzung des JasperReports Server in Erwägung ziehen. Es spielt auch eine Rolle, wie Sie es einsetzen – on-premise oder in der Cloud. Entsprechend kann auch die Frage nach dem Preis erst dann beantwortet werden, wenn klar ist, wie die Reports genutzt werden und wie viele Personen gleichzeitig darauf zugreifen sollen.

Wie können Prozesse, die bisher in Oracle Reports durchgeführt wurden (z. B. Erstellen von Strukturen, Hilfstabellen etc. im Before Report Trigger), in JasperReports genutzt werden?
In Jasper nutzen Sie eine beforeReportInit() Methode, mit der Sie all diese Aufgaben implementieren oder Ihre Datenbankprozeduren aufrufen können.
Kann ich vor der Ausführung der Reports Parameter zum Filtern von Daten definieren?
Ja, Sie können Parameter vor der Ausführung der Reports einstellen.
Wie sieht das Backend von Jasper Reports aus? Wie aufwändig ist die Installation? Kann ich es auf der gleichen Maschine installieren, auf der auch meine Oracle Reports liegen?
Das Backend von Jaspersoft ist Java-basiert. Die Installation wird auf einem Applikation-Server durchgeführt – z. B. auf dem WebLogic Server. Damit ist der Jasper Reports Server einfach nur eine Anwendung auf dem Anwendungsserver. Das kann der gleiche Server sein, auf dem aktuell die Oracle Reports Installation durchgeführt wurde.
Ist Jasper Reports für die Erstellung von pixelgenauen PDF-Berichten geeignet?
Ja, auf jeden Fall.
Können Jasper-Berichte im Hintergrund ausgeführt werden und die Ausgabedatei per E-Mail versenden?
Ja, mit einer kleinen Java-Klasse (muss nur einmal erstellt werden) um den Server herum.
Ausgehend von einer Standard-Version eines Jasper Reports, müssen wir diese Berichte für jeden Kunden abändern. Wie einfach ist das und welche Fähigkeiten sind erforderlich?
Dies hängt von der Art der Änderungen ab. Wenn dies nur das Layout betrifft, könnte die Professional Edition von Jasper Reports Ihren Anforderungen entsprechen. Damit ist es mehr oder weniger selbsterklärend. Wenn nicht, müssen alle Anpassungen in der Eclipse-ähnlichen IDE implementiert werden.
Gibt es eine Möglichkeit, mehrere Queries in einen Report aufzunehmen, oder muss ich für jede Query einen Subreport erstellen und ihn in den Hauptbericht aufnehmen?
Sie können eine Haupt-Query (für den Aufbau der Berichts-Bänder) und dazu so viele Detail-Datensätze (samt ihrer eigenen Queries) wie Sie wollen in derselben Jasper jrxml verwenden.
Ich gehe davon aus, dass Jasper Reports auf dem Oracle WebLogic 12 Server laufen würde, doch welche Plattform wird offiziell empfohlen?

Die Plattform Oracle WebLogic 12 wird unterstützt. Wir empfehlen, eine Plattform zu verwenden, die Ihre IT-Abteilung kennt und beherrscht. Zur Orientierung: Die Mehrheit der Jaspersoft-Kunden verwendet Apache Tomcat.

Sind die PDFs für eine Langzeitarchivierung als PDF/A-2a ausgelegt?
Jasper ermöglicht den Export von PDF/A-Dokumenten. Unserem Wissen nach unterstützt die aktuelle Version nur die Varianten PDF/A-1a und PDF/A-1b.
Kann Jasper Reports Berichte im CSV- und XSLX-Format ausgeben?
Ja, mit den Exportoptionen können Sie XLSX- oder CSV-Dateien aus Ihrem Bericht erstellen.
Wir haben Matrixberichte, die dynamische Spalten und Zeilen drucken. Unterstützt Jasper Reports Matrix-Reports?
Ja, Jasper Reports unterstützen solche Layouts.
Wir nutzen den Oracle Reports Server derzeit hauptsächlich über URL-Calls (z.B. ...rwservlet?REPORT_ALIAS&P01=10&P02="TEST") aus unseren internen Intranet-Applikationen (Java-Serverlets) oder automatisiert durch DB-Jobs. Dabei werden vordefinierte Reports (erstellt im Oracle Reports Builder) aufgerufen, SQL-Abfragen ausgeführt und das Ergebnis als PDF im Browser angezeigt. Es wird im Dateisystem gespeichert oder per E-Mail an den Empfänger gesendet. Gibt es solche Möglichkeiten auch für JasperReports?
Ja, Sie können die Berichte in Jasper auf die gleiche Weise nutzen. Auch URL-Aufrufe sind möglich. Bei Verwendung verschiedener Kanäle (Dateisystem, E-Mail etc.) ist jedoch eine kleine Java-Einbindung notwendig.
Wie sieht es mit der Mehrsprachigkeit von Reports für Spalten-/Berichtsüberschriften aus?
Mehrsprachigkeit wird einfach durch Property-Bundles abgedeckt, d.h. Sie definieren im Report selbst einen Platzhalter und die Textdatei liefert den passenden Ersatz.
Ist die Implementierung von Signaturfeldern in den PDF-Berichten möglich?
Ja, mit Jaspersoft und der entsprechenden Einstellung in den Eigenschaften.
Gibt es eine Möglichkeit, ein dynamisches Logo oder einen dynamischen Inhalt in der Fußzeile außer der Seitenzahl zu haben?
Die Fußzeile ist wie jeder Teilbereich (Band) in Jasper, so dass sie jede beliebige Komponenten der Palette enthalten kann (Diagramme, Bilder etc.).
Ist es möglich, Daten in eine PDF-Vorlage hinzuzufügen?
Es gibt keine eingebaute Methode im Jasper Server, um ein PDF mit editierbaren Feldern zu erhalten. Doch mit etwas Aufwand können Sie die Java PDFExporter-Klasse erweitern, eigene Markierungen an die Felder anhängen und diese editierbar machen. Siehe hier: https://community.jaspersoft.com/wiki/issue-involving-tibco-jasperreports-pdf-output-fillable-format
Können die SRW-Packages von Oracle Reports nach JasperReports mitübernommen werden?

Der Sql Report Writer (SRW) erfüllt verschiedene Funktionen in den Reports, wie zum Beispiel das Layout-Verhalten bestimmen, Schriftarten ändern etc. Mit unserem Tool REPORTS REPLACER KIT identifizieren wir alle SRW-Kombinationen innerhalb eines Formattriggers, um daraus verschiedene Stylesheets abzuleiten.

Andererseits kann sich die SRW-Package auch auf andere Funktionen auswirken, wie z.B die Schachtsteuerung am Drucker. Darauf hat Jasper keinen Einfluss, da es ausschließlich für die Generierung der PDF-Datei verantwortlich ist. Sie müssen entweder alle nötigen Informationen als Druckersteuerungen z.B. Weiß-auf-Weiß in das PDF einfügen, damit ein Print-Server das erkennen kann oder – was bei Jasper sehr einfach möglich ist – einen Post-Printing-Prozess implementieren, der das Dokument z.B. aufsplittet und an den Drucker sendet.

Ist Character Mode in Jasper möglich?

Vermutlich handelt es sich um eine sehr alte Oracle Anwendung. In diesem Fall könnte z.B. eine Java-Datei eingebunden werden, die die Verbindung zum Jasper Server herstellt. Die beste Lösung wäre jedoch, zunächst ein Upgrade auf eine aktuellere Forms-Version durchzuführen.

Erforderliche Kenntnisse und Fähigkeiten

Welche Kenntnisse muss ein Reports-Entwickler mitbringen, um mit Jasper Reports umgehen zu können?
Unsere Erfahrung zeigt, dass Oracle Reports-Entwickler nach einem speziellen Workshop von 3-4 Tagen mit der Arbeit mit Jasper Reports beginnen können. In unseren Migrationsprojekten versuchen wir die einfachsten Reports den am wenigsten erfahrenen Entwicklern zuzuordnen. Solche Reports sind nach dem Parsen mithilfe des REPORTS REPLACER KIT leicht zu identifizieren.
Wie gut muss man sich mit Java auskennen?
Für die Erstellung eines durchschnittlichen Jasper Reports ist unserer Meinung nach weniger als 10% Java-Implementierung notwendig. Java-Entwickler sind mit der IDE besser vertraut und können die Methoden und Typen der Skriptlets leicht verstehen. Java wird für Bibliothekenkonzepte und Anwendungsintegration benötigt.
Ausgehend von einer Standard-Version eines Jasper Reports, müssen wir diese Berichte für jeden Kunden abändern. Wie einfach ist das und welche Fähigkeiten sind erforderlich?

Dies hängt von der Art der Änderungen ab. Wenn dies nur das Layout betrifft, könnte die Professional Edition von Jasper Reports Ihren Anforderungen entsprechen. Damit ist es mehr oder weniger selbsterklärend. Wenn nicht, müssen alle Anpassungen in der Eclipse-ähnlichen IDE implementiert werden.

Integration von JasperReports in andere Technologien

Lässt sich Jasper Reports in Oracle Forms integrieren? Viele Anwendungen nutzen Oracle Forms zum Aufrufen von Reports und Erfassen der notwendigen Paremeter mit integrierten Funktionen wie web.show_document und set_report_object?
Ja, Jasper Reports kann sehr einfach in Forms integriert werden. Forms ruft den Jasper Server über einen WebService auf und das Ergebnis kann über die Prozedur WEB.SHOW_DOCUMENT abgerufen werden. Im Webservice-Call können alle gesammelten Parameter eingegeben werden.
Ich gehe davon aus, dass Jasper Reports auf dem Oracle WebLogic 12 Server laufen würde, doch welche Plattform wird offiziell empfohlen?
Die Plattform Oracle WebLogic 12 wird unterstützt. Wir empfehlen, eine Plattform zu verwenden, die Ihre IT-Abteilung kennt und beherrscht. Zur Orientierung: Die Mehrheit der Jaspersoft-Kunden verwendet Apache Tomcat.
Ist es möglich nach der Migration nach Jasper Reports diese in Oracle APEX zu nutzen?
Ja, man kann Oracle APEX nutzen und Jasper Reports über Webservices aufrufen.
Wie lässt sich Jasper Reports mit Oracle ADF bzw. in ein J2EE-basiertes Framework integrieren ohne es als Iframe innerhalb einer J2EE-Anwendung zu nutzen, sondern durch eine End-to-End-Authentifizierung?
Technisch gesehen basiert die Integration in ADF auf der üblichen Webservice-Architektur. ADF nutzt also Webservices von Jasper Reports, um PDF-Dokumente als Ergebnis zu generieren. Alle Authentifizierungen sind auf der ADF-Seite durchzuführen. Wenn Sie die Webservice-Calls sichern wollen, können Sie entweder eine einfache HTTP Basic Authentication oder eine spezielle Login-Authentifizierung mit der POST-Methode verwenden.
Wie ruft man einen Jasper Report von Oracle EBS heraus auf?
Wenn Ihre Oracle Forms innerhalb von EBS angepasst werden können, sollten Sie anschließend einen Webservice und ein web.show_document aufrufen können. In Ihren angepassten Datenbank-Packages können Sie ebenfalls einen Webservice aufrufen.
Plant TIBCO, zumindest einzelne Teile von Jasper Reports in Spotfire zu integrieren?
Nein.
Lässt sich Oracle Forms in eine LINUX-Plattform integrieren?

Die Integration ist möglich und sehr einfach auf verschiede Art und Weisen durchzuführen. Zum Beispiel via Webshow Documents von Oracle oder mithilfe eines Java-Plugins. Generell bestehen keine Begrenzungen, was das Betriebssystem angeht, solange die nötigen Lizenzen für die Nutzung des Tools vorhanden sind.

Noch Fragen offen?

Konnten Sie auf dieser Seite alle Antworten auf Ihre Fragen finden? Wenn nicht, sind wir gerne persönlich für Sie da und klären alle offenen Punkte. Füllen Sie dafür einfach das Formular unten aus und wir kommen Sie schnell wie möglich auf Sie zu.

 
Vorname
Nachname*
Firma*
Funktion
E-Mail*
Tel.
Bemerkung
Lead-Status
Lead-Quelle
Quelle