ヘッダーをスキップ
Oracle Application Server Microsoft Officeとの相互運用性開発者ガイド
10gリリース3(10.1.3.1.0)
B31842-01
  目次
目次
索引
索引

戻る
戻る
 
次へ
次へ
 

13 Oracle Reportsを使用したMicrosoft Officeへのエンタープライズ・レポートの配信

この章では、Oracle Reportsで構築したレポートをMicrosoft Officeに配信する方法を示します。レポート出力をMicrosoft ExcelスプレッドシートまたはMicrosoft Wordドキュメントとして保存する方法および電子メール添付ファイルとして送信する方法を示します。

この章の内容は次のとおりです。

13.1 概要

Oracle Reportsは、洗練されたWebレポートおよび印刷レポートを任意のデータソース(Oracleデータベース、JDBC、XML、テキスト・ファイル、Oracle OLAPなど)に対して迅速に作成およびデプロイできる強力なエンタープライズ・レポート作成ツールです。JSPやXMLなどの最新のJ2EEテクノロジを利用して、様々な形式(HTML、XML、PDF、スプレッドシート、区切りテキスト、PostScript、RTFなど)のレポートをスケーラブルかつ効率的な方法で任意の宛先に発行できます。電子メール、Webブラウザ、OracleAS Portal、ファイル・システム、FTP、WebDAVなどの組込みの宛先に加えて、Oracle Reports Java APIを使用して独自のカスタム宛先へのアクセスを定義できます。

レポートを他の人と共有する場合は、追加ソフトウェアのインストールを必要としない、使い慣れた形式を使用して行うと便利です。Oracle Reportsは、追加の設定を必要とせずに、指定した出力形式に直接レポートを実行できます。この章の詳細な手順に従うことにより、ブラウザとMicrosoft Officeがインストールされている任意のユーザーにレポートを送信できます。


注意:

Oracle Reportsに用意されているJDBC-ODBCドライバを使用して、Microsoft ExcelをODBCデータソースとして使用できます。JDBC-ODBCドライバの詳細は、『Oracle Application Server Reports ServicesレポートWeb公開ガイド』の「JDBC PDSの構成および使用」の章を参照してください。

