ヘッダーをスキップ
Oracle® Fusion Middleware Oracle Business Intelligence Publisherデータ・モデリング・ガイド
11gリリース1(11.1.1)
B66712-02
  目次へ移動
目次
索引へ移動
索引

前
前へ
 
次
 

4 パラメータと値リストの追加

この章では、BI Publisherデータ・モデルにパラメータと値リストを追加する方法について説明します。

この章の内容は次のとおりです。

4.1 パラメータについて

データ・モデルにパラメータを追加することで、レポートを表示するときにユーザーがデータをやりとりできるようになります。

BI Publisherでは、次のパラメータ・タイプがサポートされます。

データ・モデルにパラメータが定義されていると、そのパラメータのレポート内での表示方法は、レポート・レベルの設定としてさらに細かく構成できます。レポート・レベルの設定の詳細は、『Oracle Fusion Middleware Oracle Business Intelligence Publisherレポート・デザイナーズ・ガイド』のレポート用にパラメータ設定を構成する方法に関する項を参照してください。

パラメータのサポートはデータ・セットのタイプに応じて異なります。SQL問合せのデータ・セットは、利用可能なパラメータ機能の完全なセットをサポートします。その他のタイプのデータ・セットは、これらの機能のすべてまたはサブセットをサポートするか、まったくサポートしないこともあります。表4-1は、それぞれのデータ・セットのタイプに応じたサポートの内容を示しています。

表4-1 データ・セットのタイプに応じたパラメータのサポート

データ・セットのタイプ パラメータのサポート 複数選択 全選択可能 変更時に他のパラメータをリフレッシュ

SQL問合せ

MDX問合せ

不可

不可

不可

不可

Oracle BI Analysis

Oracle BI Analysisから継承

可(Oracle BI Dashboard経由)

可(Oracle BI Dashboard経由)

可(Oracle BI Dashboard経由)

ビュー・オブジェクト

可。ただし、ビュー・オブジェクトがサポートし、そのように設計されている場合。

可。ビュー・オブジェクトで適切な構文を使用している場合。

可。ビュー・オブジェクトで適切な構文を使用している場合。

可(ビュー・オブジェクト・パラメータのみ)

Webサービス

不可

不可

不可

LDAP問合せ

不可

不可

不可

XMLファイル

N/A

N/A

N/A

N/A

Microsoft Excelのファイル

不可

不可

不可

HTTP(XML入力)

不可

不可

不可


4.2 新規パラメータの追加

新規パラメータを追加するには:

  1. 「データ・モデル」のコンポーネント・ペインで、「パラメータ」をクリックして、「新規パラメータの作成」をクリックします(図4-1を参照)。

    図4-1 新規パラメータの作成

    新規パラメータの作成
  2. パラメータの「名前」を入力します。名前はデータ・セット内のこのパラメータへの参照と同じにする必要があります。


    注意:

    パラメータ名を決定する際は、使用するデータベースの識別子に許容された最大文字数を超過してはいけません。識別子の長さの制限については、使用するデータベースのドキュメントを参照してください。


  3. リストから「データ型」を選択します。「日付」データ型は、日付の「パラメータ・タイプ」のみをサポートします。その他のデータ型は、次のメニューまたはテキストの「パラメータ・タイプ」をサポートします。

    • 文字列

    • 整数


      注意:

      パラメータ用の整数データ型は、64ビット符号付き整数です。値の範囲は、-9,223,372,036,854,775,808以上、9,223,372,036,854,775,807以下です。


    • ブール

    • 日付

    • 浮動小数値

  4. パラメータの「デフォルト値」を入力します。長時間実行される問合せを防止するために、これをお薦めします。デフォルトのパラメータ値は、BI Publisherレイアウト・エディタを使用してレポートのレイアウトを設計する際に、レポート出力をプレビューするためにも使用されます。

  5. 「パラメータ・タイプ」を選択します。サポートされているタイプは、次のとおりです。


    注意:

    BI Publisherでは、テキスト入力またはメニュー(値リスト)のタイプをサポートしていますが、両方はサポートしていません。そのため、ユーザーがテキスト値を入力することも、値リストのメニューから選択することもできるような複合パラメータを定義できません。


  6. 行配置: この設定では、パラメータを表示する行の数と、各パラメータを配置する行を構成します。たとえば、レポートに6つのパラメータが含まれている場合は、それぞれが先頭行になるように各パラメータを個別の行(1~6)に割り当てることも、それぞれ2つのパラメータを行1、2、3に割り当てることもできます。デフォルトでは、すべてのパラメータが行1に割り当てられます。

    行配置は、レポート・レベルでも構成できます。レポート定義では、パラメータに対して追加の表示オプションをサポートしています。詳細は、『Oracle Fusion Middleware Oracle Business Intelligence Publisherレポート・デザイナーズ・ガイド』のレポートのパラメータ設定を構成する方法に関する項を参照してください。

4.2.1 テキスト・パラメータの定義

「テキスト」タイプのパラメータは、テキスト・ボックスを提示して、パラメータとしてデータソースに渡すテキスト・エントリを入力するようにユーザーに求めます。図4-2に、テキスト・パラメータの定義を示します。

