Oracle Application Express
Oracle APEXホームに戻る
Application ExpressでのPDF印刷
  1. 概要とアーキテクチャ
  2. 構成オプション
    2.1  標準構成
    2.2  拡張構成
    2.3  Application Express内でBI Publisherを使用するメリット
  3. WindowsでのOracle BI Publisherのインストールと構成
    3.1  前提条件
    3.2  BI Publisherのインストール
    3.3  Application ExpressでBI Publisherを使用するための設定
  4. LinuxでのOracle BI Publisherのインストールと構成
    4.1  前提条件
    4.2  BI Publisherのインストール
    4.3  Application ExpressでBI Publisherを使用するための設定
  5. Apache FOPのインストールと構成
    5.1  前提条件
    5.2  手順
  6. その他のXSL-FO処理エンジンの設定
1.概要とアーキテクチャ Application Express 3.0では、レポート領域をPDFにエクスポートする機能、つまり事実上のレポート印刷機能が導入されました。この機能は宣言的に定義でき、すべてのレポート領域に適用できます。Application Expressユーザーは、各ページに表示されるページ見出しとさまざまなページのサイズに適切に整合しているコンテンツを含むレポートの表示と印刷ができるようになりました。これには、外部定義されたレポート・サーバーを使用して、レポート・データをPDF形式に変換します。その他の印刷の拡張機能は、Oracle Application Express 3.1の領域印刷属性とレポート問合せに組み込まれています。下図に、Application ExpressのPDF印刷アーキテクチャを示します。

Application ExpressのPDF印刷アーキテクチャ

アプリケーションのエンドユーザーが印刷リンクをクリックすると、Application Expressエンジン(Oracleデータベースに含まれる)にリクエストが送信されます。次に、Oracle APEXエンジンが、対応するレポート・データをXML形式で生成し、レポート・テンプレートをXSL-FOまたはRTF形式で生成します。外部レポート・エンジンがデータとテンプレートをPDFに変換し、Oracle BI Publisher 10.1.3.2(旧称Oracle XML Publisher)に付属している変換サーブレットを使用して、このPDFをエンドユーザーに表示します。エンドユーザーと開発者は、このようなアーキテクチャ上の複雑さを感じることは一切ありません。エンドユーザーは印刷リンクをクリックするだけでよく、開発者は宣言的に領域を設定するだけでPDF印刷をサポートできます。

 

トップに戻る

2.構成オプション レポート・サーバーには、Oracle BI Publisher、Oracle Containers for Java(OC4J)とApache FOP、その他の標準XSL-FO処理エンジンのいずれかを使用できます。BI Publisherをレポート・サーバーとして選んだ場合、より高水準な機能を利用できます。Oracle Application Expressは機能の違いに対応するため、標準構成と拡張構成という2つの機能レベルを提供しています。標準構成で使用できるのは、XSL-FOベースのレポート・テンプレートのみです。
2.1 標準構成

標準構成は、Apache FOPなどの標準XSL-FO処理エンジンと併せて実装できます。Application Express 3.0.1以降には、Apache FOPとOracle Containers for J2EE(10.1.3.2以上)を組み合わせたサポート構成が含まれています。この構成は、基本的なページ属性の制御を通じて、レポート領域とレポート問合せを宣言的に書式設定します。属性には、方向、サイズ、列ヘッダーの形式、ページ・ヘッダー、ページ・フッターが含まれます。以下に、標準構成のスクリーンショットを示します。

印刷リンクを表示したレポート領域 標準レポートのPDF出力 背景色を使用したPDF出力


2.2 拡張構成

拡張構成には有効なOracle BI Publisherのライセンスが必要です。拡張構成では、標準構成の全機能に加えて、BI PublisherのWordテンプレート・プラグインを使って開発された、RTFベースのレポート・レイアウトを定義する機能を使用できます。この機能を使うと、レポート内の全要素を簡単かつグラフィカルに制御できるため、ページにロゴや複雑なコントロール・ブレークを追加したり、ページ区切りを全面的に制御したりできます。さらに、グラフの埋込みや、国の定める標準の書式とほとんど変わらないレポートの作成も可能です。以下に、拡張構成のスクリーンショットを示します。

交付申請 ブレーク付きのマスター・ディテール 複数グラフとレポート


