PDF-Dokumente spielen nach wie vor eine große Rolle. Um in Oracle APEX z.B. aus einem Bericht ein PDF-Dokument zu erzeugen, konnte bisher der Oracle REST Data Service (ORDS) genutzt werden. Dies war eine elegante Lösung, die ohne eine zusätzliche Infrastruktur nutzbar war. Technisch basierte diese Komponente auf dem Apache Formating Objects Processor. Seit der APEX-Version 19.2 steht diese Funktion nicht mehr zur Verfügung, so dass eine Alternative zur PDF-Erzeugung gefunden werden muss.
In vielen APEX Applikationen werden PDF-Reports (Berichte, Rechnungen, Listen, …) generiert. Die Ankündigung, dass ORDS in Zukunft nicht mehr genutzt werden kann, sorgt für einen gewissen Handlungsbedarf. In diesem Artikel werden zwei mögliche Alternativen vorgestellt.Apexop
Die erste Alternative ist die kostenpflichtige Lösung des Herstellers United Codes, APEX Office Print (APEXOP). In vier Schritten kann mittels dieser Lösung aus einem Input (Daten der Datenbank) ein Dokument im gewünschten Zielformat (PDF) erstellt werden.
Im ersten Schritt wird ein Template für die Generierung des finalen Dokumentes ausgewählt. Dabei stehen diverse Vorlagen zur Auswahl, es können jedoch auch eigene Templates erstellt oder die bestehenden angepasst (konfiguriert) werden. Zusätzlich zu den Templates für PDF-Dokumente stehen Vorlagen für Word, Excel, PowerPoint, Markdown und Text-Dokumenten bereit.
Der nächste Schritt ist die Wahl der Daten aus der Datenbank, die das Zieldokument enthalten soll.
Die Fusion ist der dritte Schritt im Prozess. Hier werden die ausgewählten Daten mit dem gewählten oder selbst erzeugten Template fusioniert. Dies bedeutet, dass als Resultat dieses Vorgangs ein Dokument entsteht, welches die vorher spezifizierten Daten aus der Datenbank und das ausgewählte Template kombiniert.
Der letzte und vierte Schritt bei der Erstellung des Dokumentes ist der Export und Druck des erstellten Dokumentes in dem gewünschten Dateiformat.
Nutzung Apex Office Print – On-Premises
Auf der anderen Seite besteht die Möglichkeit, dass APEX Office Print auf eigenen Servern ausgeführt wird – On-Premises. Dabei ist dann der Nutzer für die Verwaltung und Instandhaltung der Server zuständig. Hier wird dem Kunden eine Auswahl zwischen vier Paketen angeboten, welche einen unterschiedlichen Funktionsumfang beinhalten und in einer Preisspanne zwischen 2.500 und 19.900 Euro liegen.
Da APEX Office Print nicht Teil von Oracle APEX ist, muss diese Drittanbieter-Lösung in der On-Premise Variante installiert werden. Das Unternehmen APEX R&D stellt dem Nutzer nach dem Herunterladen von APEX Office Print eine Schritt-für-Schritt-Anleitung zur Verfügung, welche detailliert und mit Bildschirmaufnahmen das Vorgehen der Installation erläutert. Aus eigener Erfahrung und Erfahrungsberichten lässt sich sagen, dass die Installation dieser Lösung einen geringen Aufwand darstellt. Nach wenigen Minuten ist APEX Office Print einsatzbereit installiert.
APEX_DATA_EXPORT
Neben externen Möglichkeiten bietet auch Oracle APEX eine Alternative zum ursprünglichen Apache FOP. Dabei handelt es sich um ein Paket, dass sich APEX_DATA_EXPORT nennt. Dies beinhaltet eine Funktionalität, wie der Name bereits andeutet, Daten aus APEX heraus in unterschiedlichen Dateiformaten zu exportieren. Neben dem Dokumentenformat PDF werden zudem einige weitere Dateiformate (Office-Formate wie Word, Excel oder Powerpoint) unterstützt
Wie funktioniert APEX_DATA_EXPORT?
Die Lösung basiert auf der Programmiersprache Oracle PL/SQL und läuft somit direkt innerhalb der Oracle Datenbank. Das Paket APEX_DATA_EXPORT wird seit der APEX-Version 20.2 standardmäßig mitausgeliefert.
Um die Funktionalität des Paketes APEX_DATA_EXPORT nutzen zu können, muss zunächst eine Prozedur erstellt werden. Durch diese Prozedur kann das finale Ergebnis editiert und an die eigenen Ansprüche angepasst werden. Über Parameter kann Einfluss auf das Resultat (das PDF-Dokument) genommen werden. Mittels dieser Konfiguration kann ebenfalls bestimmt werden, woher die Daten bezogen werden, welche Bedingungen z.B. erfüllt sein müssen, um eine Zeile farblich hervorzuheben, oder wie die Kopf- und Fußzeile aussehen soll.
Daneben gibt es noch viele weitere Parameter, die die Gestaltung der zu erstellenden PDF-Datei beeinflussen.
Ein Beispiel für die Nutzung von APEX_DATA_EXPORT könnte wie folgt aussehen:
Haben Sie weiteres Interesse oder Fragen rund um APEX? Dann können unsere mehrtätige Seminare für Sie interessant sein.
Oracle APEX Anwendungsentwicklung Grundlagen Seminar Oracle APEX Anwendungsentwicklung Aufbau Seminar