図4-2 テキスト・パラメータの定義

テキスト・パラメータの定義

テキスト・タイプのパラメータを定義するには:

  1. 「パラメータ・タイプ」リストから「テキスト」を選択します。下側のペインに、選択に応じた適切なフィールドが表示されます。

  2. 「表示ラベル」を入力します。表示ラベルは、レポートを表示したときにユーザーに表示されるラベルです。たとえば、Departmentなど。

  3. 「テキスト・フィールド・サイズ」に整数を入力します。このフィールドでは、テキスト・ボックスにユーザーが入力できる文字の数を決定します。たとえば、25など。

  4. 必要に応じて、次の「オプション」を有効にします。

    • テキスト・フィールドにカンマ区切りの値を含む: このオプションを選択すると、ユーザーはこのパラメータに対してカンマ区切りの複数の値を入力できます。データソース内のパラメータは、複数の値をサポートするように定義されている必要があります。

    • 変更時に他のパラメータをリフレッシュ: このパラメータの値に依存する値を持つ他のパラメータをリフレッシュするために、ページの部分的なリフレッシュを実行します。

図4-3に、レポート利用者に表示されるDepartmentパラメータを示します。

図4-3 レポートに表示された場合のテキスト・タイプ・パラメータ

レポートに表示された場合のテキスト・タイプ・パラメータ

4.2.2 メニュー・パラメータの定義

メニュー・タイプのパラメータは、ユーザーに値リストを提示します。最初に、値リストを定義しておく必要があります。詳細は、第4.4項「値リストの追加」を参照してください。メニュー・タイプのパラメータは、「文字列」および「整数」のデータ・タイプのみをサポートします。

メニュー・パラメータの定義は、次のオプションを含みます。

図4-4に、メニュー・パラメータの定義を示します。

図4-4 メニュー・タイプ・パラメータの定義

メニュー・パラメータの定義

メニュー・タイプのパラメータを定義するには:

  1. 「パラメータ・タイプ」リストから「メニュー」を選択します。下側のペインに適切なフィールドが表示されます。「データ型」(「文字列」または「整数」)を選択します。

  2. 「表示ラベル」を入力します。表示ラベルは、レポートを表示したときにユーザーに表示されるラベルです。たとえば、Departmentなど。

  3. 「リストに表示する値の数」を入力します。このフィールドのエントリよりもリスト内の値の数が多い場合、ユーザーは「検索」をクリックして、表示されていない値を探す必要があります(図4-5を参照)。このフィールドのデフォルトは、100に設定されています。

    図4-5 値の数が設定を超えたときに有効にされる「検索」機能

    有効化されたメニューの「検索」
  4. このパラメータに定義した「値リスト」を選択します。

  5. 必要に応じて、次の「オプション」を有効にします。

    • 複数選択: ユーザーはリストから複数のエントリを選択できます。データソースは、このパラメータに対して複数の値をサポートできる必要があります。複数の選択をサポートするメニュー・パラメータの表示は別のものになります。詳細は、図4-6および図4-7を参照してください。

    • 全選択可能: リストに「すべて」オプションを挿入します。値リストから「すべて」を選択すると、パラメータにNULL値を渡すか、リストのすべての値を渡すかを選択できます。「NULL値が渡されました」または「すべての値が渡されました」を選択します。


      注意:

      「*」を使用するとNULLを渡すことになるため、データソースでNULLを処理する必要があります。NULLを処理するメソッドは、次のような標準のOracle NVLコマンドです。

      where customer_id = nvl(:cstid, customer_id)

      このcstidはLOVから渡された値になります。ユーザーが「すべて」を選択するとLOVはNULL値を渡します。


    • 変更時に他のパラメータをリフレッシュ: このパラメータの値に依存する値を持つ他のパラメータをリフレッシュするために、ページの部分的なリフレッシュを実行します。

図4-6は、複数選択が無効にされている場合に、レポート利用者に表示されるDepartmentメニュー・タイプのパラメータを示しています。

図4-6 複数選択が無効な場合のDepartmentメニュー・タイプのパラメータ

複数選択が無効な場合のメニュー・タイプのパラメータ

図4-7は、複数選択が有効にされている場合に、レポート利用者に表示されるDepartmentメニュー・タイプのパラメータを示しています。

図4-7 複数選択が有効な場合のDepartmentメニュー・タイプのパラメータ

複数選択が有効な場合のメニュー・タイプのパラメータ

4.2.2.1 メニュー・パラメータの表示のカスタマイズ

レポート内でのメニュー・パラメータの表示は、レポート定義でさらにカスタマイズできます。メニュー・タイプのパラメータは、追加の表示オプションをチェック・ボックスまたはラジオ・ボタンの静的リストとしてサポートしています。詳細は、『Oracle Fusion Middleware Oracle Business Intelligence Publisherレポート・デザイナーズ・ガイド』のレポート用にパラメータ設定を構成する方法に関する項を参照してください。

4.2.3 日付パラメータの定義