高度なPDFレポートの作成方法については、 How-To Create a Master-Detail PDF Reportを参照してください。

2.3 Application Express内でBI Publisherを使用するメリット

BI PublisherをApplication Expressの印刷サーバーとして使用すると、より堅牢で専門的なアプリケーションとなります。

  • シームレス:印刷機能が完全にApplication Expressに統合されます。
  • 各種の出力形式:PDF以外にWord、Excel、HTML出力を生成できます。
  • 堅牢なレポート・レイアウト:開発者は、RTFベースのテンプレートを使って、コントロール・ブレーク、ヘッダー、フッターを非常に細かく制御できるほか、グラフを埋め込む機能を提供することができます。
  • 非西欧フォントのサポート:CJK、BiDi、Unicode、MLSの完全サポートを含む優れたローカライゼーション機能が提供されます。
  • 単一ファイルのエクスポート/インポート:RTFベースのレポート・レイアウトはアプリケーション定義に含まれるため、アプリケーションとともにエクスポート/インポートできます。
  • オラクルによるサポート:BI Publisherはサポート対象のOracle製品です。
Application Express内でBI Publisherを使うメリットに加えて、以下の利点がもたらされます。
  • スケジュール設定とデリバリ
  • 複数のSQL問合せに基づくレポートの作成
  • 異種データベースのサポート
  • バースト機能
  • レポートのキャッシング
  • 高いパフォーマンス

トップに戻る

3.WindowsでのOracle BI Publisherのインストールと構成
3.1 前提条件

Oracle BI Publisherをレポート・サーバーとして使用するには、Oracle Business Intelligence Publisherバージョン10.1.3.2.1以上をインストールする必要があります。この製品は、OTN Developer License(アプリケーションの単一プロトタイプを開発する目的でのプログラム使用に限定したライセンスで、その他の目的には使用できない)に従って以下のリンクからダウンロードできます。

       Oracle Business Intelligence Publisherのダウンロードで、最新バージョンのBI Publisherを選択します。

同時にデスクトップ・ソフトウェアをダウンロードしておくと、レポートで使用するRTFテンプレートを作成できます。Oracle BI Publisherについて、詳しくはOTNのサイトを参照してください。

注:
1)Oracle Application Expressとの統合をサポートする最小バージョンは、BI Publisherバージョン10.1.3.2です。最新の10.1.3.2リリースで、XML Publisherの名前がBI Publisherに変更されました。XML Publisher 5.6.2はOracle Application Expressとの統合をサポートしておらず、PDFレンダリング・エンジンとして使用できません。

2)テンプレートの構築中にXMLサンプル・ファイルをロードしようとして"Compile error in hidden module: Module_starter"というエラーが表示された場合、Windowsのセキュリティ・パッチが原因です。この問題を回避するには、以下の手順を実行します。

  1. スタート・メニューを開きます。
       「すべてのプログラム」→「Oracle BI Publisher Desktop」→「Template Builder for Word Language」の順に選択します。
  2. 使用する言語を選択します。
  3. OK」をクリックします。
これで、問題なくプラグインを使用できるようになります。

3.2 BI Publisherのインストール

 

  1. 新しいディレクトリ(the_dir)に、bipublisher_windows_x86_101321_disk1.zipを解凍します。ディレクトリ・パスに空白が含まれていないことが重要です。たとえば、'C:\...\My Documents\BI Publisher'のように空白を使用しないでください)。
  2. the_dir\Windows\Disk1\installに移動します。
  3. setup.exeをダブルクリックすると、Oracle Installerが起動します。
  4. 画面の指示に従って、以下の項目を選択します。
    • DestinationにBIHOMEと入力します。
    • TypeでBasicを選択します。
      Oracle Containers for Java、Sun JDKなどがインストールされます。
    • OC4Jの管理者パスワードを設定します。
    • 最終ページの'End of Installation'で、ポート番号をメモします。ポート番号はBI Publisherへのアクセスに使用されるURLに含まれます(例:9704)。また、ユーザー名とパスワードをメモしておくと、後でXMLPサーバーが実行中かどうかを確認する際に使用できます。
BI Publisherサーバーが稼働中となります。インストールを確認するには、Windowsスタート・メニューの'Oracle - BIHOME'からBI Publisherサーバーにアクセスします。BI Publisherサーバーを選択してログイン画面が表示される場合、サーバーは実行されています。ログインする場合は、インストーラから提供されたユーザー名とパスワード(例:Administrator/Administrator)を使用してログインできます。

