Tipps & Tricks: August 2007 Bereich: APEX Erstellung: 08/2007 Versionsinfo: Apex 3.1, 3.2 Letzte Überarbeitung: 06/2009 MP Reports als PDFs "drucken" in APEX Sie wollten schon immer Ihre Reports in APEX im PDF Format ausgeben, aber Ihnen fehlte die nötige Anleitung? Dann wird Ihnen hier und jetzt geholfen. ;-) Falls Sie es nur einmal testen wollen und keinen Zugriff auf eine schon installierte APEX-Version haben, müssen Sie sie natürlich erst installieren. Dazu benutzen Sie am besten die beiliegende ReadMe-Datei. Diese veranlasst Sie zum Aufruf eines Skriptes, zum Beispiel in dieser Form, wenn Sie lokal arbeiten: sqlplus "sys/sys as sysdba" @apexins admin SYSAUX SYSAUX TEMP /i/ none Oder falls Sie einen Connect String benutzen: sqlplus "sys/sys@10g as sysdba" @apexins admin SYSAUX SYSAUX TEMP /i/ 10g Hinweis: Sie sollten auf jeden Fall vorher auf DOS-Ebene in das entpackte APEX Verzeichnis wechseln, bevor Sie den oben genannten Befehl ausführern. Am Ende sollten Sie einen ähnlichen Text wie den Folgenden sehen: Thank you for installing Oracle Application Express. Oracle Application Express is installed in the FLOWS_030000 schema. The structure of the link to the Application Express administration services is as follows: http://host:port/pls/apex/apex_admin (Oracle HTTP Server with mod_plsql) http://host:port/apex/apex_admin (Oracle XML DB HTTP listener with the embed ded PL/SQL gateway) The structure of the link to the Application Express development interface is as follows: http://host:port/pls/apex (Oracle HTTP Server with mod_plsql) http://host:port/apex (Oracle XML DB HTTP listener with the embedded PL/SQL gateway) -- Now beginning upgrade. This will take several minutes.-------- Ensuring template names are unique -------- Migrating metadata to new schema -------- Switching builder to new schema -------- Migrating SQL Workshop metadata -------- Upgrading new schema. ------Muniqsoft GmbH Schulungszentrum, Grünwalder Weg 13a, 82008 Unterhaching, Tel. 089 / 679090-40 IT-Consulting & Support, Witneystraße 1, 82008 Unterhaching, Tel. 089 / 6228 6789-0 Seite 1 von 7 -- Copying preferences to new schema. -------- Updating user account expiration. ------Upgrade completed successfully no errors encountered. -- Upgrade is complete ----------------------------------------Timing f³r: Upgrade Abgelaufen: 00:00:38.71 JOB_QUEUE_PROCESSES: 4 Performing Application Express component validation - please wait... Completing registration process. Validating installation. Timing f³r: Validate Installation Abgelaufen: 00:02:05.78 Timing f³r: Complete Installation Abgelaufen: 00:15:59.01 Verbindung zu Oracle Database 10g Express Edition Release 10.2.0.1.0 - Production beendet Danach lassen Sie noch das apex_epg_config.sql Skript laufen, damit auch alles in APEX angezeigt wird. Hinweis: Der Übergabeparameter muss auf das Verzeichnis zeigen, in dem der Apex Ordner liegt. Zum Beispiel müssen Sie dem Skript den Pfad 'c:\temp\' übergeben, wenn der Image Ordner von Apex unter dem Pfad 'c:\temp\apex\images ' zu erreichen ist. Der Skript-Ablauf sollte wie folgt aussehen: SQL> @apex_epg_config C:\temp\ PL/SQL-Prozedur erfolgreich abgeschlossen. PL/SQL-Prozedur erfolgreich abgeschlossen. alt 1: create directory APEX_IMAGES as '&1/apex/images' neu 1: create directory APEX_IMAGES as 'C:\temp\/apex/images' Verzeichnis wurde erstellt. PL/SQL-Prozedur erfolgreich abgeschlossen. Transaktion mit COMMIT abgeschlossen. PL/SQL-Prozedur erfolgreich abgeschlossen. Timing für: Load Images Abgelaufen: 00:01:23.17 Session wurde geändert. PL/SQL-Prozedur erfolgreich abgeschlossen. Transaktion mit COMMIT abgeschlossen. Session wurde geändert. Verzeichnis wurde gelöscht. Muniqsoft GmbH Schulungszentrum, Grünwalder Weg 13a, 82008 Unterhaching, Tel. 089 / 679090-40 IT-Consulting & Support, Witneystraße 1, 82008 Unterhaching, Tel. 089 / 6228 6789-0 Seite 2 von 7 Nun geht es mit den Vorbereitungen für die PDFs los. 1.) Als Erstes müssen Sie sich das JDK herunterladen und installieren (das Wichtigste hierbei ist der Compiler => javac.exe). Wenn Sie eine aktuellere oder vielleicht sogar eine ältere Version von dem JDK benützen, müssen Sie die Pfadangaben in diesem Tipp an Ihre Umgebung anpassen. 2.) Laden Sie das Oracle Call Interface for Java (OC4J) Version 10.1.3.3.0 herunter, zum Beispiel unter http://www.oracle.com/technology/software/products/ias/htdocs/utilsoft.html >> Beachten Sie die Lizenzbestimmungen!<< 3.) Entpacken Sie die heruntergeladene Datei zum Beispiel in das Verzeichnis c:\oraclexe\oc4j_extended_101330 4.) Erzeugen Sie eine Batch-Datei mit zum Beispiel dem Namen start_oc4j.bat. Diese füllen Sie mit nachfolgendem Text: Rem Pfad zum "Home" Verzeichnis des JDKs set JAVA_HOME=C:\Programme\Java\jdk1.6.0_02 Rem Pfad zum Home Verzeichnis des ->OC4J<- nicht des Oracle Home wie man Rem fälschlicherweiße annehmen könnte set ORACLE_HOME=D:\oraclexe\oc4j_extended_101330 c:\oraclexe\oc4j_extended_101330\bin\oc4j -start 5.) Starten Sie nun diese Batch-Datei: Abb. 1: Eine ohne Kommentare versehene Batch-Datei, welche ein zweites Mal gestartet wurde, sollte so aussehen. 6.) Nun werden Sie aufgefordert, das Passwort für den oc4jadmin einzugeben und es mit einer nochmaligen Eingabe zu bestätigen. Muniqsoft GmbH Schulungszentrum, Grünwalder Weg 13a, 82008 Unterhaching, Tel. 089 / 679090-40 IT-Consulting & Support, Witneystraße 1, 82008 Unterhaching, Tel. 089 / 6228 6789-0 Seite 3 von 7 7.) Gehen Sie, wenn die OC4J initialisiert ist, wie auf Abbildung 2 zu sehen, auf http://127.0.0.1:8888/em Melden Sie sich dort mit dem Benutzername "oc4jadmin" und dem von Ihnen gerade angegebenen Passwort an: Abb. 2: Dies ist ein kleiner Ausschnitt aus dem Login Bereich. Abb. 3: Danach lädt sich die Home-Seite. 8.) Wechseln Sie nun auf den Tab "Anwendungen": Muniqsoft GmbH Schulungszentrum, Grünwalder Weg 13a, 82008 Unterhaching, Tel. 089 / 679090-40 IT-Consulting & Support, Witneystraße 1, 82008 Unterhaching, Tel. 089 / 6228 6789-0 Seite 4 von 7 9.) Klicken Sie auf den Button "Bereitstellen". 10.) Wählen Sie durch den "Durchsuchen Button" die fop.war Datei aus. Diese befindet sich in diesem Beispiel unter c:\temp\apex\utilities\fop\fop.war . Klicken Sie dann auf weiter. Abb. 5 11.) Als Anwendungsnamen tragen Sie "fop" ein und entfernen dann jeglichen Text aus der Context Root Textbox. Abb. 6 12.) Nun klicken Sie auf "Bereitstellen". Muniqsoft GmbH Schulungszentrum, Grünwalder Weg 13a, 82008 Unterhaching, Tel. 089 / 679090-40 IT-Consulting & Support, Witneystraße 1, 82008 Unterhaching, Tel. 089 / 6228 6789-0 Seite 5 von 7 Die "ausserAPEXlichen" Vorbereitungen sind damit abgeschlossen. Die im späteren Verlauf auftauchenden Anweisungen beschränken sich nur noch auf APEX. 13.) Melden Sie sich als Admin des Workspaces INTERNAL an. 14.) Wechseln Sie vom Home über "Manage Service" zum "Instance Setting" 15.) Im Report Printing Bereich geben Sie bitte diese Werte an: * Oracle BI Publisher: Standard Support * Print Server Protocol: HTTP oder HTTPS * Print Server Host Address: <hostname> oder <ipadresse> * Print Server Port: 8888 * Print Server Script: /fop/apex_fop.jsp Abb. 8 16.) Klicken Sie auf "Apply Changes" und melden Sie sich als Admin ab und sich an Ihrem Workspace als Entwickler wieder an. 17.) Wechseln Sie auf die Seite mit dem Report in Ihrer Applikation. 18.) Gehen Sie auf die Print Attributes und dort in den Printing Bereich. 19.) Stellen Sie hier nun Folgendes ein: * Enable Report Printing: Yes * Link Label: PDF-Dokument * Output Format: PDF Muniqsoft GmbH Schulungszentrum, Grünwalder Weg 13a, 82008 Unterhaching, Tel. 089 / 679090-40 IT-Consulting & Support, Witneystraße 1, 82008 Unterhaching, Tel. 089 / 6228 6789-0 Seite 6 von 7 20.) Nun können Sie Ihren Report als PDF "drucken" Weitere APEX Tipps erhalten Sie einem unserer beiden APEX Kurse (welche ab August 2009 jeweils 5 Tage lang sind!). Muniqsoft GmbH Schulungszentrum, Grünwalder Weg 13a, 82008 Unterhaching, Tel. 089 / 679090-40 IT-Consulting & Support, Witneystraße 1, 82008 Unterhaching, Tel. 089 / 6228 6789-0 Seite 7 von 7