ヘッダーをスキップ

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

戻る 次へ

30
集約データを使用したレポートの作成

この章では、値範囲に基づいた集約データを含むレポートについて学習します。この章の手順に従うと、図30-1に示すようなレポート出力を生成できます。

図30-1    集約データ・レポートの出力


画像の説明

概要

範囲内のデータを集約または収集するレポートでは、データベースから値が取り出され、その値が定義した集約範囲に基づいて書式設定されます。データを収集する範囲はパラメータを使用して指定することもできます。

データ・リレーションシップ

このレポートでは、SELECT文に2つのファンクションを使用して、集約範囲を指定します。このファンクションは、給与の下限を計算する(FLOOR(SAL/1000))*1000)と、給与の上限を計算する(CEIL*((SAL+1)/1000) * 1000)です。これらのファンクションから値を受け取る列をブレーク・グループ内に置き、コントロール・ブレーク形式のサンプル・レポートを作成します。

レイアウト

このレポートでは、グループ左のレイアウト・スタイルを使用します。

使用例

この例では、給与が0〜999の範囲内にあるすべての従業員の名前、給与が1,000〜1,999の範囲内にあるすべての従業員の名前などを収集し、その名前を表示する、ペーパー・レポートとJSPベースのWebレポートの両方を作成します。このレポートを変更して、必要な集約範囲を表示できます。

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

範囲内のデータを集約するレポートのサンプルを表示するには、サンプル・フォルダaggregatingdataを開き、Oracle Reportsのサンプルaggregatingdata.rdfを開きます。このファイルの開き方の詳細は、「はじめに」の「サンプル・レポートへのアクセス」を参照してください。

30.1 この例の前提条件

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

30.2 問合せとレイアウトの作成

この項の手順では、レポート・ウィザードで単純なデータ・モデルとレポート・レイアウトを作成する方法を説明します。これらを使用して、JSPベースのWebレポートやペーパー・レポートを生成できます。次の項では、JSPを変更し、Webレポートで適切な情報が表示されるようにします。

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

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

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

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

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

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

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

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

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

    SELECT (FLOOR(SAL/1000))*1000 BOTTOM,
    CEIL((SAL+1)/1000) * 1000 TOP,
    ENAME,
    DEPTNO
    FROM EMP
    ORDER BY 1,2, SAL
    
    


    注意

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

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

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

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

     

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


    注意

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


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

    • BOTTOM

    • TOP

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

  11. 「合計」ページで「次へ」をクリックします。

  12. 「ラベル」ページで「次へ」をクリックします。

  13. 「テンプレート」ページで、「事前定義テンプレート」を選択し、「Beige」をクリックします。次に「終了」をクリックして、ペーパー・デザイン・ビューにレポート出力を表示します。表示は次のようになります。

    図30-2    集約データ・レポートのペーパー・デザイン・ビュー


    画像の説明

  14. ペーパー・デザイン・ビューで、テキスト「Bottom」をクリックして、そのテキストをSalary Rangeに変更します。

  15. テキスト「Top」を削除します。


    注意

    他の列のヘッダーもわかりやすいテキストに変更できます。 


  16. ツールバーの「ペーパー・レイアウト」ボタンをクリックして、ペーパー・レイアウト・ビューを表示します。現在のレイアウトは次のようになります。

    図30-3    集約データ・レポートのペーパー・レイアウト・ビュー


    画像の説明

  17. ペーパー・レイアウト・ビューで、ツールバーの「フレックス・オフ」ボタンをクリックして、フレックス・モードをオフにします。

  18. f_bottom枠の右端をクリックして、約0.5インチ(1.5 cm)左へドラッグし、「f_bottom」と「f_top」のフィールド間にスペースを作ります。

    ヒント

    ペーパー・レイアウト・ビューのオブジェクトを検索するには、オブジェクト・ナビゲータを使用します。オブジェクト・ナビゲータで項目名をクリックすると、対応するオブジェクトがペーパー・レイアウト・ビューで選択されます。 

  19. ツール・パレットの「テキスト」ツールをクリックします。

  20. 「f_bottom」と「f_top」の間にボイラープレート・テキスト・オブジェクトをドラッグし、テキスト・ボックスに"-"と入力します。レイアウトは次のようになります。

    図30-4    新しいボイラープレート・テキストが付いたペーパー・レイアウト・ビュー


    画像の説明

  21. ここで、ツールバーの「ペーパー・レイアウトを実行」ボタンをクリックして、レポートを表示します。表示は次のようになります。

    図30-5    ペーパー・デザイン・ビュー


    画像の説明


    注意

    このレポートで、給与範囲ごとにどのように従業員名が表示されるか(どのようにデータが集約されるか)を確認してください。 


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

  23. レポートのデータ・モデルを見てください。このデータ・モデルを使用して、ペーパー・レポートまたはJSPベースのWebレポートを生成できます。データ・モデルを表示するには、ツールバーで「データ・モデル」ボタンをクリックします。作成したデータ・モデルは次のようになります。

    図30-6    集約データ・レポートのデータ・モデル


    画像の説明

