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

戻る
戻る
 
次へ
次へ
 

42.3 Reports BuilderでのHTMLパラメータ・フォームの変更

この項では、作成した値リスト(LOV)にデータ・ソースからの値が移入されるよう、Reports BuilderでHTMLパラメータ・フォームを変更する方法を学習します。Oracle ReportsのJSPタグを使用することによって、パラメータ・フォームでデータ・モデルの要素にアクセスできるようにします。

42.3.1 パラメータ・フォームに対するデータ・モデルの手動での作成

この項の手順では、パラメータ・フォームの単純なデータ・モデルを作成する方法について説明します。

データ・モデルを作成するには:

  1. Reports Builderで、作成したHTMLファイルparamform_<自分のイニシャル>.htmlを開きます。

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

  3. 表示されたデータ・モデル・ビューで、ツール・パレットの「SQL問合せ」ツールをクリックし、データ・モデル・ビューの空き領域をクリックして「SQL問合せ文」ダイアログ・ボックスを表示します。

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

    select department_name, department_id
    from departments
    order by department_name
    

    注意:

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

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

    • SQL問合せ文」フィールドにコードを入力します。


  5. 接続」をクリックし、Human Resourcesサンプル・スキーマ(HR)の接続情報を入力します。

  6. OK」をクリックします。作成したデータ・モデルは次のようになります。

    図42-4 パラメータ・フォームのデータ・モデル・ビュー

    図42-4の説明は次にあります
    「図42-4 パラメータ・フォームのデータ・モデル・ビュー」の説明

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

42.3.2 パラメータ・フォームでの動的LOVの作成

この項では、パラメータ・フォームの既存の値リスト(LOV)にデータが取り込まれるよう、Webソースを変更する方法を学習します。このデータは、前の項で作成したデータ・モデルに依存します。また、コードを確認して、各要素がどのように動作するかを説明します。

Reports Builderでパラメータ・フォームのLOVを変更するには:

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

  2. Webソース・ビューで、次のコードを検索します。

    <select name="p_department" size="1">
    <option value="1">a</option>
    </select>
    

    注意:

    上のコードでは、LOVはスタティック値を返します。表示名は「a」で、値は「1」です。

    LOVは現在静的であるため、データ・モデルに基づいてデータを動的に取得するよう、このHTML要素を変更する必要があります。

  3. Webソース・ビューで、上のコードを次のように変更します。

    <select name=" p_department">
    <rw:foreach id="fn" src="G_department_name"> 
    <option value="<rw:field id="f_deptId" src="department_id"/>"><rw:field
    id="deptname1" src="department_name"/></option>
    </rw:foreach> 
    </select>
    

    注意:

    コードは手動で入力できます。また、提供されているファイルsimplejsppf_code.txtからコードをコピーして貼り付けることもできます。

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

コードのJSP要素の確認:

上のコードでOracle ReportsのJSPタグを使用することによって、パラメータがデータ・モデルのフィールドに基づくようにし、データをパラメータ・フォームのLOVに取り込みます。各要素を確認してください。

  • <option>: LOVの表示名は、データ・モデルのdepartment_nameフィールドの値によって置き換えられます。ユーザーがパラメータ・フォームを表示すると、部門名がリストに表示されます。

  • <rw:field>: この要素は、g_department_nameグループの各要素にアクセスします。

  • <rw:foreach>: この要素は、データ・モデルのg_department_nameグループに基づいて結果を繰り返し処理します。

  • src: このパラメータは<rw:foreach><rw:field>の両方の要素で使用されます。<rw:foreach>要素の場合、srcは、データ・モデルのグループ名(G_department_name)に一致する必要があります。<rw: field>要素の場合、参照されるフィールド(department_name)に一致する必要があります。

  • id: このパラメータには任意の値を入力できますが、一意の値を指定する必要があります。このパラメータも、<rw:foreach><rw:field>の両方の要素に適用されます。


注意:

これらのJSP要素とそのパラメータの詳細は、Oracle Reportsオンライン・ヘルプを参照してください。

コードをこのように変更することで、前の項で作成したデータ・モデルに基づき、LOVの戻り値属性がdepartment_idフィールドに置き換えられました。これで、値リストから部門名を選択すると、関連する部門IDが返されるようになります。この戻り値は表示されません。

42.3.3 パラメータ・フォーム・レポートのWebに対する実行

Webソースの変更と確認が完了したので、パラメータ・フォームをWebブラウザで表示します。

  1. ツールバーの「Webレイアウトを実行」ボタンをクリックします。


    注意:

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

  2. パラメータ・フォームが次のような外観でWebブラウザに表示されます。

    図42-5 値が含まれるパラメータ・フォーム

    図42-5の説明は次にあります
    「図42-5 値が含まれるパラメータ・フォーム」の説明


    注意:

    変更後のパラメータ・フォームでは、部門の値リストが「a」から「Accounting」に変わっていることがわかります。

  3. Department」リストをクリックして、リストに部門名がどのように移入されているか確認します。「レポート実行」ボタンはクリックできますが、このボタンのアクションをまだ定義していないで、このボタンをクリックしても何も起こりません。