ヘッダーをスキップ

Oracle Reports レポート作成ガイド
10gリリース2(10.1.2)
B25068-01
目次
目次
索引
索引

戻る 次へ

9
サマリー・レポートの作成

この章では、サマリー・レポートについて学習します。この章の手順に従うと、図9-1に示すようなレポート出力を生成できます。

図9-1    サマリー・レポートの出力


画像の説明

概要

サマリー・レポートには、他のデータのサマリーで構成される列が少なくとも1つ含まれます。サマリー列には、売上の合計値を計算する列、手数料のリストの平均値を計算する列、一連の発注書内での最大金額を示す列などがあります。

データ・リレーションシップ
レイアウト

このレポートでは、マスター/ディテールのレイアウト・スタイルを使用します。

使用例

この例では、売上データを販売員別に表示および集計するレポートを作成します。このレポートには次のサマリーを入れます。

このサンプル・レポートの作成過程では、次を行います。

サマリー・レポートのサンプルを表示するには、サンプル・フォルダsummaryを開き、Oracle Reportsのサンプルsummaryb.rdfを開きます。アクセス方法の詳細は、「はじめに」の「サンプル・レポートへのアクセス」を参照してください。

9.1 この例の前提条件

この章の例を作成するには、Oracle Database付属のOrder Entryサンプル・スキーマに対するアクセス権が必要です。このサンプル・スキーマに対するアクセス権の有無が不明のときは、データベース管理者に問い合せてください。

9.2 データ・モデルとグループ上レイアウトの作成

この例のように、単一問合せレポートを作成する場合、レポート・ウィザードを使用して、データ・モデルとレイアウトを同時に作成できます。

データ・モデルとレイアウトを作成するには:

  1. Reports Builderを起動します。すでに起動している場合は、「ファイル」→「新規」→「レポート」を選択します。

  2. 「ようこそ」ダイアログ・ボックスまたは「新規レポート」ダイアログ・ボックスで、「レポート・ウィザードを使う」を選択して「OK」をクリックします。

  3. 「ようこそ」ページが表示されたら、「次へ」をクリックします。

  4. 「レポート・タイプ」ページで、「ペーパー・レイアウトのみ作成」を選択し、「次へ」をクリックします。

  5. 「スタイル」ページでレポートのタイトルを入力し、「グループ上」を選択して、「次へ」をクリックします。

  6. 「データ・ソース」ページで、「SQL問合せ」をクリックし、「次へ」をクリックします。

  7. 「データ」ページの「データ・ソース定義」フィールドに次のSELECT文を入力します。

    SELECT SALES_REP_ID, CUSTOMER_ID, SUM(ORDER_TOTAL) TOTAL
    FROM ORDERS
    GROUP BY SALES_REP_ID, CUSTOMER_ID
    


    注意

    この問合せは、次のいずれかの方法で入力できます。

    • 提供されているテキスト・ファイルsummary_code.txtからコードをコピーして、「データ・ソース定義」フィールドに貼り付けます。

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

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

     

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


    注意

    データベースにまだ接続していない場合は、「クエリー・ビルダー」または「次へ」をクリックしたときに、データベースに接続するよう求められます。この例に該当するスキーマが含まれるデータベースに接続してください。第9.1項「この例の前提条件」に、この例のサンプル・スキーマの要件に関する説明があります。 


  9. 「グループ」ページで、「SALES_REP_ID」をクリックし、「>」ボタンをクリックして、このフィールドを「グループ・フィールド」リストに移動し、「次へ」をクリックします。

    図9-2    レポート・ウィザードの「グループ」ページ


    画像の説明

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

  11. 「合計」ページで、「使用可能フィールド」リストの「TOTAL」をクリックし、「合計」をクリックします。ここで使用しているデータ・モデルでは、この手順で次の2つのサマリー列が作成されます。

    • SumTOTALPerSALES_REP_IDでは、SALES_REP_IDの値ごとに(つまり販売員別に)TOTALの値が合計されます。

    • SumTOTALPerReportでは、レポート全体(つまり全販売員)のTOTALの値が合計されます。

  12. さらに「合計」ページで「%合計」をクリックします。ここで使用しているデータ・モデルでは、この手順で次の2つの列が作成されます。

    • TotalTOTALPerCUSTOMER_IDでは、各顧客(CUSTOMER_ID)の金額が、各販売員(SALES_REP_ID)の合計金額に占めるパーセント値として計算されます。

    • TotalTOTALPerSALES_REP_IDでは、各販売員(SALES_REP_ID)の金額が、レポート全体の合計金額に占めるパーセント値として計算されます。

      図9-3    レポート・ウィザードの「合計」ページ


      画像の説明

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

  14. 「ラベル」ページで、ラベルを次のように変更し、「次へ」をクリックします。

    フィールド  ラベル 

    SALES_REP_ID 

    Sales Rep 

    CUSTOMER_ID 

    Customer 

    TOTAL 

    Dollars 

  15. 「テンプレート」ページの「事前定義テンプレート」で「Beige」が選択されていることを確認します。

  16. 「終了」をクリックして、レポート出力をペーパー・デザイン・ビューに表示します。

9.3 フィールドの書式設定

ペーパー・デザイン・ビューの「合計」フィールドを見てください。値は、位置合せも金額表示もされていません。これらの点は、ペーパー・デザイン・ビューですぐに調整できます。