30.3 JSPレポートのWebソースの変更

ペーパー・レポートのレイアウトが作成されたので、同じレポートを使用して、ペーパー・レポートと同じように表示されるJSPベースのWebレポートを生成する方法を学習します。

JSPベースのWebレポートを変更するには:

  1. レポートaggregatereport_<自分のイニシャル>.rdfを、同じ名前でJSPとして保存します(aggregatereport_<自分のイニシャル>.jsp)。

  2. ツールバーの「Webソース」ボタンをクリックして、Webソース・ビューを表示します。

    Webソースで、ペーパー・レポートにあわせて列タイトルを変更する必要があります。

  3. Webソース・ビューで、次のテキストを検索します。

    <th <rw:id id="HBbottom" asArray="no"/> class="OraColumnHeader"> Bottom </th>
    
    

    ヒント

    「編集」→「検索と置換」を選択し、「検索文字列」テキスト・ボックスに"bottom"と入力します。 

  4. 列ヘッダーを"Salary"に変更します。これで、次のような行になります。

    <th <rw:id id="HBbottom" asArray="no"/> class="OraColumnHeader"> Salary </th>
    
  5. 次のコード行は、"Top"列のヘッダーを示します。ヘッダー・テキストを削除し、次のような行にします。

    <th <rw:id id="HBtop" asArray="no"/> class="OraColumnHeader">  </th>
    
  6. 必要に応じて、EnameとDeptnoの2つの列も変更します。たとえば、ここでは次のように"Name"と"Dept"に変更します。

    <th <rw:id id="HBename" asArray="no"/> class="OraColumnHeader"> Name </th>
    <th <rw:id id="HBdeptno" asArray="no"/> class="OraColumnHeader"> Dept </th>
    
  7. レポートをJSPとして保存します。

  8. ツールバーの「Webレイアウトを実行」ボタンをクリックして、ブラウザに新しいJSPベースのWebレポートを表示します。


    注意

    • デフォルトのブラウザがNetscape 7.0で、ブラウザが表示されない場合、レジストリ・キーHKEY_CURRENT_USERS¥Software¥Oracle¥Toolkit¥Tkbrowserをデフォルトのブラウザの場所に設定します。BrowserNameキーおよびBrowserPathキーが正しい値を反映していることを確認してください。たとえば、次のようになります。BrowserName=Netscape 7; BrowserPath=C:¥Program Files¥Netscape¥Netscape¥Netscp.exe

    • major.minorバージョン関連のエラーで「Webレイアウトを実行」が失敗した場合、CLASSPATH環境変数またはREPORTS_CLASSPATH環境変数を次のように更新する必要があります。oc4j.jarファイル・パス内の9.0.x ORACLE_HOMEの指定を削除します(oc4j.jarファイル・パスは10gリリース2(10.1.2)ORACLE_HOMEのみを指定している必要があります)。

     

    レポートは次のように表示されます。

    図30-7    集約データのJSPベースのWebレポート


    画像の説明

    このレポートでは、指定した集約データがWeb形式で表示されます。ここでは、従業員名とその給与範囲がわかります。


    注意

    JSPベースのWebレポートのパラメータ・フォームの作成方法の詳細は、Oracle Technology Network(OTN)を参照してください。Oracle Reports 10gのページ(http://www.oracle.com/technology/products/reports/index.html)で、「Getting Started」をクリックして「Getting Started with Oracle Reports」ホームページを表示します。左側にあるトピックのリストの中から「Index」をクリックします。「Collateral Type」リストで、「Documentation」を選択し、「Search」をクリックします。表示された例のリストから、「Building a JSP-based Web Report with a Parameter Form」をクリックします。 


30.4 まとめ

これで、すべての作業が完了しました。ペーパー出力用とWeb用にデータを集約するレポートは、正常に作成されました。この章で学習した内容は次のとおりです。

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


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

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