すぐに利用できるMicrosoft Officeとの統合を拡張するために、Oracle Reports Java APIを使用して独自のカスタム宛先およびデータソースを作成できます。Oracle Reports 10gリリース2(10.1.2)のJava APIドキュメント(http://download.oracle.com/docs/html/B14049_01/toc.htm)を参照してください。


13.2 前提条件

この章で概説した手順を実行するには、最初に次の前提条件がマシンで利用可能であることを確認する必要があります。

13.3 手順

この項の手順では、Oracle Reportsを使用してレポートを作成し、Microsoft Officeアプリケーションにデプロイする方法を示します。

13.3.1 レポートの作成

Oracle Reportsでレポートを作成するには、Reports Builderを含むOracle Developer Suiteをインストールする必要があります。

Reports Builderには、WebおよびE-Businessの要件を満たす動的レポートおよび忠実度の高い印刷レポートを作成するためのレポート設計プロセスをガイドするユーザー・フレンドリなウィザードが用意されています。Reports Builderで既存のJSPおよびHTMLファイルを編集してレポート・レイアウトを追加することもできます。

任意のデータソースのデータを使用して、ニーズに合せてカスタマイズされたWebベース・レポートまたは印刷レポートを作成するためのReports Builderの使用方法は、『Oracle Reportsチュートリアル』および『Oracle Reportsレポート作成ガイド』を参照してください。レポートを作成した後で、そのレポートを任意の宛先にデプロイできます。次の各項では、提供されているサンプル・レポートmypaperreport.rdfをMicrosoft Excel、Microsoft Wordおよび電子メール受信者にデプロイする手順を示します。

13.3.2 Microsoft Excelでのレポート出力の表示

この項では、Oracle Reports 10gリリース2(10.1.2)に導入されたスプレッドシート出力機能を示します。この機能を使用すると、印刷レイアウト・レポートからMicrosoft Excel 2000以上で直接開くことのできるMicrosoft Excel互換のHTML形式まで、豊富な形式の出力を生成できます。


注意:

OC4JのReports Serverを使用してJSPベースのWebレポートをデプロイし、WebブラウザでMicrosoft Excelに表示することもできます。この処理を行う手順は、『Oracle Reportsレポート作成ガイド』の「スプレッドシート出力用のレポートの作成」の章を参照してください。

rwservletを使用してMicrosoft Excelにレポートを表示するには、次の手順を実行します。

  1. 13.2項「前提条件」の説明に従って、OC4Jインスタンスを開始してレポートのデプロイを可能にします。


    注意:

    Oracle Developer Suiteインストール環境では、スタンドアロンOC4Jインスタンスがテストの目的で用意されており、rwservletで実行しているレポートおよび実行しているJSPレポートに対してOracle Reportsアプリケーションを手動でデプロイできます。Oracle Application Serverインストール環境では、OC4J_BI_FormsインスタンスはOracle Reportsアプリケーションを自動的にデプロイします。

  2. Webブラウザ(Internet Explorerなど)で、次のいずれかのURLを入力します。

    • WebブラウザでMicrosoft Excelに表示されるレポート出力を生成するには、次のように入力します。

      http://hostname:port/reports/rwservlet?report=report_name
      &userid=username/password@database&destype=cache&desformat=spreadsheet
      
      

      たとえば、次のようになります。

      http://myas.us.oracle.com:8888/reports/rwservlet?report=mypaperreport.rdf
      &userid=sh/sh@ora10g&destype=cache&desformat=spreadsheet
      
      

      出力は図13-1のようになります。

    • Microsoft Excelで開けるHTMLファイルを生成するには、次のように入力します。

      http://hostname:port/reports/rwservlet?report=report_name
      &userid=username/password@database&destype=file&desformat=spreadsheet
      &desname=output_filename.htm
      
      

      たとえば、次のようになります。

      http://myas.us.oracle.com:8888/reports/rwservlet?
      report=mypaperreport.rdf&userid=sh/sh@ora10g&destype=file
      &desformat=spreadsheet&desname=C:\temp\myexcel_output.htm
      

    注意:

    rwservletコマンドがエラーになった場合は、13.4項「トラブルシューティング」を参照して、表示されるエラー・メッセージを解決してください。

  3. Microsoft Excelで開けるHTMLファイルを生成した場合は、Microsoft Excelを起動し、レポート出力ファイル(C:\temp\myexcel_output.htmなど)を開きます。

    出力は図13-1のようになります。

図13-1 Microsoft Excelでのレポート出力

図13-1の説明が続きます
「図13-1 Microsoft Excelでのレポート出力」の説明


注意:

スプレッドシート出力に埋め込まれているグラフは静的イメージ・ファイルであり、対話型ではありません。他にもReports BuilderとMicrosoft Excel出力のレポート・レイアウトに違いがあることに気付く場合があります。これらの差異は、Microsoft Excelがレポート・レイアウトを解釈する方法が原因です。スプレッドシート出力に関する使用上の注意と制限事項の詳細は、Oracle Reportsオンライン・ヘルプの「スプレッドシート出力について」または『Oracle Reportsレポート作成ガイド』の「高度な概念」の章を参照してください。

Reports Builderからスプレッドシート出力を生成することはできません。かわりに、desformat=spreadsheetを指定したReports Serverクライアント(rwservletまたはrwclient)またはrwrunを使用してレポートを実行します。

13.3.3 Microsoft Wordでのレポート出力の表示

Oracle Reportsでは、書式設定データとすべてのオブジェクトを含むリッチ・テキスト形式(RTF)ファイルにレポート出力を生成できます。RTFは、Microsoft Wordなどの多くの異なるワード・プロセッシング・ソフトウェア・パッケージで読み取ることができます。ソフトウェアの編集およびグラフィック機能を使用して、レポート出力を変更および拡張できます。レポート出力をRTFファイルに生成する場合は、電子メール、プリンタ、OracleAS Portal、Webブラウザなどの任意のRTF宛先に出力を配布できます。

この項では、Oracle Reportsで使用可能なRTF出力機能を示します。この機能を使用して、印刷形式のレポートからMicrosoft Wordで開くことのできるRTFファイルまでの出力を生成できます。

rwservletを使用してMicrosoft Wordにレポートを表示するには、次の手順を実行します。

  1. 13.2項「前提条件」の説明に従って、OC4Jインスタンスを開始してレポートのデプロイを可能にします。


    注意:

    Oracle Developer Suiteインストール環境では、スタンドアロンOC4Jインスタンスがテストの目的で用意されており、rwservletで実行しているレポートおよび実行しているJSPレポートに対してOracle Reportsアプリケーションを手動でデプロイできます。Oracle Application Serverインストール環境では、OC4J_BI_FormsインスタンスはOracle Reportsアプリケーションを自動的にデプロイします。

  2. Webブラウザ(Internet Explorerなど)で、次のいずれかのURLを入力します。

    • WebブラウザにRTF形式で表示されるレポート出力を生成するには、次のように入力します。

      http://hostname:port/reports/rwservlet?report=report_name
      &userid=username/password@database&destype=cache&desformat=rtf
      &mimetype=application/msword
      
      

      たとえば、次のようになります。

      http://myas.us.oracle.com:8888/reports/rwservlet?report=mypaperreport.rdf
      &userid=sh/sh@ora10g&destype=cache&desformat=rtf
      &mimetype=application/msword
      

      注意:

      mimetype=application/mswordオプションは、Microsoft WordでRTFドキュメントを開くために必要です。

      出力は図13-2のようになります。

    • Microsoft Wordで開けるRTFファイルを生成するには、次のように入力します。

      http://hostname:port/reports/rwservlet?report=report_name
      &userid=username/password@database&destype=file&desformat=rtf
      &desname=output_filename.rtf
      
      

      たとえば、次のようになります。

      http://myas.us.oracle.com:8888/reports/rwservlet?
      report=mypaperreport.rdf&userid=sh/sh@ora10g&destype=file
      &desformat=rtf&desname=C:\temp\myword_output.rtf
      

    注意:

    rwservletコマンドがエラーになった場合は、13.4項「トラブルシューティング」を参照して、表示されるエラー・メッセージを解決してください。

  3. Microsoft Wordで開けるRTFファイルを生成した場合は、Microsoft Wordを起動し、レポート出力ファイル(C:\temp\myword_output.rtfなど)を開きます。出力は図13-2のようになります。

または、Oracle Developer Suiteがインストールされている場合は、Reports Builderを使用して次のようにRTF出力をファイルに生成できます。

  1. Reports Builderを起動します(「スタート」「すべてのプログラム」「iDS Home」「Reports Developer」「Reports Builder」の順に選択するか、コマンド・プロンプト・ウィンドウを開き、rwbuilderと入力します)。

  2. 「Reports Builderへようこそ」ダイアログ・ボックスで、「既存レポートを開く」を選択し、「OK」をクリックします。

  3. 「開く」ダイアログ・ボックスで、サンプル・レポートmypaperreport.rdfを探し、開きます。

  4. 「ファイル」「接続」を選択して、Sales Historyスキーマを含むデータベースに接続します。

  5. ツールバーの「ペーパー・レイアウトを実行」ボタンをクリックしてレポートを実行します。

  6. Microsoft Wordドキュメントでレポート出力をプレビューするには、「ファイル」「プレビュー・フォーマット」「RTF」の順に選択します。

  7. レポート出力をRTFファイルとして保存するには、「ファイル」「ファイルへ出力」「RTF」の順に選択します。

  8. 「保存」ダイアログ・ボックスで、場所とファイル名(C:\temp\myword_output.rtfなど)を指定します。「保存」をクリックします。

  9. Microsoft Wordを起動し、レポート出力ファイル(C:\temp\myword_output.rtfなど)を開きます。出力は図13-2のようになります。

図13-2 Microsoft Wordでのレポート出力

図13-2の説明が続きます
「図13-2 Microsoft Wordでのレポート出力」の説明


注意:

RTF出力に関する使用上の注意の詳細は、Oracle Reportsオンライン・ヘルプの「RTF出力について」または『Oracle Reportsレポート作成ガイド』の「高度な概念」の章を参照してください。

13.3.4 電子メール受信者へのレポート出力の送信

任意のインターネット標準プロトコルSMTPメール・アプリケーションを使用して、Microsoft Outlookなどの電子メール・ユーティリティを使用している受信者に様々な形式(PDF、HTML、HTMLCSS、XML、RTF、ASCII、区切りテキストなど)でレポートを電子メール送信できます。

レポートを電子メールで送信するには、次の手順を実行します。

  1. ブラウザ(Internet Explorerなど)で、次のURLを入力します。

    http://hostname:port/reports/rwservlet?report=report_name
    &userid=username/password@database&destype=mail
    &desformat=pdf|html|htmlcss|xml|rtf|ascii|delimited
    &desname=email_address[&from=email_address]
    
    

    たとえば、次のようになります。

    http://myas.us.oracle.com:8888/reports/rwservlet?
    report=c:\orawin\examples\mypaperreport.rdf&userid=sh/sh@ora10g
    &from=tom.smith@oracle.com
    &desformat=pdf&destype=mail&desname=jan.jones@oracle.com
    

    注意:

    rwservletコマンドがエラーになった場合は、13.4項「トラブルシューティング」を参照して、表示されるエラー・メッセージを解決してください。

  2. 電子メール受信者は、Microsoft Outlookなどの電子メール・ユーティリティを使用して電子メールを開くことができます。

Oracle Developer Suiteがインストールされている場合は、Reports Builderを使用して次のように電子メール出力の送信をテストできます。

  1. Reports Builderを起動します(「スタート」「すべてのプログラム」「iDS Home」「Reports Developer」「Reports Builder」の順に選択するか、コマンド・プロンプトを開き、rwbuilderと入力します)。


    注意:

    すでに開かれている場合は、Reports Builderを再起動して、rwbuilder.confに対して行った変更を有効にします。発信メール・サーバーが以前にrwbuilder.confに定義されている場合は、Reports Builderを再起動する必要はありません。

  2. オブジェクト・ナビゲータで、サンプル・レポートmypaperreport.rdfを探し、開きます。

  3. まだ接続していない場合は、「ファイル」「接続」を選択して、Sales Historyスキーマを含むデータベースに接続します。

  4. 「ファイル」「メール」を選択します。

  5. 図13-3に示すように、「メール」ダイアログ・ボックスで、電子メール・レポートの各フィールドに適切な値を指定します。

    図13-3 「メール」ダイアログ・ボックス

    図13-3の説明が続きます
    「図13-3 「メール」ダイアログ・ボックス」の説明

  6. 「OK」をクリックして、指定した出力形式でレポートを受信者の電子メール・アドレスに送信します。


注意:

Oracle Reportsの高度な配布機能を使用して、1つのレポートを必要な形式で複数の電子メール受信者に一括して配布することもできます。配布XMLファイルのmail要素を使用して、多くの追加電子メール・オプションを指定できます。詳細は、『Oracle Application Server Reports ServicesレポートWeb公開ガイド』の「高度な配布の作成」の章を参照してください。

13.4 トラブルシューティング

この項では、この章の手順を実行する際に発生する可能性のあるエラーまたは設定の問題をいくつか説明します。詳細なトラブルシューティング情報は、『Oracle Application Server Reports ServicesレポートWeb公開ガイド』の付録「トラブルシューティング」と、エラー・メッセージに関するOracle Reportsのオンライン・ヘルプ(Reports Builder、およびOracle Technology NetworkのOracle Reports 10gのページ(http://www.oracle.com/technology/products/reports/index.html)で参照できます)を参照してください。


注意:

レポートの問題について推奨されるトラブルシューティング方法は、トレースおよびエンジン診断オプションを有効にすることです。詳細は、『Oracle Application Server Reports ServicesレポートWeb公開ガイド』の「OracleAS Reports Servicesの構成」の章を参照してください。

この章の手順の実行中に次のいずれかのエラーが発生した場合は、この項の情報が問題の解決に役立ちます。

REP-51002: Reports Serverへのバインドに失敗しました

原因: Reportsサーブレット(rwservlet)がReports Serverを特定できません。

処置: このエラーはいくつかの理由で発生します。次のいずれかの処置でエラーが解決することがあります。

rwnetwork.confファイル内の(timeout * retry)値よりも長い時間がかかる場合は、rwnetwork.conftimeout値を増やし、Reports ServerおよびOC4J_BI_Formsインスタンス(または、Oracle Developer Suiteインストール環境のスタンドアロンOC4J)を再起動します。この状況は、Reports Serverが別のネットワーク・サブネット上で実行されている場合に発生することが多くなります。

REP-110: ファイル: report_nameが開けません。

原因: Reports Serverがレポート定義ファイルを特定できません。

処置: REPORTS_PATHを変更して、レポート定義ファイルが格納されているフォルダを含めます。

たとえば、c:\myreportsにレポート定義ファイルが含まれているとします。

REPORTS_PATH=c:\myreports;C:\OraHome_5\reports\templates...

REP-56048: エンジンrwEng-0に障害が起きました

原因: このエラーは、エンジン・プロセス(JVM)に割り当てられているメモリーがスプレッドシート出力の生成に不十分である場合に発生します。スプレッドシート・レポートに多数のページ(数百ページ)が含まれている場合は、デフォルトのヒープ・メモリー割当てではレポートの生成に不十分です。

処置: サーバー構成ファイル(ORACLE_HOME\reports\conf\server_name.conf)のengine要素のjvmOptions属性を設定して、エンジン・プロセス(JVM)のヒープ・メモリーを増やします。たとえば、次のようになります。

<engine id="rwEng" jvmOptions="-Xmx512M" class="oracle.reports.engine.EngineImpl"...

jvmOptions属性の設定の詳細は、『Oracle Application Server Reports ServicesレポートWeb公開ガイド』の「OracleAS Reports Servicesの構成」の章を参照してください。


注意:

Reportsエンジンはなんらかの理由で失敗することがあります。Reports Serverでエンジンまたはジョブが失敗した場合、または応答を停止した場合に推奨される解決方法は、『Oracle Application Server Reports ServicesレポートWeb公開ガイド』の「OracleAS Reports Servicesの構成」の章の説明に従って、サーバー構成ファイル(ORACLE_HOME\reports\conf\server_name.conf)のengine要素のengineResponseTimeout属性を設定することです。

REP-50159: 正常に実行されましたが、出力の配布にいくつか問題があります

このエラーは、レポート出力を電子メール送信先に送信する際にいくつかの理由で発生することがあります。

原因1: メール・サーバーが正しく構成されていません。

処置1: サーバー構成ファイル(ORACLE_HOME\reports\conf\server_name.conf)およびReports Builder構成ファイル(ORACLE_HOME\reports\conf\rwbuilder.conf)でメール・サーバーを構成します。pluginParam要素では、発信SMTPサーバー名を指定する必要があります。たとえば、次のようになります。

<pluginParam name="mailServer">smtpserver.mycompany.com</pluginParam>

詳細は、『Oracle Application Server Reports ServicesレポートWeb公開ガイド』の「OracleAS Reports Servicesの構成」の章を参照してください。

原因2: メール・サーバーが応答していないか、稼働していません。

処置2: メール・サーバーが稼働し、適時に応答しているかどうかを確認します。Microsoft Outlookクライアントを使用して、メール・サーバーに接続し、ステータスをチェックできます。

原因3: 有効な受信者電子メール・アドレスがdesnameキーワードに対して指定されていません。

処置3: 有効な受信者電子メール・アドレスをdesnameキーワードに対して指定します。

原因4: メール・サーバーがSSL対応になっています。

処置4: 非SSLメール・サーバーを使用します。Oracle Reportsでは、電子メールの送信にSSL対応メール・サーバーをサポートしていません。

13.5 関連ドキュメント