Oracle® Fusion Middleware Oracle Reportsレポート作成のためのユーザーズ・ガイド 11gリリース1 (11.1.1) B61376-03 |
|
![]() 前 |
![]() 次 |
この章では、目次と索引で構成される単純なレポートについて学習します。
注意: 目次または索引の生成は、マトリックス・レポートではサポートされていません。 |
この章の手順に従うと、図35-1および図35-2に示すようなレポート出力を生成できます。
概要
大規模なペーパー・レポートに目次があると、ユーザーはレポート内を移動しやすくなります。Reports Builderを使用すると、ペーパー・レポートの最初に表示される目次を生成できます。
通常、Reports Builderでは、ヘッダー・セクションから開始して、メイン・セクション、トレーラ・セクションの順にレポートがフォーマットされます。このサンプル・レポートで示す機能を使用すると、任意のセクションを最初にフォーマットし、フォーマット時にのみ認識される情報(ページ番号など)を作成して、その情報を前のセクションのフォーマットに使用できます。
この例では、ビルトイン・プロシージャSRW.SET_FORMAT_ORDERを使用してレポートのメイン・セクションを最初に生成し、その後ヘッダー・セクションとトレーラ・セクションを生成します。これにより、レポートのメイン・セクションでページ番号を作成してから、ヘッダー・セクションの目次にそのページ番号を表示できるようになります。
注意: SRW.SET_FORMAT_ORDERを使用してレポートのフォーマット順序を変更しても、レポートでは依然として、最初にヘッダー・セクション、次にメイン・セクション、最後にトレーラ・セクションが表示されます。SRW.SET_FORMAT_ORDERを使用すると、レポートのフォーマット順序を変更できますが、レポート・セクションの表示順序は変更できません。 |
After Parameter Formトリガーとフォーマット・トリガーを使用して、データベース内に作成した表にページ番号を一時的に格納します。次に、レポートの最初に表示する単純な表形式のレポートを作成して、カテゴリとそのページ番号を一覧表示します。最後に、レポートのトレーラ・セクションにレコードとページ番号のみを表示する単純な索引を作成します。
複数階層を持つ目次の作成の詳細は、第36章「複数階層の目次を使用したペーパー・レポートの作成」を参照してください。
使用例
この例では、何千ものレコードが含まれている顧客データベースのすべての電子メール・アドレスのリストを生成します。必要な顧客の電子メール・アドレスを検索しやすくするために、最初に顧客を分類(ここでは国ごとに分類)し、次に目次を生成します。その後、レポートの索引を作成する方法を学習します。
このサンプル・レポートの作成過程では、次を行います。
SQL*Plusを使用したTOCデータを格納するデータベース表の作成
レポート・ウィザードを使用したグループ上レポートの作成
レポート・セクションの実行順序を変更し、各レコードのページ番号をフェッチするための、PL/SQLエディタを使用したAfter Parameter Formトリガーとフォーマット・トリガーの作成
各国名の下にあるデータのページ範囲を計算する式列を持つデータ・モデルでの2番目の問合せの作成
国名とページ番号を表示するヘッダー・セクションの表形式のレポート・ブロックを作成するための、レポート・ブロック・ウィザードを使用した、目次を表示するためのレポート・ブロックの作成
各顧客レコードのページ番号を生成するためのフォーマット・トリガーの作成
索引に必要な情報を取得する別の問合せを作成するためのデータ・モデル・ビューを使用したデータ・モデルへの問合せの追加
目次と索引のレポートのサンプルを表示するには、サンプル・フォルダtocindex
を開き、Oracle Reportsのサンプルtoc_index.rdf
を開きます。このファイルの開き方の詳細は、「はじめに」の「サンプル・レポートへのアクセス」を参照してください。