書式マスクを金額に割り当てるには:

  1. ペーパー・デザイン・ビューで、「Dollars」ラベルの下に表示されている最初の数値を選択します。すべての値が選択されるので、それらのプロパティを同時に変更できます。

    ヒント

    書式マスクの構文に精通している場合は、フィールドの値を右クリックして「プロパティ・インスペクタ」を選択し、「書式マスク」プロパティの値を選択するか、手動で入力してもかまいません。 

  2. ツールバーの「通貨」ボタンをクリックします。すべての値の横に通貨記号が表示されます。

  3. 「10進桁を追加」ボタンを2回クリックします。小数点の右側に少数点以下2桁が追加されます。

  4. フィールドの一番右側にあるハンドルをクリックし、そのまま左へ約0.5インチ(1.5 cm)ドラッグして、フィールドのサイズを変更します。

  5. 「右に整列」ボタンをクリックします。すべての値が右詰めになります。

  6. 「Dollars」ラベルを選択します。

  7. 「右に整列」ボタンをクリックします。

  8. 「合計:」ラベルの右側にある数値を選択します。

  9. 「通貨」ボタンをクリックします。すべての値の横に通貨記号が表示されます。

  10. 「10進桁を追加」ボタンを2回クリックします。小数点の右側に少数点以下2桁が追加されます。

  11. 「右に整列」ボタンをクリックします。すべての値が右詰めになります。

    図9-4    金額が書式設定されたサマリー・レポートの出力


    画像の説明

  12. レポートの最後に進んでください。最終ページの最後の値は、「合計:」というラベルの付いたサマリーとなります。この値は、レポート全体のTOTALの合計値です。

  13. 「合計:」ラベルの右側にある、書式設定されていない数値を選択します。

  14. このフィールドをクリックし、その右端が「合計」列の値の右端と揃うまでドラッグします。

  15. ツールバーの「通貨」ボタンをクリックします。「合計」の値の横に通貨記号が表示されます。

  16. 「10進桁を追加」ボタンを2回クリックします。小数点の右側に少数点以下2桁が追加されます。

  17. 「右に整列」ボタンをクリックします。すべての値が右詰めになります。

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

    図9-5    レポートの合計が書式設定されたサマリー・レポート


    画像の説明

9.4 サマリー列のプロパティのチェック(オプション)

この例では、プロジェクトの要件に従って、レポート・ウィザードによりサマリーが作成されました。ただし、場合によっては、希望どおりの計算を行うためにサマリーの設定を手動で調整する必要があります。レポート・ウィザードで作成されたサマリーを入念に確認すれば、サマリーの機能がさらに理解しやすくなります。

この項では、レポートの変更は行いません。サマリーの理解を深めるために、サマリーの設定を確認するにとどめます。

サマリーの設定の確認

  1. ペーパー・デザイン・ビューで、「全体に対する割合(%)」ラベルの右に表示されているパーセント値を選択します。

  2. 値をダブルクリックして、プロパティ・インスペクタを表示します。

  3. プロパティ・インスペクタの「ソース」プロパティを見てください。ここには、このフィールドのソースとなる列が示されています。

  4. レポート内のすべてのサマリーについて手順1〜3を繰り返します。これらのサマリー・フィールドそれぞれについて、ソースとなる列の名前を書き留めます。

  5. オブジェクト・ナビゲータで、「データ・モデル」ノードの横のビュー・アイコンをダブルクリックして、データ・モデル・ビューを表示します。

  6. データ・モデル・ビューで、G_SALES_REP_IDグループの「TotalTOTALPerSALES_REP_ID」をダブルクリックして、プロパティ・インスペクタを表示します。

  7. プロパティ・インスペクタでは、「サマリー」の下のプロパティの値は次のように設定されています。

    • 「ファンクション」の値は「割合(%)」です。「割合(%)」を「合計」に変更します。「計算位置」プロパティは、「合計」の計算には不要なので非表示になります。「ファンクション」の値を「割合(%)」に戻すと、「計算位置」プロパティが再表示されます。

    • 「ソース」の値は「TOTAL」列です。したがって、サマリーの計算にはTOTALが使用されます。

    • 「リセット位置」の値は「G_SALES_REP_ID」です。TotalTOTALPerREPIDの値は、G_SALES_REP_IDの各レコード(つまり各販売員)の後でゼロにリセットされます。

    • 「計算位置」の値は「Report」です。計算レベルが「Report」というのは、TotalTOTALPerSALES_REP_ID列のパーセント値が、レポート全体のTOTALの合計に基づいていることを意味します。

  8. データ・モデル内の各サマリーについて手順6〜7を繰り返します。サマリーごとのプロパティ値に相違があることがわかります。

  9. ペーパー・デザイン・ビューに戻り、サマリーに対応するフィールドがレイアウトのどこに配置されているかを確認することも有益です。たとえば、TotalTOTALPerSALES_REP_IDに対応するフィールドは、マスター繰返し枠R_G_SALES_REP_IDの内側、そしてディテール繰返し枠R_G_CUSTOMER_IDの外側に配置されています。

9.5 まとめ

これで、すべての作業が完了しました。サマリー・レポートは正常に作成されました。この章で学習した内容は次のとおりです。

この例で使用されているウィザード、ビュー、プロパティの詳細は、Oracle Reportsオンライン・ヘルプを参照してください。このヘルプは、第3.1.1項「Oracle Reportsオンライン・ヘルプの使用」で説明しているとおり、Reports BuilderまたはOracle Technology Network(OTN)から表示できます。


戻る 次へ
Oracle
Copyright © 2003, 2005 Oracle.

All Rights Reserved.
目次
目次
索引
索引