3.3 Application ExpressでBI Publisherを使用するための設定

レポート・サーバーとしてBI Publisherを使用するには、はじめにレポート印刷パラメータにアクセスします。

  1. Administration Servicesホーム・ページを開きます。
  2. Manage Service」を選択します。
  3. Manage Environment Settingsで「Instance Settings」を選択します。
  4. Report Printing」をクリックすると、レポート印刷属性のみが表示されます。
以下のとおりに属性を指定します。
  • Oracle BI Publisher: Advanced Support
  • Print Server Protocol: HTTPまたはHTTPS(使用する構成に基づく)
  • Print Server Host Address: BI Publisherをインストールしたマシンのホスト名 - 例:myhost.mycompany.com
  • Print Server Port: BI Publisherのインストールの最後に表示されたポート番号 - 例:9704
  • Print Server Script: /xmlpserver/convert
BI Publisherについて、詳しくはOTNのBI Publisherサイトを参照してください。Application Expressと互換性があるのは、BI Publisher 10.1.3.2以上です。

 

トップに戻る

4.LinuxでのOracle BI Publisherのインストールと構成
4.1 前提条件

Oracle BI Publisherをレポート・サーバーとして使用するには、Oracle Business Intelligence Publisherバージョン10.1.3.2.1以上をインストールする必要があります。この製品は、OTN Developer License(アプリケーションの単一プロトタイプを開発する目的でのプログラム使用に限定したライセンスで、その他の目的には使用できない)に従って以下のリンクからダウンロードできます。

       Oracle Business Intelligence Publisherのダウンロードで、最新バージョンのBI Publisherを選択します。

同時にデスクトップ・ソフトウェアをダウンロードしておくと、レポートで使用するRTFテンプレートを作成できます。Oracle BI Publisherについて、詳しくはOTNのサイトを参照してください。

Oracle BI Publisherをインストールする前に、Java SDK 1.5.0がシステムにインストールされていることを確認します。Java SDKは以下のWebページからダウンロードできます。

       ダウンロード

注:元のSunリリース名はJava 2 Platform, Standard Edition 1.5.0(J2SE Development Kit 1.5.0)ですが、番号体系が5.0(J2SE 5.0)に変更されています。1.5.0と5.0は、どちらも同じプラットフォームと製品を指しています。

4.2 BI Publisherのインストール

ダウンロードしたBI Publisherのバージョンに応じて、BI Publisher Documentationから該当するドキュメントを選択し、Getting Startedに記載されたインストール手順に従います。

BI Publisherのインストールが終了した後で、OC4Jを起動します。OC4Jを起動したら、BI Publisherスタート・ページを開き、BI Publisherが稼働中であることを確認します。Application Expressでの設定時に使用するホスト・アドレスとポート番号が不確かな場合は、BI Publisherスタート・ページを開いた後にブラウザのURLフィールドに表示されるホスト・アドレスとポート番号を参照してください。

4.3 Application ExpressでBI Publisherを使用するための設定

レポート・サーバーとしてBI Publisherを使用するには、はじめにレポート印刷パラメータにアクセスします。

  1. Administration Servicesホーム・ページを開きます。
  2. Manage Service」を選択します。
  3. Manage Environment Settingsで「Instance Settings」を選択します。
  4. Report Printing」をクリックすると、レポート印刷属性のみが表示されます。
以下のとおりに属性を指定します。
  • Oracle BI Publisher: Advanced Support
  • Print Server Protocol: HTTPまたはHTTPS(使用する構成に基づく)
  • Print Server Host Address: BI Publisherをインストールしたマシンのホスト名 - 例:myhost.mycompany.com
  • Print Server Port: BI Publisherのインストールの最後に表示されたポート番号 - 例:9704
  • Print Server Script: /xmlpserver/convert
BI Publisherについて、詳しくはOTNのBI Publisherサイトを参照してください。Application Expressと互換性があるのは、BI Publisher 10.1.3.2以上です。

 

トップに戻る

5.Apache FOPのインストールと構成
5.1 前提条件