日付タイプのパラメータは、データソースに渡すパラメータとして日付を入力するようにユーザーに求める日付ピッカーを提示します。図4-8に、日付パラメータの定義を示します。

図4-8 日付パラメータの定義

日付パラメータの定義

日付タイプのパラメータを定義するには:

  1. 「パラメータ・タイプ」リストから「日付」を選択します。下側のペインに、選択に応じた適切なフィールドが表示されます。

  2. 「表示ラベル」を入力します。表示ラベルは、レポートを表示したときにユーザーに表示されるラベルです。たとえば、Hire Dateなど。

  3. 「テキスト・フィールド・サイズ」に整数を入力します。このフィールドでは、日付エントリ用のテキスト・ボックスにユーザーが入力できる文字数を決定します。たとえば、10など。

  4. 「日付書式文字列」を入力します。この書式は、Javaの日付書式にする必要があります(例: MM-dd-yyyy)。

  5. 必要に応じて、「開始日」「終了日」を入力します。ここに入力した各日付によって、日付ピッカーでユーザーに提示する日付の範囲を定義します。たとえば、「開始日」に01-01-1990を入力すると、ユーザーは1990年1月1日より前の日付を日付ピッカーで選択できなくなります。「終了日」を空白のままにすると、将来の日付がすべて有効になります。

図4-9に、レポート利用者に表示されるHire Dateパラメータを示します。

図4-9 Hire Dateパラメータ

Hire Dateパラメータ

4.3 値リストについて

値リストには、レポート利用者がデータソースに渡すパラメータ値を選択できる値のセットを定義します。メニュー・タイプのパラメータを定義すると、ここで定義した値リストは選択メニューを提示することになります。値リストは、メニュー・パラメータを定義する前に定義する必要があります。

次のいずれかの方法で、リストを移入します。

4.4 値リストの追加

値リストを追加するには:

  1. 「データ・モデル」のコンポーネント・ペインで、「値リスト」をクリックし、「新規値リストの作成」をクリックします(図4-10を参照)。

    図4-10 新規値リストの作成

    新規値リストの作成
  2. リストの「名前」を入力して、「タイプ」に「SQL問合せ」または「固定データ」を選択します。

4.4.1 SQL問合せからのリストの作成

データ・エンジンは、値リストの問合せから名前(表示名)と値のペアを作成します。値リストのSELECT文では、データ・エンジンによって、最初にリストされる列が(ユーザーに表示される)表示名に使用され、2番目の列がデータ・セットの問合せのパラメータに渡される値に使用されます。

問合せで返される列が1つのみの場合は、その列の値が、ユーザーに表示される値リストの表示名およびパラメータに渡される値の両方として使用されます。

SQL問合せからリストを作成するには:

  1. リストから「データソース」を選択します。

  2. 問合せの結果をレポート・セッション用にキャッシュする場合は、下側のペインで「結果のキャッシュ」を選択します(推奨)。

  3. SQL問合せを入力するか、クエリー・ビルダーを使用します。クエリー・ビルダー・ユーティリティの詳細は、第2.4項「クエリー・ビルダーの使用」を参照してください。図4-11に、SQL問合せタイプの値リストを示します。

図4-11 SQL問合せタイプの値リスト

SQL問合せタイプの値リスト

図4-11に示すSQL問合せは、DEPARTMENTS表のDEPARTMENT_NAME列のみを選択しています。この場合、値リストが問合せの結果としてリストに表示され、その同じ値がデータ・セットのパラメータに渡されます。図4-12は、値リストの表示項目とデータ・セットに渡された値を示しています。メニュー項目とP_DEPTに表示されている値はDEPARTMENT_NAMEの値であることに注意してください。

図4-12 同じ値リストの表示名と値を示すサンプル・データ

値リストの表示名と値のペアは同じです。

かわりに、DEPARTMENT_NAMEをリスト表示しているデータセットのパラメータにDEPARTMENT_IDを渡す場合は、SQL問合せを次のように構成します。

select     "DEPARTMENTS"."DEPARTMENT_NAME" as "DEPARTMENT_NAME",
         "DEPARTMENTS"."DEPARTMENT_ID" as "DEPARTMENT_ID"
 from    "DEMO"."DEPARTMENTS" "DEPARTMENTS

図4-13は、値リストの表示項目とデータ・セットに渡された値を示しています。メニューにはDEPARTMENT_NAMEがリスト表示され、P_DEPTにはDEPARTMENT_IDの値が表示されていることに注意してください。

図4-13 値リストの表示名と値

値リストの表示名と値

4.4.2 固定データ・セットからのリストの作成

固定データ・セットからリストを作成するには:

  1. 下側のペインで、「新規値リストの作成」アイコンをクリックして、「ラベル」と「値」のペアを追加します。ラベルはユーザーにリスト表示されます。値はデータ・エンジンに渡されます。

  2. これを、必要なラベルと値のペアごとに繰り返します。

図4-14に、固定データ・タイプの値リストを示します。

図4-14 固定データ・タイプの値リスト

固定データ・タイプの値リスト