HTML-Vorschau eines PDF oder Office-Dokumentes bereitstellen: mit Application Express
Wie man in Application Express-Anwendungen mit Dokumenten umgehen kann, war
bereits Thema einiger Community Tipps:
Lädt der Endanwender die Dokumente herunter, so öffnet sich in aller Regel die
entsprechende Desktop-Applikation (bspw. der Adobe® Reader® für PDF-Dokumente). Mitunter
ist genau dies jedoch nicht gewünscht und es wäre besser, dem Endanwender eine
HTML-Vorschau, welche vom Browser ohne weiteres dargestellt werden kann, zu präsentieren.
Wie Sie das erreichen, erfahren Sie in diesem Tipp. Arbeiten Sie zunächst die beiden oben an
erster Stelle stehenden Tipps
Dateien in einer Application Express-Anwendung hochladen und
Dateien aus einer Application Express-Anwendung herunterladen durch. Sie
sollten dann eine Anwendungsseite wie in Abbildung 1 vor sich sehen ...
Abbildung 1: Fertige Seite zum Herunterladen gespeicherter Dokumente
Klickt man auf den Dokumentnamen, öffnet sich (in diesem Fall) das entsprechende
Browser-Plugin und das Dokument wird dargestellt. Aber nun zur reinen
HTML-Vorschau: Die "Intelligenz", aus einem PDF ein HTML-Dokument zu machen,
ist bereits in der Datenbank enthalten - sie gehört zur Volltextengine
Oracle TEXT, kann jedoch auch
unabhängig davon genutzt werden. Lassen
Sie zunächst als Vorbereitung folgendes SQL-Skript ablaufen (Sie benötigen
allerdings entweder die Rolle CTXAPP oder
EXECUTE-Privilegien auf das
Paket CTX_DDL).
Das Skript erzeugt zum einen die Funktion FILTER_DOCUMENT,
welche das
(binäre) Dokument als BLOB entgegennimmt und die HTML-Version als CLOB
zurückliefert. Die eigentliche Arbeit wird dabei von der Prozedur
POLICY_FILTER im Paket
CTX_DOC erledigt. Die Prozedur PREVIEW_DOCUMENT ist
für unsere APEX-Applikation
geschrieben: Sie nimmt die ID als Parameter
auf und gibt das gefilterte
Dokument im Browser aus.
Navigieren Sie nun zu den Eigenschaften des
Berichts, der die Dokumentübersicht
darstellt, und fügen Sie eine Link-Spalte hinzu (Abbildung 2).
Abbildung 2: Link-Spalte zu einem Bericht hinzufügen
Als Link-Ziel rufen Sie die soeben erzeugte Prozedur PREVIEW_DOCUMENT auf (Abbildung 3).
Abbildung 3: Link-Ziel konfigurieren
Probieren Sie es nun aus: Die Dokumentübersicht enthält nun eine neue
Spalte mit dem Text [Preview] - wenn Sie darauf
klicken, wird eine reine HTML-Variante
des Dokuments angezeigt: Abbildung 4 zeigt ein Beispiel:
Abbildung 4: Das Ergebnis: Darstellung eines Office-Dokuments als reines HTML im Browser
Wenn Sie mit Microsoft Office 2007 arbeiten, ist das Patchset 11.1.0.7 für Sie wichtig;
Stand heute unterstützt nur diese Datenbankversion Office 2007.
Zurück zur Community-Seite
|