Application Express 3.0.1では、Apache FOPとOracle Containers for J2EE(10.1.3.2以上)を組み合わせたサポート構成が提供されています。Apache FOPのインストール・ファイルは、Application Expressのディストリビューションにapex_install_directory/utlities/fop/fop.warとして含まれています。

:Application Express 3.0.1以降で、Apache FOPとOracle Containers for J2EE(10.1.3.2以上)の組合せはレポート・サーバーとしてサポートされていますが、これは提供されたファイルを使用してインストールした場合に限られます。Apache FOPの構成を変更した場合はサポートされません。構成の変更に関する質問は、Application Express OTN Forumに投稿してください。

はじめに、Oracle Containers for J2EE(OC4J)が稼働中であることを確認します。以下に記載するFOPソリューションでの動作が確認されているOC4Jバージョンは次のとおりです。

ステップ1:WARファイルのインストール

 

fop.warファイル(apex_install_directory/utlities/fopディレクトリ内)をローカル・マシン上のアクセス可能な場所に保存します。下記の指示に従うか、またはビューレットを実行して手順を確認します。
  1. OC4JのOracle Enterprise Managerコンソール(例:http://localhost:8888/em/)に移動します。
  2. Applications」タブを選択します。
  3. Deploy」ボタンをクリックします。
  4. "Deploy: Select Archive"ページで、「Archive is present on local host.Upload the archive to the server where Application Server Control is running.」オプションを使用します。fop.warファイルを参照して選択し、「Next」ボタンをクリックします。
  5. "Deploy: Application Attributes"ページで、"Application Name"オプションに"fop"を設定し、"Context Root"オプションをクリアして、「Next」ボタンをクリックします。
  6. "Deploy: Deployment Settings"で「Deploy」ボタンをクリックします。
ステップ2:Oracle Application ExpressでJSPを使用してPDF印刷するための設定

 

FOPをインストールしたら、レポート印刷パラメータにアクセスします。
  1. Administration Servicesホーム・ページを開きます。
  2. Manage Service」を選択します。
  3. Manage Environment Settingsで「Instance Settings」を選択します。
  4. Report Printing」をクリックすると、レポート印刷属性のみが表示されます。
以下のとおりに属性を指定します。
  • Oracle BI Publisher: Standard Support
  • Print Server Protocol: HTTPまたはHTTPS(使用する構成に基づく)
  • Print Server Host Address: javaコンテナを実行しているマシンのホスト名 - 例:myhost.mycompany.com
  • Print Server Port: OC4Jがリスニングしているポート番号 - 例:8888
  • Print Server Script: /fop/apex_fop.jsp
印刷サーバー設定は正確に入力する必要があります。ホスト名の前に「http://」を付けたり、ポート設定にコロンを使用したりしないでください。「/」はJSP名の前のみに使用し、後ろには付けません("/fop/apex_fop.jsp")。

 

トップに戻る

6.その他のXSL-FO処理エンジンの設定
その他のXSL-FO処理エンジンを使用する場合、上記のApache FOPの例で提供したJSPサンプルと同等の機能を持つエンドポイントを作成する必要があります。レポート・サーバーとしてサポートされるのは、Oracle BI Publisherと、上記の方法でインストールしたApache FOPとOracle Containers for J2EE(10.1.3.2以上)の組合せのみです。その他のXSL-FO処理エンジンに関する質問は、Application Express OTN Forumに投稿してください。

トップに戻る

7.Oracle Database 11gでのネットワーク・サービスの有効化
Oracle Database 11g Release 1(11.1)では、ネットワーク・サービスとのインタラクション機能がデフォルトで無効になっています。Oracle Application Expressと一緒にOracle Database 11g Release 1(11.1)を実行する場合、新しいDBMS_NETWORK_ACL_ADMINパッケージを使用して、FLOWS_030100データベース・ユーザー用のホストに接続権限を付与する必要があります。権限を付与しないと、PDF/レポート印刷で問題が発生します。具体的には、以下のエラー・メッセージが表示されます。
ORA-20001:The printing engine could not be reached because either 
the URL specified is incorrect or a proxy URL needs to be specified.
この場合は、『Oracle Application Express Installation Guide』の「Enabling Network Services in Oracle Database 11g」に記載された指示に従います。前述のスクリプトの実行後に「ORA-44416: Invalid ACL」エラーが発生した場合は、troubleshooting sectionを参照してください。

トップに戻る