ヘッダーをスキップ
Oracle® Fusion Middleware Oracle Reportsレポート作成のためのユーザーズ・ガイド
11gリリース1(11.1.1)
B61376-01
  ドキュメント・ライブラリへ
ライブラリ
製品リストへ
製品
目次
目次
索引
索引

戻る
戻る
 
次へ
次へ
 

35.3 索引の作成

この項では、レポートの最後に表示する索引を作成します。この索引には、顧客名とその名前が記載されているページ番号が表示されます。索引は、ユーザーが特定の顧客名を探したい場合、参照先のカテゴリ(国名など)がわからない場合に役立ちます。

図35-10 ペーパー・レポート用の索引のサンプル

図35-10の説明は次にあります。
「図35-10 ペーパー・レポート用の索引のサンプル」の説明

35.3.1 索引用の情報を格納するデータベース表の作成

この項の手順では、索引に表示する項目のページ番号を格納する表をデータベースに作成する方法について説明します。データベースに表を作成できるかどうか不明な場合は、データベース管理者に問い合せてください。

データベースに表を作成するには:

  1. 第35.2.1項「TOCデータを格納するデータベース表の作成」の手順に従い、次のコードを使用して新しいデータベース表を作成します。

    create table index_example (term varchar2(100), page number);
    
  2. [Enter]を押します。

    表が作成されたことを示す通知が表示されます。

  3. SQL*Plusを終了します。

35.3.2 フォーマット・トリガーの作成

この項の手順では、顧客の姓に基づいたフォーマット・トリガーを作成する方法について説明します。ビルトイン・ファンクションSRW.GET_PAGE_NUMを使用して現在の顧客のページ番号を検索し、前の項で作成した表にその番号を挿入します。

フォーマット・トリガーを作成するには:

  1. Reports Builderで、リポートtoc_<自分のイニシャル>.rdfを開きます。

  2. ツールバーの「ペーパー・レイアウト」ボタンをクリックして、ペーパー・レイアウト・ビューを表示します。

  3. ペーパー・レイアウト・ビューで、フィールド「F_CUST_LAST_NAME」を右クリックし、ポップアップ・メニューから「プロパティ・インスペクタ」を選択します。

  4. 拡張レイアウト」で、「フォーマット・トリガー」プロパティ・フィールドをダブルクリックし、PL/SQLエディタを表示します。

  5. PL/SQLエディタで、テンプレートを使用して次のコードを入力します。

    function F_CUST_LAST_NAMEFormatTrigger return boolean is
      PageNum number;
    begin
      -- get pagenumber
      srw.get_page_num(pageNum);
      -- insert into table
      insert into index_example
      values (:Cust_last_name||', '||:Cust_first_name, PageNum);
      return (TRUE);
    end;
    

    注意:

    提供されているテキスト・ファイルtoc_index_code.txtから、このコードをコピーして貼り付けると、コードを入力できます。

  6. コンパイル」をクリックします。

  7. コンパイル・エラーが発生した場合は、作成したコードがサンプルのRDFファイルまたはこの章のコードと同じになるように修正して、再度コンパイルします。

  8. コンパイル・エラーがなくなったら、「閉じる」をクリックします。

  9. レポートをtoc_index_<自分のイニシャル>.rdfという名前で保存します。

35.3.3 データ・モデルへの問合せの追加

この項の手順では、索引用に個々の顧客名とページ番号を取得する問合せをデータ・モデルに追加する方法について説明します。

問合せを追加するには:

  1. データ・モデル・ビューで、ツール・パレットの「SQL問合せ」ツールをクリックし、問合せQ_1の右にあるデータ・モデル・ビューの空いている場所をクリックして、「SQL問合せ文」ダイアログ・ボックスを表示します。

  2. SQL問合せ文」フィールドに、次のSELECT文を入力します。

    SELECT SUBSTR(TERM,1,1) INITIAL_LETTER, TERM, PAGE FROM INDEX_EXAMPLE ORDER BY TERM
    

    注意:

    この問合せは、次のいずれかの方法で入力できます。
    • 提供されているテキスト・ファイルtoc_index_code.txtからコードをコピーして「データ・ソース定義」フィールドに貼り付けます。

    • クエリー・ビルダー」をクリックして、コードを入力せずに問合せを作成します。

    • データ・ソース定義」フィールドにコードを入力します。


  3. OK」をクリックします。

  4. データ・モデル・ビューに表示される新しい問合せで、「INITIAL_LETTER」列をクリックし、この列を問合せの残りの部分の上にドラッグします。それにより、データ・モデルは次のようになります。

    図35-11 索引のデータ・モデル・ビュー

    図35-11の説明は次にあります。
    「図35-11 索引のデータ・モデル・ビュー」の説明

  5. レポートを保存します。

35.3.4 トレーラ・セクションに索引を表示するためのレポート・ブロックの作成

この項の手順では、レポートのトレーラ・セクションに索引情報を表示する方法について説明します。

トレーラ・セクションにレポート・ブロックを作成するには:

  1. ペーパー・レイアウト・ビューで、ツールバーの「トレーラ・セクション」ボタンをクリックします。

  2. 挿入」→「レポート・ブロック」を選択します。

  3. 「スタイル」ページで、「グループ上」ラジオ・ボタンを選択し、「次へ」をクリックします。

  4. 「グループ」ページで、「G_2」(「INITIAL_LETTER」列を格納する新しいグループ名)をクリックし、「」をクリックして印刷方向を指定します。

  5. 使用可能グループ」リストで、「G_INITIAL_LETTER」をクリックして「」をクリックします。

  6. 次へ」をクリックします。

  7. 「フィールド」ページで、「INITIAL_LETTER」をクリックし、「>」ボタンをクリックして、このフィールドを「表示フィールド」リストに移動します。

  8. TERM」と「PAGE」を「表示フィールド」リストに移動します。

  9. 次へ」を2回クリックして、「終了」をクリックします。

  10. レポートを保存します。

35.3.5 ペーパーを対象としたレポートの実行

ツールバーの「ペーパー・レイアウトを実行」ボタンをクリックします。レポートの最後のページに索引が表示されます。この例では2402ページです。このページは次のようになります。


注意:

目次(TOC)を生成する場合は、「ペーパー・レイアウトを実行」ボタンをクリックする必要があります。「ペーパー・デザイン」ボタンをクリックしてもフォーマット順序の変更は有効にならないため、TOCは生成されません。

図35-12 レポートの索引ページ

図35-12の説明は次にあります。
「図35-12 レポートの索引ページ」の説明


注意:

スキーマに含まれるデータの量と型に応じて、作成したレポートの最後のページに表示されるデータの外観が、上の図と異なる場合があります。