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

前
前へ
 
次
 

2 データ・セットの作成

この章では、BI Publisherでのデータ・セットの作成、データ・モデルのテストおよびサンプル・データの保存について説明します。

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

2.1データ・セットの作成の概要

Oracle BI Publisherでは、いくつかのタイプのデータソースからデータを取得できます。

データ・セットを作成するには:

  1. データ・モデル・エディタのコンポーネント・ペインで、「新規データ・セット」をクリックします(図2-1を参照)。

    図2-1 データ・セットの作成

    データ・セットの作成
  2. リストからデータ・セットのタイプを選択して、適切なダイアログを開きます(図2-2を参照)。

    図2-2 データ・セットのタイプの選択

    データ・セットのタイプの選択
  3. データ・セットの作成に必要なすべてのフィールドに入力します。各タイプのデータ・セットを作成する方法の詳細は、この章内で対応する項を参照してください。

2.2 既存のデータ・セットの編集

既存のデータ・セットを編集するには:

  1. データ・モデル・エディタのコンポーネント・ペインで「データ・セット」をクリックします。このデータ・モデル用のすべてのデータ・セットが、作業ペインに表示されます。

  2. 編集するデータ・セットをクリックします。

  3. 「選択したデータ・セットの編集」をクリックします。データ・セットのダイアログが開きます。データ・セットの各タイプの詳細は、この章内で対応する項を参照してください。

  4. データ・セットに変更を加えて、「OK」をクリックします。

  5. データ・モデルを保存します。

  6. 編集したデータ・モデルをテストして、新しいサンプル・データを追加します。テストとサンプル・データ生成の方法の詳細は、第2.16項「データ・モデルのテストとサンプル・データの生成」を参照してください。

2.3 SQL問合せを使用したデータ・セットの作成

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

2.3.1 SQL問合せの入力


注意:

リリース11.1.1.7.10では、より複雑なSQL問合せのサポートが追加され、「SQLのタイプ」メニュー選択が導入されています。この機能は、それより前のバージョンのBI Publisherでは使用できない場合があります。Oracle BI Publisher 11.1.1.7.10の詳細は、「11.1.1.7.10の新機能」を参照してください。


SQL問合せを入力するには:

  1. 「新規データ・セット」をクリックし、「SQL問合せ」をクリックします。「データ・セットの作成 - SQL」ダイアログが開きます(図2-3を参照)。

    図2-3 「新規データ・セット - SQL問合せ」ダイアログ

    「データ・セットの作成 - SQL」ダイアログ
  2. データ・セットの名前を入力します。

  3. データソースのデフォルトは、「プロパティ」ページで選択されたデフォルトのデータソースです。このデータ・セットのデフォルト・データソースを使用しない場合は、リストから「データソース」を選択します。

    プライベート・データソース接続をSQL問合せデータ・セットのデータソースとして使用することもできます。プライベート・データソース接続の詳細は、第1.8項「プライベート・データソースの管理」を参照してください。

  4. SQLタイプは、データベース・スキーマを認識するために解析される標準のSELECT文に使用される「標準SQL」にデフォルトで設定されています。他のSQLタイプの使用の詳細は、第2.3.2項「非標準SQLデータ・セットの作成」を参照してください。

  5. SQL問合せを入力するか、「クエリー・ビルダー」をクリックして「クエリー・ビルダー」ページを開きます。クエリー・ビルダー・ユーティリティの詳細は、第2.3.3項「SQLクエリー・ビルダーの使用」を参照してください。

  6. 問合せ内でフレックスフィールドやバインド変数などの特別な処理を使用する場合は、クエリー・ビルダーから返されたSQLを編集して必要な文を組み込みます。


    注意:

    SELECT文に埋め込んだテキストの字句参照を含める場合は、有効なSQL文が得られるように値を置き換える必要があります。


  7. 問合せの入力後に、「OK」をクリックして保存します。標準SQL問合せの場合、データ・モデル・エディタによって問合せが検証されます。

    問合せにバインド変数が含まれているときには、バインド・パラメータの作成を促すプロンプトが表示されます。「OK」をクリックして、データ・モデル・エディタでバインド・パラメータを作成します。

    パラメータの編集方法の詳細は、第4章「パラメータと値リストの追加」を参照してください。

2.3.2 非標準SQLデータ・セットの作成

基本SQLコマンドを使用したデータ・セットの作成に加えて、次のようにより複雑なコマンドを使用してデータ・セットを作成できます。

プロシージャ・コール

この問合せタイプは、データベース・プロシージャをコールする場合に使用します。たとえば、PL/SQL for Oracleの場合、文がBEGINで始まります。このSQLデータ型を使用すると、メタデータはデータ・モデル構造のタブに表示されないため、データ構造またはデータ・フィールドを変更できません。プロシージャ・コールを使用してSQLを作成するには、コードをテキスト・ボックスに直接入力するか、別のSQLエディタからコピーして貼り付けます。クエリー・ビルダーは、このようなタイプの問合せの変更または構築に使用できません。

図2-4 「プロシージャ・コール」SQLタイプ

設計と出力ペイン

非標準SQL

この問合せタイプは、次のものを組み込むことができるSQL文を発行する場合に使用します。

  • ネストされた結果セットを返すCursor文

    次に例を示します。

      Ex:SELECT TO_CHAR(sysdate,'MM-DD-YYYY') CURRENT_DATE ,
      CURSOR
       (SELECT d.order_id department_id,
               d.order_mode department_name ,
               CURSOR
               (SELECT e.cust_first_name first_name,
                 e.cust_last_name last_name,
                 e.customer_id employee_id,
                 e.date_of_birth hire_date
               FROM customers e
               WHERE e.customer_id IN (101,102)
               ) emp_cur
        FROM orders d
        WHERE d.customer_id IN (101,102)
      ) DEPT_CUR FROM dual
    
  • REFカーソルを返す関数

    次に例を示します。

    create or replace PACKAGE REF_CURSOR_TEST AS
      TYPE refcursor IS REF CURSOR;
      pCountry  VARCHAR2(10);
      pState   VARCHAR2(20);
      FUNCTION GET( pCountry IN VARCHAR2, pState   IN VARCHAR2) RETURN  REF_CURSOR_TEST.refcursor;
      END;
    
    
      create or replace PACKAGE BODY REF_CURSOR_TEST AS
      FUNCTION GET(
       pCountry  IN VARCHAR2,
       pState    IN VARCHAR2)
      RETURN REF_CURSOR_TEST.refcursor
      IS
      l_cursor REF_CURSOR_TEST.refcursor;
      BEGIN
         IF ( pCountry = 'US' ) THEN
           OPEN l_cursor FOR 
           SELECT TO_CHAR(sysdate,'MM-DD-YYYY') CURRENT_DATE ,
               d.order_id department_id,
               d.order_mode department_name
           FROM orders d
           WHERE d.customer_id IN (101,102);
         ELSE
           OPEN l_cursor FOR 
           SELECT * FROM EMPLOYEES;    
         END IF;   
         RETURN l_cursor;
       END GET;
      END REF_CURSOR_TEST;
    
    

    BI PublisherでREFカーソルを使用するには、次のようにします。

    create SQL dataset with query as  SELECT REF_CURSOR_TEST.GET(:PCNTRY,:PSTATE) AS CURDATA FROM DUAL
    
  • 匿名ブロック/ストアド・プロシージャ

    BI Publisherでは、PL/SQL匿名ブロックの実行がサポートされています。DMLまたはDDLのコマンドを作成して一時表を移入し、PL/SQLブロックで計算を実行して結果セットを戻すことができます。BI Publisherでは、コール可能文を使用して匿名ブロックを実行します。

    次の要件に注意してください。

    • PL/SQLブロックは、REFカーソル型の結果セットを返す必要があります。

    • 名前が"xdo_cursor"のout変数を宣言する必要があります。宣言しないと、最初のバインド変数がout変数タイプとして扱われ、REFカーソルとバインドします。

    • 名前が"xdo_cursor"のデータ・モデル・パラメータを宣言します。この名前は、プロシージャ/匿名ブロックのout変数タイプ用に予約されています。

    例:

    DECLARE
           type refcursor is REF CURSOR;
           xdo_cursor refcursor;
           empno number;
        BEGIN
          INSERT into procTest values (:P1); 
          UPDATE EMPLOYEES SET COMMISSION_PCT = .28
           WHERE EMPLOYEE_ID = :P2;
          OPEN :xdo_cursor FOR 
           SELECT * 
           FROM procTest d, EMPLOYEES E
           WHERE E.EMPLOYEE_ID = :P2;
           COMMIT;
        END;
    
  • if-else式を使用すると、条件付き問合せを実行できます。単一のデータ・セットで複数のSQL問合せを定義できますが、式の値に応じて実行時に実行される問合せは1つのみです。式では、検証してブール値を返し、値がtrueの場合、そのセクションのSQL問合せが実行されます。

    次の制限に注意してください。

    • 式の評価では、構文: $if{$elseif{$else{がサポートされています

    • 式はtrueまたはfalseを返す必要があります。

    • 次の演算子のみサポートされています。

      ==、<=、>=、< >

     Example:
       create sql dataset with following query
       $if{ (:P_MODE == PRODUCT) }$
                    SELECT PRODUCT_ID
                    ,PRODUCT_NAME
                    ,CATEGORY_ID
                    ,SUPPLIER_ID
                    ,PRODUCT_STATUS
                    ,LIST_PRICE
                    FROM PRODUCT_INFORMATION 
                    WHERE ROWNUM < 5
       $elsif{(:P_MODE == ORDER )}$
                    SELECT ORDER_ID
                      ,ORDER_DATE
                      ,ORDER_MODE
                      ,CUSTOMER_ID
                      ,ORDER_TOTAL
                      ,SALES_REP_ID
                    FROM ORDERS
                    WHERE ROWNUM < 5
       $else{ 
                   SELECT PRODUCT_ID
                   , WAREHOUSE_ID
                   ,QUANTITY_ON_HAND
                   FROM INVENTORIES
                   WHERE ROWNUM < 5
                   }$
       $endif$
    

非標準SQL文を使用してデータ・セットを作成すると、メタデータはデータ・モデル構造のタブに表示されないため、データ構造またはデータ・フィールドを変更できません。クエリー・ビルダーは、このようなタイプの問合せの変更または構築に使用できません。

図2-5に、非標準SQL問合せの例を示します。

図2-5 非標準SQL問合せ

設計と出力ペイン

2.3.3 SQLクエリー・ビルダーの使用

コーディングせずにSQL問合せを作成するには、クエリー・ビルダーを使用します。クエリー・ビルダーを使用すると、SQLに関する最小限の知識で、データベース・オブジェクトの検索とフィルタ処理、オブジェクトと列の選択、オブジェクト間の関連の作成、および書式設定された問合せ結果の表示を行うことができます。

この項では、クエリー・ビルダーの使用方法について説明します。この項の内容は次のとおりです。

2.3.3.1 クエリー・ビルダーの概要

「クエリー・ビルダー」ページは、次の2つのセクションに分割されています。

  • 「オブジェクト選択」ペインには、問合せの作成に使用できるオブジェクトのリストが表示されます。表示されるのは、現在のスキーマのオブジェクトのみです。

  • 設計と出力ペインは、次の4つのタブで構成されています。

    • モデル - 「オブジェクト選択」ペインから選択したオブジェクトが表示されます。

    • 条件 - 選択した列に条件を適用できます。

    • SQL - 問合せが表示されます。

    • 結果 - 問合せの結果が表示されます。

    図2-6 設計と出力ペイン

    設計と出力ペイン

2.3.3.2 クエリー・ビルダーのプロセスの理解

問合せを作成するには:

  1. 「オブジェクト選択」ペインからオブジェクトを選択します。

  2. オブジェクトを「設計」ペインに追加し、列を選択します。

  3. (省略可能)オブジェクト間の関係を確立します。

  4. すべての重複列に一意の別名を追加します。

  5. (省略可能)問合せ条件を作成します。

  6. 問合せを実行して結果を表示します。

2.3.3.3 「オブジェクト選択」ペインの使用

「オブジェクト選択」ペインでは、スキーマを選択したり、オブジェクトの検索およびフィルタ処理ができます。

「オブジェクト選択」ペインを非表示にするには、このペインと「設計」ペインの間にあるコントロール・バーを選択します。このバーを再度選択すると、ペインが表示されます。

2.3.3.4 スキーマの選択

「スキーマ」リストには、データソースで使用可能なすべてのスキーマが表示されます。ただし、リスト内にアクセスできないスキーマがある場合があります。

2.3.3.5 オブジェクトの検索とフィルタの適用

「検索」フィールドを使用して、検索文字列を入力します。データソースに100を超える表がある場合は、この「検索」機能を使用して、目的のオブジェクトを検索および選択する必要があります。

2.3.3.6 オブジェクトの選択

「オブジェクト選択」ペインには、選択したスキーマの表、ビューおよびマテリアライズド・ビューがリストされます(Oracleデータベースの場合、シノニムもリストされます)。リストからオブジェクトを選択すると、そのオブジェクトが「設計」ペインに表示されます。「設計」ペインを使用して、選択したオブジェクトを問合せで使用する方法を特定します。

2.3.3.7 サポートされている列型

すべてのタイプの列がオブジェクトとして「設計」ペインに表示されます。列に関する次の制限に注意してください。

  • 各問合せで選択できる列の数は60以下です。

  • 選択できるのは次の列タイプのみです。

    • VARCHAR2、CHAR

    • NUMBER

    • DATE、TIMESTAMP


      注意:

      データ型TIMESTAMP WITH LOCAL TIMEZONEは、サポートされていません。


    • バイナリ・ラージ・オブジェクト(BLOB)


      注意:

      BLOBはイメージです。クエリー・ビルダーで問合せを実行すると、BLOBは「結果」ペインに表示されませんが、問合せはデータ・モデル・エディタに保存されるときに正しく作成されます。


    • キャラクタ・ラージ・オブジェクト(CLOB)

      データ・モデル内でCLOBデータを使用する方法の詳細は、第2.15項「キャラクタ・ラージ・オブジェクト(CLOB)として格納されたデータのデータ・モデル内での使用方法」を参照してください。

2.3.3.8 「設計」ペインへのオブジェクトの追加

「設計」ペインにオブジェクトを追加するには:

  1. オブジェクトを選択します。

    選択したオブジェクトが「設計」ペインに表示されます。データ型を表すアイコンが列名の横に表示されます。

  2. 問合せに含める各列のチェック・ボックスを選択します。

    列を選択すると、その列が「条件」タブに表示されます。この「条件」タブの「表示」チェック・ボックスは、問合せ結果に列を含めるかどうかを制御することに注意してください。デフォルトでは、このチェック・ボックスは選択されています。

    最初の20列を選択するには、オブジェクトの左上隅にある小さいアイコンをクリックし、すべてチェックを選択します。

  3. 問合せを実行して結果を表示するには、「結果」を選択します。


    ヒント:

    問合せの実行には、[CTRL]キーを押しながら[ENTER]キーを押すことでもできます。


2.3.3.9 「設計」ペインと「結果」ペインのサイズ変更

オブジェクトを選択するときは、「設計」ペインと「結果」ペインの間にある灰色の水平線を選択してドラッグすると、ペインのサイズを変更できます。

2.3.3.10 「設計」ペインでのオブジェクトの削除または非表示

オブジェクトを削除するには:

  1. オブジェクトの右上隅にある「削除」をクリックします。

オブジェクト内の列を一時的に非表示にするには:

  1. 「列の表示/非表示」をクリックします。

2.3.3.11 問合せ条件の指定

条件を使用すると、作業対象のデータをフィルタ処理して識別できます。オブジェクト内の列を選択するときは、「条件」タブで条件を指定できます。これらの属性を使用して、列別名の変更、列条件の適用、列のソート、または関数の適用を行うことができます。図2-7は、「条件」タブを示しています。

図2-7 「条件」タブ

「条件」タブ

表2-1に、「条件」タブで使用できる属性の説明を示します。

表2-1 「条件」タブで使用できる属性

条件属性 説明

上矢印および下矢印

問合せ結果内の列の表示順序を制御します。

列名を表示します。

別名

列別名を指定します(オプション)。別名とは列名の別称です。別名は、列名をわかりやすくする場合、列名を短くする場合、またはあいまいな参照を防ぐ場合に使用します。別名にはマルチバイト・キャラクタはサポートされないので注意してください。

オブジェクト

オブジェクト名が表示されます。

条件

条件によって、問合せのWHERE句が変更されます。列条件を指定するときは、適切な演算子およびオペランドを含める必要があります。標準のSQL条件はすべてサポートされています。次に例を示します。

>=10

='VA'

IN (SELECT dept_no FROM dept)

BETWEEN SYSDATE AND SYSDATE + 15

ソート・タイプ

ASC(昇順)またはDESC(降順)を選択します。

ソート順序

数値(1、2、3など)を入力して、選択した列の表示順序を指定します。

表示

問合せ結果に列を含める場合は、このチェック・ボックスを選択します。フィルタ処理のためにのみ列を問合せに追加する場合は、「表示」を選択する必要はありません。たとえば、次の問合せを作成する場合について説明します。

SELECT ename FROM emp WHERE deptno = 10

この問合せをクエリー・ビルダーで作成する手順は、次のとおりです。

  1. 「オブジェクト」リストからEMPを選択します。

  2. 「設計」ペインでenameとdeptnoを選択します。

  3. deptno列について「条件」に=10と入力し、「表示」チェック・ボックスを選択解除します。

関数

使用可能な引数関数は次のとおりです。

  • 数値列 - COUNT、COUNT DISTINCT、AVG、MAXIMUM、MINIMUM、SUM

  • VARCHAR2列、CHAR列 - COUNT、COUNT DISTINCT、INITCAP、LENGTH、LOWER、LTRIM、RTRIM、TRIM、UPPER

  • DATE列、TIMESTAMP列: COUNT、COUNT DISTINCT

グループ基準

集合関数を使用するときにグループ化の対象となる列を指定します。対象は出力に含まれる列のみです。

削除

列の選択を解除して、問合せから列を除外します。


列を選択して条件を定義すると、クエリー・ビルダーによってSQLが記述されます。

基になるSQLを表示するには:

  1. 「SQL」タブを選択します。

2.3.3.12 オブジェクト間の関係の作成

オブジェクト間の関連は、結合を作成することによって作成できます。結合によって、複数の表、ビューまたはマテリアライズド・ビューの間の関連が識別されます。

2.3.3.12.1 結合条件について

結合問合せを記述する際は、2つのオブジェクト間の関連を示す条件を指定します。この条件は結合条件と呼ばれます。結合条件によって、1つのオブジェクトの行を別のオブジェクトの行とどのように組み合せるかが決定されます。

クエリー・ビルダーでは、内部結合、外部結合、左結合および右結合がサポートされています。内部結合(単純結合とも呼ばれます)は、結合条件を満たす行を戻します。外部結合は、単純結合の結果を拡張します。外部結合は、結合条件を満たすすべての行を戻し、さらに、一方の表に結合条件を満たす行がない場合は、結合条件を満たす一部またはすべての行をもう一方の表から戻します。

2.3.3.12.2 手動によるオブジェクトの結合

「設計」ペインの「結合」列を選択して、結合を手動で作成します。

オブジェクトを手動で結合するには:

  1. 「オブジェクト選択」ペインから、結合するオブジェクトを選択します。

  2. 結合する列を識別します。

    列名に隣接する「結合」列を選択して、結合を作成します。「結合」列はデータ型の右側に表示されます。カーソルを適切な位置に置くと、次のヘルプ・ヒントが表示されます。

    結合対象の列を選択するには、ここをクリックしてください

  3. 最初のオブジェクトに対して、適切な「結合」列を選択します。

    選択すると、「結合」列が選択表示になります。「結合」列の選択を解除するには、「結合」列を再度選択するか、[Esc]を押します。

  4. 2番目のオブジェクトに対して、適切な「結合」列を選択します。

    結合すると、2つの列が線で結ばれます。例を図2-8に示します。

    図2-8 結合された列

    結合された列
  5. 問合せに含める列を選択します。結合線にカーソルを置くと、結合した結果のSQL文を表示できます。

  6. 「結果」をクリックして問合せを実行します。

2.3.3.13 問合せの保存

問合せの作成後には、「保存」をクリックしてデータ・モデル・エディタに戻ります。この問合せは、「SQL問合せ」ボックスに表示されます。「OK」をクリックするとデータ・セットが保存されます。

図2-9 「SQL問合せ」ボックスに表示された問合せ

「SQL問合せ」ボックスに挿入された問合せ

2.3.3.14 保存された問合せの編集

クエリー・ビルダーからデータ・モデル・エディタに問合せを保存しておくと、その問合せの編集にクエリー・ビルダーを使用することもできます。

クエリー・ビルダーを使用して問合せを編集するには:

  1. SQLデータ・セットを選択します。

  2. ツールバーの「選択したデータ・セットの編集」をクリックして「データ・セットの編集」ダイアログを開きます。

  3. 「クエリー・ビルダー」をクリックして、クエリー・ビルダーに問合せをロードします。


    注意:

    問合せが変更されている場合や、問合せの作成にクエリー・ビルダーを使用していない場合には、その問合せを編集するためにクエリー・ビルダーを起動するとエラーが示されることがあります。クエリー・ビルダーで問合せを解析できないときには、テキスト・ボックス内で文を直接編集してください。


  4. 問合せを編集して、「保存」をクリックします。

2.3.4 問合せへのバインド変数の追加

基本的な問合せはこの時点で用意できていますが、レポートでは、ユーザーがこの問合せにパラメータを渡して結果を限定できるようにする必要があります。たとえば、従業員のリストで、ユーザーが特定の部門を選択できるようにする必要があります。

変数を追加するには、次のどちらかの方法を使用します。

  • クエリー・ビルダーの「条件」タブを使用してバインド変数を追加します。

    クエリー・ビルダーの「条件」タブでバインド変数を追加するには:

    1. 次の「条件」を列に追加します。

      in (:P_DEPTNAME)
      

      このP_DEPTNAMEは、そのパラメータに選択した名前になります。図2-10にこれを示します。

    図2-10 クエリー・ビルダーの「条件」タブを使用したバインド変数の追加

    バインド変数の追加
  • SQL問合せを、テキスト・ボックス内で直接更新します。


    重要:

    問合せを手動で編集すると、その問合せをクエリー・ビルダーで解析することはできなくなります。それ以降の編集も、手動で実行する必要があります。


    テキスト・ボックス内でSQL問合せを直接更新するには:

    1. 問合せ内のWHERE句の後ろに、次の行を追加します。

      and "COLUMN_NAME" in (:PARAMETER_NAME)
      

      例:

      and "DEPARTMENT_NAME" in (:P_DEPTNAME)
      

      このP_DEPTNAMEは、そのパラメータに選択した名前になります。図2-11にこれを示します。

      図2-11 生成されたSQL問合せの編集

      生成されたSQL問合せの編集
    2. 「保存」をクリックすると、バインド変数構文を使用して入力したパラメータを作成するかどうかを尋ねる画面が表示されます(図2-12を参照)。

      図2-12 「パラメータの追加」ダイアログ

      バインド変数作成のダイアログ
    3. パラメータを選択して「OK」をクリックすると、パラメータ・エントリが自動的に作成されます。パラメータのプロパティを定義する方法の詳細は、第4章「パラメータと値リストの追加」を参照してください。

2.3.5 SQL問合せへの字句参照の追加

字句参照を使用して、SELECT、FROM、WHERE、GROUP BY、ORDER BYまたはHAVINGの後にくる句を置換できます。実行時にパラメータで複数の値を置換する場合は字句参照を使用します。字句参照がサポートされるのは、Oracleアプリケーションに対する問合せのみです。

SQL問合せの中に字句参照を作成するには、次の構文を使用します。

&parametername

注意:

字句参照を使用すると、フレックスフィールドを問合せに組み込むこともできます。フレックスフィールドの使用方法の詳細は、第6章「フレックスフィールドの追加」を参照してください。


字句パラメータを定義するには:

  1. 問合せを作成する前に、問合せの字句参照ごとに、PL/SQLデフォルト・パッケージでパラメータを定義します。データ・エンジンでは、これらの値を使用して字句パラメータを置換します。

  2. データ・モデル・エディタの「プロパティ」ページで、「Oracle DBデフォルト・パッケージ」を指定します。

  3. データ・モデル・エディタで、「データの前」イベント・トリガーを作成し、このPL/SQLパッケージをコールするように設定します。手順の詳細は、第5.2項「データの前およびデータの後トリガーの追加」を参照してください。

  4. 字句参照が含まれるSQL問合せを作成します。

  5. SQL問合せを閉じるために「OK」をクリックすると、パラメータを入力するための画面が表示されます。

たとえば、パッケージをemployeeという名前で作成します。employeeパッケージの中で、where_clauseというパラメータを次のように定義します。

Package employee
AS
 where_clause varchar2(1000);
  .....
 
Package body employee
 AS
 .....
where_clause := 'where DEPARTMENT_ID=10';
.....

SQL問合せの中で字句パラメータを参照します。このパラメータが、パッケージ内で定義されたコードで置き換えられます。次に例を示します。

select     "EMPLOYEES"."EMPLOYEE_ID" as "EMPLOYEE_ID",
         "EMPLOYEES"."FIRST_NAME" as "FIRST_NAME",
         "EMPLOYEES"."LAST_NAME" as "LAST_NAME",
         "EMPLOYEES"."SALARY" as "SALARY",
 from   "OE"."EMPLOYEES" "EMPLOYEES"
 &where_clause

SQLデータ・セットの作成ダイアログ・ボックスの「OK」をクリックすると、字句参照ダイアログ・ボックスが表示されます。これは、SQL問合せ内に入力した字句参照の値を入力するためのものです(図2-13を参照)。字句参照の値を、PL/SQLパッケージ内で定義されているとおりに入力します。

図2-13 字句参照ダイアログ

周囲のテキストは図2-13に関する説明です。

実行時に、パッケージ内で定義されたwhere_clauseの内容で&where_clauseが置き換えられます。

2.3.6 Oracle BIサーバーに対するSQL問合せの定義

クエリー・ビルダーをOracle BIサーバーに対して起動すると、クエリー・ビルダーには、カタログからのサブジェクト・エリアが表示されます。このサブジェクト・エリアをクエリー・ビルダーの作業領域にドラッグすると、列が表示されます。データ・モデルに入れる列を選択します。

データ・セットをOracle BIサーバーに対して作成するときは、次の点に注意してください。

  • SQLデータ・エディタまたはクエリー・ビルダーを使用して、SQL問合せをOracle BIサーバーに対して作成するときは、論理SQLが生成されます。他のデータベース・ソースの場合とは異なり、物理SQLは生成されません。

  • 階層列はサポートされません。最も上のレベルが常に返されます。

  • サブジェクト・エリアの中では、表間の結合条件がすでに作成されています。したがって、クエリー・ビルダーで結合を作成する必要はありません。クエリー・ビルダーによって主キーが公開されることはありません。

    データ・モデル・エディタの「リンクの作成」機能を使用してデータ・セットどうしをリンクできます。第3.5項「要素レベルのリンクの作成」を参照してください。BIサーバーから作成されたデータ・セットについては、要素レベル・リンクは1つのデータ・モデル当たり2つまでという制限があります。

  • クエリー・ビルダーの「条件」タブに表示される機能のうち、「ソート順序」「グループ基準」は、Oracle BIサーバーに対する問合せの場合はサポートされません。「ソート順序」に入力した場合や、「グループ基準」チェック・ボックスを選択した場合も、クエリー・ビルダーによってSQLが作成されてBI Publisherの「SQL問合せ」テキスト・ボックスに出力されますが、「データ・セット」ダイアログを閉じようとすると、問合せは検証不合格となります。

    SQL問合せで取り出したデータをグループ化するには、データ・モデル・エディタの「グループ基準」機能をかわりに使用してください。第3.7項「サブグループの作成」を参照してください。

  • パラメータをOracle BIサーバーに渡すとともに、「全選択可能」で「NULL値が渡されました」を選択した場合は、問合せの中で確実にnull値の処理を行う必要があります。

Oracle BIサーバーに対するSQL問合せを作成するには:

  1. データ・モデル・エディタで、「新規データ・セット」をクリックし、「SQL問合せ」をクリックします。

  2. データ・セットの名前を入力します。

  3. 「データソース」ドロップダウン・リストで、Oracle BIサーバー接続を選択します(通常は「Oracle BI EE」と表示されます)。

  4. 「クエリー・ビルダー」をクリックして「クエリー・ビルダー」ページを開きます。クエリー・ビルダー・ユーティリティの詳細は、第2.3.3項「SQLクエリー・ビルダーの使用」を参照してください。

    SQL構文を手動で「SQL問合せ」テキスト・ボックスに入力することもできますが、Oracle BIサーバーで使用される論理SQL構文を使用する必要があります。

  5. 「カタログ」ドロップダウン・リストで、サブジェクト・エリアを選択します(図2-14を参照)。このリストに表示されるのは、Oracle BIサーバー内で定義されているサブジェクト・エリアです。

    図2-14 クエリー・ビルダーでのサブジェクト・エリアの選択

    バインド変数作成のダイアログ
  6. 問合せの表と列を選択します。

  7. 「保存」をクリックします。

  8. 「OK」をクリックしてデータ・モデル・エディタに戻ります。生成されるSQLは、スター・スキーマに従う論理SQLです。物理SQLではありません。

  9. 変更内容をデータ・モデルに保存します。

2.4 OLAPデータソースに対するMDX問合せを使用したデータ・セットの作成

BI Publisherでは、OLAPデータソースに対するマルチディメンション式(MDX)問合せがサポートされます。MDXを使用すると、マルチディメンション・オブジェクト(たとえばEssbaseキューブ)に対して問合せを実行して、キューブのデータが格納されたマルチディメンション・セル・セットを返すことができます。MDX問合せを作成するには、手動でMDX問合せを入力するか、MDXクエリー・ビルダーを使用して問合せを作成します。

2.4.1 MDX問合せを使用したデータ・セットの作成

MDX問合せを使用してデータ・セットを作成するには:

  1. ツールバーの「新規データ・セット」をクリックし、「MDX問合せ」を選択します。「新規データ・セット - MDX問合せ」ダイアログが開きます(図2-15を参照)。

    図2-15 「新規データ・セット - MDX問合せ」ダイアログ

    MDX問合せの例
  2. データ・セットの名前を入力します。

  3. このデータ・セットのデータソースを選択します。OLAP接続として定義されたデータソースのみがリストに表示されます。

    プライベートOLAPデータソース接続を作成した場合は、その接続も「データソース」ドロップダウン・リストに表示されます。プライベート・データソース接続を作成する方法の詳細は、第1.8項「プライベート・データソースの管理」を参照してください。

  4. MDX問合せを入力するか、「クエリー・ビルダー」をクリックします。MDXクエリー・ビルダーの使用方法の詳細は、第2.5項「MDXクエリー・ビルダーの使用」を参照してください。

  5. OK」をクリックして保存します。この問合せは、データ・モデル・エディタによって検証されます。


注意:

OLAPデータソースでは、どのメタデータ属性(列名や表名など)にもU+F900からU+FFFEまでのUnicode文字が使用されていないことを確認してください。このUnicodeの範囲には、半角の日本語カタカナと、全角のASCIIバリアントが含まれています。これに該当する文字を使用すると、BI Publisherレポート用のXMLデータを生成するときにエラーが発生します。


MDX問合せの記述方法の詳細は、『Oracle Essbaseデータベース管理者ガイド』のMDX問合せ記述方法に関する項を参照してください。

2.5 MDXクエリー・ビルダーの使用

MDXクエリー・ビルダーを使用すると、基本的なMDX問合せをコーディング不要で作成できます。MDXクエリー・ビルダーでは、ディメンションを列、行、ページおよび視点の各軸に追加することや、問合せの結果をプレビューできます。


注意:

MDXクエリー・ビルダーで実行できるのは、Essbaseデータソースに対するデータ・セットの作成のみです。その他すべてのOLAPデータソースについては、問合せを手動で作成する必要があります。


2.5.1 MDXクエリー・ビルダーのプロセスの理解

MDXクエリー・ビルダーを使用してMDX問合せを作成するには:

  1. ツールバーの「新規データ・セット」をクリックし、次に「MDX問合せ」を選択して「新規データ・セット - MDX問合せ」ダイアログを開きます。

  2. データ・セットの名前を入力します。

  3. データソースを選択します。

  4. MDXクエリー・ビルダーを起動します。

  5. 問合せのEssbaseキューブを選択します。

  6. ディメンションやメジャーを選択し、「列」、「行」、「スライサ/POV」、「ページ」の各軸にドラッグ・アンド・ドロップします。

  7. (省略可能)アクションを使用して問合せに変更を加えます。

  8. (省略可能)フィルタを適用します。

  9. 問合せのオプションを設定して問合せを保存します。

2.5.2 「キューブの選択」ダイアログの使用

「キューブの選択」ダイアログでは、MDX問合せの作成に使用するEssbaseキューブを選択します。

選択済のMDXデータソース接続によって、どのEssbaseキューブが選択可能になるかが決まります。

2.5.3 ディメンションおよびメジャーの選択

MDX問合せを作成するには、「列」、「行」、「スライサ/POV」、「ページ」の各軸のディメンションを選択します。

Accountディメンションのメンバーは、メンバー名ごとに個別に一覧表示されます。その他すべてのディメンション・メンバーは、世代名によって表現されます(図2-16を参照)。

ディメンションの世代や個々のメジャーを、「Account」ディメンションから「列」、「行」、「スライサ/POV」、「ページ」の各軸にドラッグできます。

図2-16 MDXクエリー・ビルダーに表示されるディメンション

MDX問合せの例

問合せを作成するには、ディメンションのメンバーまたはメジャーを「ディメンション」パネルから次の軸領域のいずれかにドラッグします。

  • : 問合せのAxis (0)

  • : 問合せのAxis (1)

  • スライサ/POV: スライサ軸を利用すると、問合せの対象をEssbaseキューブの特定スライスにのみ限定できます。これは、問合せのWHERE句(省略可能)を表します。

  • : 問合せのAxis (2)

「列」軸と「行」軸ではディメンションのメンバーをネストできますが、「スライサ/POV」軸では1つのディメンションのみを追加できます。

2.5.3.1 「スライサ/POV」軸へのディメンション・メンバーの追加

ディメンションを「スライサ/POV」軸に追加するときは、「メンバーの選択」ダイアログが開きます。この軸に対して選択できるディメンション・メンバーは1つのみです。ディメンションを「メンバーの選択」ダイアログで選択して「OK」をクリックします。

メジャーを「スライサ/POV」軸に追加する場合は、「メンバーの選択」ダイアログは表示されません。

2.5.4 MDX問合せのアクションの実行

MDXクエリー・ビルダーのツールバーには、MDX問合せに変更を加えるための、次のボタンがあります。

  • 「行と列の入替え」をクリックすると、行と列の間でディメンションが入れ替わります。

  • 「アクション」をクリックすると、次のメニュー項目が表示されて選択できるようになります。

    • キューブの選択: 問合せのための別のEssbaseキューブを選択します。

    • 別名表の設定: ディメンション表示名に使用する別名表を選択します。別名は表示にのみ使用され、問合せの中では使用されません。

    • 自動リフレッシュ: 「列」、「行」、「スライサ/POV」、「ページ」の各軸にディメンション・メンバーが配置されたときに結果を表示し、MDX問合せ構文を自動的にリフレッシュします。

    • 結果のクリア: 結果をクリアし、すべての軸でのメンバー選択および問合せに追加されたフィルタを解除します。

    • 空白列の表示: データが格納されていない列を表示します。

    • 空白行の表示: データが格納されていない行を表示します。

    • 問合せの表示: ディメンションを「列」、「行」、「スライサ/POV」、「ページ」の各軸に配置した結果として作成される、MDX問合せ構文を表示します。

2.5.5 MDX問合せのフィルタの適用

MDXクエリー・ビルダーでは、「列」、「行」、「ページ」の各軸のディメンションに対するフィルタを作成して、MDX問合せをさらに絞り込むことができます。

フィルタを作成するには、「列」、「行」または「ページ」軸のディメンションの右にある下向き矢印ボタンをクリックします。そのディメンションが「フィルタ」領域に表示されます。目的のディメンション・メンバーを選択してフィルタを作成します(図2-17を参照)。

図2-17 MDXクエリー・ビルダーのフィルタ

MDX問合せの例

1つの問合せに対して複数のフィルタを作成できますが、「列」、「行」、「ページ」の軸ごとに作成できるフィルタは1つのみです。

2.5.6 MDX問合せのオプションの選択とMDX問合せの保存

問合せの作成が完了したら、「保存」をクリックすると「オプション」ダイアログが表示されます(図2-18を参照)。

図2-18 「オプション」ダイアログ

MDX問合せの例

「オプション」ダイアログでは、「列」、「行」、「ページ」の各軸のディメンションごとに、問合せに組み込むディメンション・プロパティを選択します。デフォルトでは、プロパティは何も選択されません。

ディメンションのプロパティは次のとおりです。

  • メンバーの別名: Essbaseアウトラインに一覧表示される、ディメンション・メンバーの別名。

  • 祖先名: Essbaseアウトラインに一覧表示される、祖先ディメンション名。

  • レベル番号: Essbaseアウトラインに一覧表示される、ディメンション・レベル番号。

  • 生成番号: Essbaseアウトラインに一覧表示される、ディメンションの世代番号。

たとえば、「メンバーの別名」プロパティと「レベル番号」プロパティを選択した場合のMDX問合せは、次のようになります。

SELECT
NON EMPTY Hierarchize([Market].Generations(2).Members)
PROPERTIES MEMBER_ALIAS,LEVEL_NUMBER ON Axis(0),
NON EMPTY CROSSJOIN(Hierarchize([Product].Generations(3).Members),
{[Accounts].[Margin],[Accounts].[Sales],[Accounts].[Total_Expenses]})ON Axis(1),
NON EMPTY [Year].Generations(3).Members ON Axis(2) FROM Demo.Basic

Essbaseのディメンション・プロパティの詳細は、『Oracle Essbaseデータベース管理者ガイド』のプロパティの問合せに関する項を参照してください。

MDX問合せのオプションを選択したら、「OK」をクリックして「新規データ・セット - MDX問合せ」ダイアログに戻り、MDX問合せ出力を確認します(図2-19を参照)。

図2-19 MDX問合せの出力

MDX問合せの例

「OK」をクリックしてデータ・モデル・エディタに戻り、変更内容を保存します。


重要:

MDX問合せをBI Publisherに保存した後で変更を加える場合は、構文をMDXクエリー・ビルダーで変更するのではなく、手動で変更することをお薦めします。


2.6 Oracle BI Analysisを使用したデータ・セットの作成

Oracle Business Intelligenceとの統合を有効にしている場合は、Oracle Business Intelligenceプレゼンテーション・カタログにアクセスすると、データソースとして「Oracle BI Analysis」を選択できるようになります。分析は、ビジネス上の疑問に対する回答を得るための、組織のデータに対する問合せです。問合せには、Oracle BIサーバーに発行される、ベースとなるSQL文が含まれています。

分析を作成する方法の詳細は、『Oracle Fusion Middleware Oracle Business Intelligence Publisherユーザーズ・ガイド』を参照してください。


重要:

階層的な列は、BI Publisherのデータ・モデルではサポートされません。


Oracle BI分析を使用してデータ・セットを作成するには:

  1. ツールバーの「新規データ・セット」ボタンをクリックし、「Oracle BI Analysis」を選択します。「新規データ・セット - Oracle BI Analysis」ダイアログが開きます。

  2. このデータ・セットの名前を入力します。

  3. 参照アイコンをクリックして、Oracle BIプレゼンテーション・カタログに接続します(図2-20を参照)。

    図2-20 Oracle BIプレゼンテーション・カタログへの接続

    BIプレゼンテーション・カタログへの接続
  4. カタログ接続のダイアログが開いたら、フォルダに移動して、レポートのデータ・セットとして使用するOracle BI分析を選択します。

  5. 「タイムアウト」値を秒数単位で入力します(図2-21を参照)。この「タイムアウト」値に指定した時間を経過してもBI Publisherが分析データを取得できない場合、BI Publisherは分析データの取得の試行を停止します。

    図2-21 BI Analysisデータ・セットの作成

    BI Analysisデータ・セットの作成
  6. 「OK」をクリックします。

2.6.1 Oracle BI Analysisデータ・セットに関する注意点

パラメータと値リストは、BI分析から継承され、実行時に表示されます。

BI Analysisには、フィルタ変数用に定義されたデフォルト値が必要です。分析にデフォルト値のないプレゼンテーション変数が含まれていると、BI Publisherではデータソースとしてサポートされなくなります。

Oracle BI Analysisデータ・セットに基づいてデータを構造化する必要がある場合は、グループのブレーク、データのリンクおよびグループ・レベル関数はサポートされません。

サポート対象は次のとおりです。

  • グローバル・レベル関数

  • 要素がNULLの場合の値の設定

  • グループ・フィルタ

前述のサポート対象機能の詳細は、第3章「データの構造化」を参照してください。

2.7 ビュー・オブジェクトを使用したデータ・セットの作成

BI Publisherを使用すると、Oracle Application Development Frameworkで作成したカスタム・アプリケーションに接続して、そのアプリケーションのビュー・オブジェクトをレポートのデータソースとして使用できます。

前提条件: BI Publisherのデータ・モデルを、ビュー・オブジェクトを使用して作成するには、あらかじめビュー・オブジェクトをアプリケーション内に作成しておく必要があります。作成するには、『Oracle Fusion Middleware Oracle Business Intelligence Publisher開発者ガイド』の「ビュー・オブジェクトをデータソースとしてBI Publisherで使用可能にするには」の章のガイドラインを参照してください。

ビュー・オブジェクトを使用してデータ・セットを作成するには:

  1. 「新規データ・セット」ツールバー・ボタンをクリックして、「ビュー・オブジェクト」を選択します。「新規データ・セット - ビュー・オブジェクト」ダイアログが開きます。

  2. このデータ・セットの名前を入力します。

  3. リストから「データソース」を選択します。providers.xmlファイルで定義したデータソースが表示されます。

  4. アプリケーション・モジュールの完全修飾名を入力します(例: example.apps.pa.entity.applicationModule.AppModuleAM)。

  5. 「ビュー・オブジェクトのロード」をクリックします。

    BI Publisherは、アプリケーション・モジュールをコールして、ビュー・オブジェクトのリストをロードします。

  6. 「ビュー・オブジェクト」を選択します。

  7. 定義済のバインド変数が取得されます。パラメータを作成して、このバインド変数にマッピングします。詳細は、第4章「パラメータと値リストの追加」を参照してください。

  8. 「OK」をクリックしてデータ・セットを保存します。

2.7.1 ビュー・オブジェクト・データ・セットに関する注意点

ビュー・オブジェクト・データ・セットに基づいたデータを構造化する場合、グループのブレーク、データのリンクおよびグループ・レベル関数はサポートされません。

サポート対象は、要素がNULLの場合の値の設定です。

このサポート対象機能の詳細は、第3章「データの構造化」を参照してください。

2.8 Webサービスを使用したデータ・セットの作成

BI Publisherでは単純および複合的なWebサービス・データソースを使用して有効なXMLデータを返すデータ・セットをサポートしています。

Webサービスのメソッドのパラメータを含めるには、先にパラメータを定義して、そのメソッドをデータソースの設定時に選択できるようにすることをお薦めします。第4章「パラメータと値リストの追加」を参照してください。

複数のパラメータがサポートされています。メソッド名が正しいことと、パラメータの順序がメソッド内での順序と一致することを確認します。Webサービスで2つのパラメータを受け入れるメソッドをコールする場合、メソッド内の2つのパラメータに対して、レポート内で定義した2つのパラメータをマッピングする必要があります。サポートされているパラメータは、文字列や整数などの単純型のパラメータのみです。


重要:

文書またはリテラルのWebサービスのみがサポートされます。


パラメータを指定するには、「パラメータの追加」をクリックし、パラメータをドロップダウン・リストから選択します。


注意:

パラメータは、レポート定義の「パラメータ」セクションで設定する必要があります。詳細は、第4章「パラメータと値リストの追加」を参照してください。


11.1.1.7.10では、Webサービスからデータ・セットを作成するためのプロシージャが拡張されています。ご使用のリリースに適したプロシージャを参照してください。

2.8.1 リリース11.1.1.7.10におけるWebサービスを使用したデータ・セットの作成

リリース11.1.1.7.10では、次の方法でWebサービス・データソースを設定できます。

  • 「管理」ページ

    Webサービス・データソースへの接続を「管理」ページで設定し、複数のデータ・モデルで使用できます。詳細は、『Oracle Fusion Middleware Oracle Business Intelligence Publisher管理者ガイド』のWebサービスへの接続の設定に関する項を参照してください。

  • プライベート・データソースとして

    自分のみアクセス可能なプライベート接続を設定することもできます。プライベート・データソース接続の詳細は、第1.8項「プライベート・データソースの管理」を参照してください。

データ・モデルを作成する前に接続を設定する必要があります。

BI Publisherでは単純および複合的なWebサービス・データソースを使用して有効なXMLデータを返すデータ・セットをサポートしています。

2.8.1.1 単純なWebサービスを使用したデータ・セットの作成

Webサービスでコールできるメソッドとパラメータがわからない場合は、このURLをブラウザで開いて確認してください。

単純なWebサービスを使用してデータ・セットを作成するには:

  1. ツールバーの「新規データ・セット」ボタンをクリックし、「Webサービス」を選択します。「新規データ・セット - Webサービス」ダイアログが開きます(図2-22を参照)。

    図2-22 単純なWebサービス接続を使用したデータ・セットの作成

    単純なWebサービス・データ・セットの作成
  2. データ・セット名を入力します。

  3. データソースを選択します。

    「WSDL URL」、「Webサービス」および「メソッド」の各フィールドには、Webサービス・データソースから自動的に移入されます。

  4. Webサービスの使用可能なメソッドのリストからメソッドを選択します。

  5. 「OK」をクリックします。

  6. 次のようにして、Webサービス・データ・セットに使用できるようにパラメータを定義します。

    • 「データ・モデル」ペインで「パラメータ」を選択し、「新規パラメータの作成」をクリックして次の属性を入力します。

      • 名前 - このパラメータの内部的な識別子を入力します(たとえば「Symbol」)。

      • データ型 - 「文字列」を選択します。

      • デフォルト値 - 必要に応じて、パラメータのデフォルト値を入力します(例 - ORCL)。

      • パラメータ・タイプ - 「テキスト」を選択します。

      • 行配置 - 行配置の値を選択します。デフォルトは1です。

    • 「New_Parameter_1:タイプ: テキスト」リージョンで、次の属性を入力します。

      • 表示ラベル - このパラメータに対して表示するラベルを入力します(例: 「Stock Symbol」)。

      • テキスト・フィールド・サイズ - テキスト入力フィールドのサイズを文字数単位で入力します。

        図2-23 パラメータの作成

        パラメータの作成
    • (オプション) 次のパラメータ・オプションを選択します。

      • テキスト・フィールドにカンマ区切りの値を含む - このオプションを選択すると、ユーザーはこのパラメータに対してカンマ区切りの複数の値を入力できます。

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

  7. Webサービス・データ・セットに戻り、パラメータを次のとおりに追加します。

    • データ・セット名をクリックします。

    • ツールバーの「選択したデータ・セットの編集」をクリックして「データ・セットの編集」ダイアログを開きます。

    • 「データ・セットの編集」ダイアログで、「パラメータの追加」をクリックします。パラメータが表示されます(図2-24を参照)。

    • パラメータの名前を入力し、「OK」をクリックして「データ・セットの編集」ダイアログを閉じます。

    • 図2-24 Webサービス・データ・セットへのパラメータの追加

      Webサービス・データ・セットへのパラメータの追加
  8. 「保存」をクリックします。

2.8.1.2 複合的なWebサービスを使用したデータ・セットの作成

BI Publisherでは複合的なWebサービス・データソースを使用して有効なXMLデータを返すデータ・セットをサポートしています。複合的なWebサービス・タイプは、内部でsoapRequest/soapEnvelopeを使用して、接続先ホストにパラメータ値を渡します。

データ・セットで複合的なWebサービスをデータソースとして使用している場合、データ・モデル・エディタにはWSDL URL、使用可能なWebサービスおよび複合的なWebサービスに関連付けられた操作が表示されます。選択した操作のそれぞれについて、必要な入力パラメータの構造がデータ・モデル・エディタに表示されます。「オプション・パラメータの表示」を選択した場合、オプション・パラメータもすべて表示されます。

Webサービスで使用できるメソッドとパラメータがわからない場合は、このWSDL URLをブラウザで開いて確認します。

複合的なWebサービスをデータソースとして追加するには:

  1. データ・セットの情報を次のとおりに入力します。

    • データ・セット名を入力します。

    • データソースを選択します。「WSDL URL」および「Webサービス」の各フィールドには、複合的なWebサービス・データソースから自動的に移入されます。

    • 「メソッド」を選択します。

      選択可能なメソッドは、複合的なWebサービス・データソースに基づいて決まります。メソッドを選択すると、「パラメータ」が表示されます。オプション・パラメータを表示するには、「オプション・パラメータの表示」を選択します。

    • ResponseData XPath - レポート用のXMLデータの開始位置が、Webサービス・リクエストで生成されたレスポンスXMLの深い位置に埋め込まれている場合は、このフィールドを使用してBI Publisherレポートに使用するデータへのパスを指定します。

  2. 次のようにして、Webサービス・データ・セットに使用できるようにパラメータを定義します。

    • 「レポート」定義ペインで「パラメータ」を選択し、「新規」をクリックしてパラメータを作成します。

    • 次のパラメータ属性を選択します。

      • 名前 - パラメータの内部識別子を入力します。

      • データ型 - パラメータに適したデータ型を選択します。

      • デフォルト値 - 必要に応じて、パラメータのデフォルト値を入力します。

      • パラメータ・タイプ - 適切なパラメータ・タイプを選択します。

      • 表示ラベル - パラメータに表示するラベルを入力します。

      • テキスト・フィールド・サイズ - テキスト入力フィールドのサイズを文字数単位で入力します。

  3. Webサービス・データ・セットに戻り、パラメータを追加します。

    • Webサービス・データ・セットを選択してから、「選択したデータ・セットの編集」をクリックして「データ・セットの編集」ダイアログを開きます。

    • 図2-25に示すとおりにパラメータを選択します。

    • 図2-25 複合的なWebサービスのパラメータの入力

      複合的なWebサービスのパラメータの入力
  4. Webサービスをテストする場合は、第2.16項「データ・モデルのテストとサンプル・データの生成」を参照してください。

2.8.2 11.1.1.7.10より前のリリースにおけるWebサービスを使用したデータ・セットの作成

11.1.1.7.10より前のリリースの場合、データ・セットを定義すると、データ・セットごとにWebサービス・データソースへの接続が作成されます。11.1.1.7.10より前のリリースには、次の手順を使用します。

2.8.2.1 単純なWebサービスの追加

この例では、WebサービスをデータソースとしてBI Publisherに追加する方法を示します。このWebサービスは、株価情報を戻します。また、このWebサービスは株の銘柄記号を示す1つのパラメータを渡します。

WSDL URLは次のとおりです。

http://www.webservicex.net/stockquote.asmx?WSDL

Webサービスでコールできるメソッドとパラメータがわからない場合は、このURLをブラウザで開いて確認してください。このWebサービスには、GetQuoteというメソッドが含まれています。これは、1つのパラメータ(株の銘柄記号)を受け取ります。

Webサービスをデータソースとして追加するには:

  1. ツールバーの「新規データ・セット」ボタンをクリックし、「Webサービス」を選択します。「新規データ・セット - Webサービス」ダイアログが開きます(図2-26を参照)。

    図2-26 単純なWebサービス・データ・セットの作成

    単純なWebサービス・データ・セットの作成
  2. Webサービス名を入力します。

  3. Webサービスの情報を次のとおりに入力します。

    • 複合タイプ」に「False」を選択します。

    • 「WSDL URL」に、「http://www.webservicex.net/stockquote.asmx?WSDL」と入力します。

    • メソッドに「GetQuote」と入力します。

    • 必要に応じて、「タイムアウト」の時間を秒単位で入力します。BI PublisherサーバーでWebサービスとの接続を確立できない場合、指定したタイムアウト時間が経過すると接続の試行はタイムアウトになります。

  4. パラメータを定義し、そのパラメータをWebサービスのデータ・セットで使用可能にします。

    「データ・モデル」ペインで「パラメータ」を選択して、「新規パラメータの作成」ボタンをクリックします。次の項目を入力します。

    • 名前 - このパラメータの内部的な識別子を入力します(たとえば「Symbol」)。

    • データ型 - 「文字列」を選択します。

    • デフォルト値 - 必要に応じて、パラメータのデフォルト値を入力します(例 - ORCL)。

    • パラメータ・タイプ - 「テキスト」を選択します。

    • 行配置 - 行配置の値を選択します。デフォルトは1です。

  5. 「New_Parameter_1:タイプ: テキスト」リージョンで、次のとおりに入力します。

    • 表示ラベル - このパラメータに対して表示するラベルを入力します(例: 「Stock Symbol」)。

    • テキスト・フィールド・サイズ - テキスト入力フィールドのサイズを文字数単位で入力します。

      図2-27 パラメータの作成

      パラメータの作成
  6. 適用するオプションを選択します。

    • テキスト・フィールドにカンマ区切りの値を含む - このオプションを選択すると、ユーザーはこのパラメータに対してカンマ区切りの複数の値を入力できます。

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

  7. Webサービス・データ・セットに戻り、パラメータを次のとおりに追加します。

    • データ・セット名「Stock Quote」をクリックします。

    • ツールバーの「選択したデータ・セットの編集」をクリックして「データ・セットの編集」ダイアログを開きます。

    • 「データ・セットの編集」ダイアログで、「パラメータの追加」をクリックします。Quoteパラメータが表示されます(図2-28を参照)。

    • パラメータの名前を入力し、「OK」をクリックして「データ・セットの編集」ダイアログを閉じます。

    • 図2-28 Webサービス・データ・セットへのパラメータの追加

      Webサービス・データ・セットへのパラメータの追加
  8. 「保存」をクリックします。

  9. 「データ」タブを選択します。

  10. 「Stock Symbol」パラメータの有効な値を入力し、返す行数を選択し、「表示」をクリックします。図2-29に、この例から返されたデータを示します。

    図2-29 Stock Quoteの例から返されたデータ

    Stock Quoteの例から返されるデータ

2.8.2.2 複合的なWebサービスの追加

複合的なWebサービス・タイプは、内部でsoapRequest/soapEnvelopeを使用して、接続先ホストにパラメータ値を渡します。

複合的なWebサービスをデータソースとして使用するには、「複合タイプ」に「True」を選択してから、WSDL URLを入力します。WSDL URLのロードと分析が終了した後は、使用可能なWebサービスと操作がデータ・モデル・エディタに表示されます。選択した操作のそれぞれについて、必要な入力パラメータの構造がデータ・モデル・エディタに表示されます。「オプション・パラメータの表示」を選択すると、すべてのオプション・パラメータも確認できます。

Webサービスで使用できるメソッドとパラメータがわからない場合は、このWSDL URLをブラウザで開いて確認します。

複合的なWebサービスをデータソースとして追加するには:

  1. データ・セットの情報を次のとおりに入力します。

    • 「名前」にデータ・セットの名前を入力し、「タイプ」で「Webサービス」を選択します。

    • 複合タイプ」に「True」を選択します。

    • セキュリティ・ヘッダーを次のとおりに選択します。

      • 2002 - 次の2002ネームスペースによりWS-Securityユーザー名トークンを有効にします。

        http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd

      • 2004 - 次の2004ネームスペースによりWS-Securityユーザー名トークンを有効にします。

        http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText

    • 「ユーザー名」「パスワード」 - 必要に応じてWebサービスのユーザー名とパスワードを入力します。

    • 必要に応じて、「タイムアウト」の時間を秒単位で入力します。BI PublisherサーバーでWebサービスとの接続を確立できない場合、指定したタイムアウト時間が経過すると接続の試行はタイムアウトになります。

    • WSDL URLを入力します。WSDLを入力すると、そのWSDLから使用可能なWebサービスが「Webサービス」リストに移入されます。

    • Webサービスをリストから選択します。リストからWebサービスを選択すると、使用可能なメソッドが「メソッド」リストに移入されます。

    • 「メソッド」を選択します。メソッドを選択すると、「パラメータ」が表示されます。オプション・パラメータも表示するには、「オプション・パラメータの表示」を選択します。

    • ResponseData XPath - レポート用のXMLデータの開始位置が、Webサービス・リクエストで生成されたレスポンスXMLの深い位置に埋め込まれている場合は、このフィールドを使用してBI Publisherレポートに使用するデータへのパスを指定します。

  2. パラメータを定義し、そのパラメータをWebサービスのデータ・セットで使用可能にします。

    「レポート」定義ペインで「パラメータ」を選択し、「新規」をクリックしてパラメータを作成します。次の項目を入力します。

    • 名前 - パラメータの内部識別子を入力します。

    • データ型 - パラメータに適したデータ型を選択します。

    • デフォルト値 - 必要に応じて、パラメータのデフォルト値を入力します。

    • パラメータ・タイプ - 適切なパラメータ・タイプを選択します。

    • 表示ラベル - パラメータに表示するラベルを入力します。

    • テキスト・フィールド・サイズ - テキスト入力フィールドのサイズを文字数単位で入力します。

  3. Webサービス・データ・セットに戻り、パラメータを追加します。

    • Webサービス・データ・セットを選択してから、「選択したデータ・セットの編集」をクリックして「データ・セットの編集」ダイアログを開きます。

    • 図2-25に示すとおりにパラメータを選択します。

    • 図2-30 複合的なWebサービスのパラメータの入力

      複合的なWebサービスのパラメータの入力
  4. Webサービスをテストする場合は、第2.16項「データ・モデルのテストとサンプル・データの生成」を参照してください。

2.8.3 Webサービス・データ・セットについての追加情報

Webサービス・データ・セットから得られるメタデータは存在しないため、グループとリンクはサポートされません。

2.9 LDAP問合せを使用したデータ・セットの作成

BI Publisherでは、Lightweight Directory Access Protocol (LDAP)データソースに対する問合せをサポートしています。LDAPディレクトリに格納されているユーザー情報を問い合せてから、データ・モデル・エディタを使用すると、そのユーザー情報をその他のデータソースから取得したデータとリンクできます。

たとえば、データベース・アプリケーションに格納されている従業員の給与情報をリストするレポートを生成するときに、LDAPディレクトリに格納されている従業員の電子メール・アドレスもレポートに含める場合などです。それぞれを対象にした問合せを作成してから、それら2つをデータ・モデル・エディタでリンクすることで単一のレポートに情報を表示できます。図2-31に、LDAP問合せの例を示します。

図2-31 LDAP問合せの例

LDAP問合せの例

LDAP問合せを使用してデータ・セットを作成するには:

  1. ツールバーの「新規データ・セット」ボタンをクリックし、「LDAP問合せ」を選択します。「新規データ・セット - LDAP問合せ」ダイアログが開きます。

  2. このデータ・セットの名前を入力します。

  3. このデータ・セットの「データソース」を選択します。LDAP接続として定義されているデータソースのみがリストに表示されます。

  4. 「属性」入力ボックスには、LDAPデータソースからフェッチする値を保持する属性を入力します。

    次に例を示します。

    mail,cn,givenName
    
  5. 問合せにフィルタを適用するには、「フィルタ」入力ボックスに適切な構文を入力します。構文は次のとおりです。

    (Operator (Filter)through(Filter))
    

    次に例を示します。

    (objectclass=person)
    

    LDAP検索フィルタは、Internet Engineering Task Force (IETF)のRequest for Comments文書2254、『The String Representation of LDAP Search Filters』(RFC 2254)で定義されています。この文書は、IETFのWebサイト(http://www.ietf.org/rfc/rfc2254.txt)から入手できます。

  6. この問合せからのデータを他の問合せからのデータにリンクさせるか、出力の構造に変更を加えます。このステップの手順については、第3章「データの構造化」を参照してください。

2.10 XMLファイルを使用したデータ・セットの作成

XMLファイルをデータソースとして使用するには、次のいずれかを実行します。


重要:

BI Publisherのレイアウト・エディタとインタラクティブ・ビューアを使用するには、XMLファイル・ソースからのサンプル・データがデータ・モデルに保存されている必要があります。


2.10.1 サポートされるXMLファイルについて

BI Publisherのデータ・セット・タイプとしてのXMLファイルのサポートに関するガイドラインは、次のとおりです。

  • BI Publisherデータ・エンジンへの入力として使用されるXMLファイルは、UTF-8でエンコードされている必要があります。

  • XMLタグ名では、~、!、#、$、%、^、&、*、+、`、|、:、\"、\\、<、>、?、,、/を使用しないでください。データソース・ファイルにこれらの文字が含まれている場合は、データ・モデル・エディタの「構造」タブを使用して、受け入れられるタグ名に変更してください。

  • XMLファイルは有効でなければなりません。Oracleは、XMLファイルを検証するための多数のユーティリティと方法を用意しています。

  • XMLファイル・データ・セットから得られるメタデータは存在しないため、グループとリンクはサポートされません。

2.10.2 ファイル・ディレクトリ・データソースに格納されたXMLファイルの使用

ファイル・ディレクトリ・データソースにあるXMLファイルを使用してデータ・セットを作成するには:

  1. ツールバーの「新規データ・セット」をクリックし、「XMLファイル」を選択します。「新規データ・セット - XMLファイル」ダイアログが開きます(図2-32を参照)。

    図2-32 「新規データ・セット - XMLファイル」ダイアログ

    「データ・セットの作成 - ファイル」ダイアログ
  2. データ・セットの名前を入力します。

  3. 「共有」をクリックして、「データソース」リストを有効にします。これは、デフォルトで選択されているオプションです。

  4. XMLファイルが存在する「データソース」を選択します。このリストは、構成済のファイル・データソース接続から移入されます。

  5. 「ファイル名」の右の「参照」をクリックし、データソースに接続して、使用可能なディレクトリの一覧から選択します。ファイルを選択します。

  6. 「OK」をクリックします。

  7. (必須)サンプル・データをデータ・モデルに保存します。第2.16項「データ・モデルのテストとサンプル・データの生成」を参照してください。

2.10.3 ローカルに格納されたXMLファイルのアップロード

ローカルに格納されたXMLファイルを使用してデータ・セットを作成するには:

  1. ツールバーの「新規データ・セット」をクリックし、「XMLファイル」を選択します。「新規データ・セット - XMLファイル」ダイアログが開きます(図2-33を参照)。

    図2-33 「新規データ・セット - XMLファイル」ダイアログ

    「データ・セットの作成 - ファイル」ダイアログ
  2. このデータ・セットの名前を入力します。

  3. 「ローカル」を選択します。「アップロード」ボタンが有効になります。

  4. 「アップロード」をクリックし、ローカル・ディレクトリにあるXMLファイルを選択してアップロードします。このファイルがすでにデータ・モデルにアップロードされている場合は、「ファイル名」リストから選択できるようになっています。

  5. 「アップロード」をクリックします。

  6. 「OK」をクリックします。

  7. (必須)サンプル・データをデータ・モデルに保存します。第2.16項「データ・モデルのテストとサンプル・データの生成」を参照してください。

2.10.3.1 アップロードしたXMLファイルのリフレッシュと削除

ファイルをアップロードすると、そのファイルはデータ・モデルの「プロパティ」ペインにある「添付ファイル」リージョンに表示されます(図2-34を参照)。

図2-34 「プロパティ」ペインの「添付ファイル」リージョン

「添付ファイル」リージョン

「プロパティ」ペインの詳細は、第1.7項「データ・モデルのプロパティの設定」を参照してください。

データ・モデル内のローカル・ファイルをリフレッシュするには:

  1. コンポーネント・ペインの「データ・モデル」をクリックして「プロパティ」ページを表示します。

  2. このページの「添付」リージョンで、「データ・ファイル」リストからファイルを見つけます。

  3. 「リフレッシュ」をクリックします。

  4. 「アップロード」ダイアログで、最新バージョンのファイルを参照してアップロードします。このファイルには同じ名前を付ける必要があります。別の名前を付けると古いバージョンは置き換えられません。

  5. データ・モデルを保存します。

ローカル・ファイルを削除するには:

  1. コンポーネント・ペインの「データ・モデル」をクリックして「プロパティ」ページを表示します。

  2. このページの「添付」リージョンで、「データ・ファイル」リストからファイルを見つけます。

  3. 「削除」をクリックします。

  4. 「OK」をクリックして処理を確認します。

  5. データ・モデルを保存します。

2.11 Microsoft Excelファイルを使用したデータ・セットの作成

Microsoft Excelファイルをデータソースとして使用するには、次のいずれかの方法でファイルをBI Publisherに渡します。

2.11.1 サポートされるExcelファイルについて

BI Publisherのデータ・セット・タイプとしてサポートされるMicrosoft Excelファイルのガイドラインは、次のとおりです。

  • Microsoft Excelファイルは、Microsoft Excelを使用してExcel 97-2003のワークブック(*.xls)形式で保存されている必要があります。サード・パーティ製のアプリケーションやライブラリで作成されたファイルは、サポートされません。

  • ソースのExcelファイルの中のシートは、単一でも複数でもかまいません。

  • 各ワークシートに、1つ以上の表を入れることができます。1つの表とは、1つのシート内の連続した行と列に配置されたデータのブロックです。

    それぞれの表について、BI Publisherは、常に最初の行を表のヘッダー行と見なします。

  • この表内のデータ型は、数値、テキストまたは日付/時間にできます。

  • 単一のワークシート内に複数の表が存在する場合は、それぞれをBI Publisherで認識するために、名前で識別される必要があります。第2.11.2項「シートごとの複数の表にアクセスする際のガイドライン」を参照してください。

  • Excelファイル内の表のすべてに名前が付けられていない場合は、最初の表(最も左上に配置された表)のデータのみが認識され、そのデータのみがフェッチされます。

  • データ・セットの作成時、BI Publisherは、数値に対して常に小数点以下の末尾のゼロをすべて切り捨てます。最終的なレポートで末尾のゼロを保持するには、そのゼロが表示されるように、テンプレートで書式マスクを適用する必要があります。書式マスクの詳細は、『Oracle Fusion Middleware Oracle Business Intelligence Publisherレポート・デザイナーズ・ガイド』の数値、日付および通貨の書式設定に関する項を参照してください。

  • 単一値パラメータはサポートされますが、複数値パラメータはサポートされません。

2.11.2 シートごとの複数の表にアクセスする際のガイドライン

Excelワークシートにデータソースとして含める複数の表が格納されている場合は、Excelで、それぞれの表に名前を定義する必要があります。


重要:

定義する名前は、接頭辞BIP_で始まる必要があります(例: BIP_SALARIES)。


Excelで表の名前を定義するには:

  1. Excelで表を挿入します。

  2. 次の手順で、表に名前を定義します。

    Excel 2003を使用する場合: 表を選択します。「挿入」メニューで、「名前」「定義」の順にクリックします。接頭辞のBIP_を付けた名前を入力します。

    Excel 2007を使用する場合: 表を選択します。「数式」タブの「定義された名前」グループ内で、「名前の定義」をクリックして、「名前」フィールドに名前を入力します。入力した名前が「数式」バーに表示されます。


    ヒント:

    「定義された名前」とその使用方法の詳細は、次のURLにアクセスしてMicrosoft Excel 2007のドキュメント「数式で名前を定義し使用する」を参照してください。

    http://office.microsoft.com/ja-jp/excel-help/define-and-use-names-in-formulas-HA010147120.aspx


図2-35は、Microsoft Excel 2007の「名前の定義」コマンドを使用して、表にBIP_Salariesという名前を付ける方法を示しています。

図2-35 Microsoft Excelの「名前の定義」コマンドの使用方法

「名前の定義」コマンドの使用方法

2.11.3 ファイル・ディレクトリ・データソースに格納されたMicrosoft Excelファイルの使用

データ・セットにパラメータを含めるには、最初にパラメータを定義して、それらのパラメータをデータ・セットの定義時に選択できるようにしておく必要があります。第4章「パラメータと値リストの追加」を参照してください。


重要:

Excelデータ・セット・タイプでは、パラメータごとに1つの値がサポートされます。複数パラメータの選択はサポートされていません。


ファイル・ディレクトリ・データソースにあるMicrosoft Excelファイルを使用してデータ・セットを作成するには:

  1. ツールバーの「新規データ・セット」ボタンをクリックし、「Microsoft Excelファイル」を選択します。「新規データ・セット - Microsoft Excelファイル」ダイアログが開きます。

  2. このデータ・セットの名前を入力します。

  3. 「共有」をクリックして、「データソース」リストを有効にします。

  4. Microsoft Excelファイルが存在するデータソースを選択します。

  5. 「ファイル名」フィールドの右にある参照アイコンをクリックして、データソース・ディレクトリ内のMicrosoft Excelファイルを選択します。ファイルを選択します。

  6. Excelファイルに複数のシートや表が含まれている場合には、このデータ・セットに適した「シート名」および「表名」を選択します(図2-36を参照)。

    図2-36 シート名の選択

    シート名の選択
  7. このデータ・セットにパラメータを追加する場合は、「パラメータの追加」をクリックします。「名前」を入力して、「値」を選択します。「値」リストには、「パラメータ」セクションで定義したパラメータの「名前」が移入されます。単一値パラメータのみがサポートされます。第4章「パラメータと値リストの追加」を参照してください。

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

  9. この問合せからのデータを他の問合せからのデータにリンクさせるか、出力の構造に変更を加えます。問合せどうしをリンクさせる方法の詳細は、第3章「データの構造化」を参照してください。

2.11.4 ローカルに格納されたMicrosoft Excelファイルのアップロード

データ・セットにパラメータを含めるには、最初にパラメータを定義して、そのパラメータをデータ・セットの定義時に選択できるようにしてください。第4章「パラメータと値リストの追加」を参照してください。


重要:

Excelデータ・セット・タイプでは、パラメータごとに1つの値がサポートされます。複数パラメータの選択はサポートされていません。


ローカルに格納されたMicrosoft Excelファイルを使用してデータ・セットを作成するには:

  1. 「新規データ・セット」ツールバー・ボタンをクリックして、「Microsoft Excelファイル」を選択します。「データ・セットの作成 - Excel」ダイアログが開きます。

  2. このデータ・セットの名前を入力します。

  3. 「ローカル」を選択して、アップロード・ボタンを有効にします。

  4. 「アップロード」アイコンをクリックし、ローカル・ディレクトリのMicrosoft Excelファイルを参照して、アップロードします。このファイルがすでにデータ・モデルにアップロードされている場合は、「ファイル名」リストから選択できます。

  5. Excelファイルに複数のシートや表が含まれている場合には、このデータ・セットに適した「シート名」および「表名」を選択します(図2-37を参照)。

    図2-37 Excelスプレッドシートからのデータ・セットの作成

    データ・セットとしてのスプレッドシートの定義
  6. このデータ・セットにパラメータを追加する場合は、「パラメータの追加」をクリックします。「名前」を入力して、「値」を選択します。「値」リストには、「パラメータ」セクションで定義したパラメータの「名前」が移入されます。単一値パラメータのみがサポートされます。第4章「パラメータと値リストの追加」を参照してください。

  7. 「OK」をクリックします。

  8. この問合せからのデータを他の問合せからのデータにリンクさせるか、出力の構造に変更を加えます。問合せどうしをリンクさせる方法の詳細は、第3章「データの構造化」を参照してください。

2.11.4.1 アップロードしたExcelファイルのリフレッシュと削除

ファイルをアップロードすると、そのファイルはデータ・モデルの「プロパティ」ペインにある「添付ファイル」リージョンに表示されます(図2-38を参照)。

図2-38 「プロパティ」ペインの「添付ファイル」リージョン

「添付ファイル」リージョン

「プロパティ」ペインの詳細は、第1.7項「データ・モデルのプロパティの設定」を参照してください。

データ・モデル内のローカル・ファイルをリフレッシュするには:

  1. コンポーネント・ペインで「データ・モデル」をクリックして、「プロパティ」ページを表示します。

  2. このページの「添付」リージョンで、「データ・ファイル」リストからファイルを見つけます。

  3. 「リフレッシュ」をクリックします。

  4. 「アップロード」ダイアログで、最新バージョンのファイルを参照してアップロードします。このファイルには同じ名前を付ける必要があります。別の名前を付けると古いバージョンは置き換えられません。

  5. データ・モデルを保存します。

ローカル・ファイルを削除するには:

  1. コンポーネント・ペインで「データ・モデル」をクリックして、「プロパティ」ページを表示します。

  2. このページの「添付」リージョンで、「データ・ファイル」リストからファイルを見つけます。

  3. 「削除」をクリックします。

  4. 「OK」をクリックして処理を確認します。

  5. データ・モデルを保存します。

2.12 CSVファイルを使用したデータ・セットの作成

CSVファイルをデータソースとして使用するには、次のいずれかを実行します。

2.12.1 サポートされるCSVファイルについて

BI Publisherのデータ・セット・タイプとしてのCSVファイルのサポートに関するガイドラインは、次のとおりです。

  • CSVファイルのデリミタとしてサポートされるのは、カンマ、パイプ、セミコロンおよびタブです。

  • CSVファイルの中にヘッダーがある場合は、ヘッダーの名前がXMLタグ名として使用されます。XMLタグ名では、~、!、#、$、%、^、&、*、+、`、|、:、\"、\\、<、>、?、,、/はサポートされません。データソース・ファイルのヘッダー名にこれらの文字が含まれている場合は、データ・モデル・エディタの「構造」タブを使用してタグ名を編集してください。

  • CSVデータ・セットでは、データ・モデル・エディタによって割り当てられたデータ型の編集がサポートされます。詳細は、第2.12.3.1項「データ型の編集」を参照してください。データ・セット内の要素のデータ型を更新する場合は、選択したデータ型にファイル内のデータが準拠していることを確認してください。

  • BI Publisherデータ・エンジンへの入力として使用されるCSVファイルは、UTF-8でエンコードされている必要があります。また、空の列ヘッダーが含まれていてはなりません。

  • グループのブレーク、データのリンク、式およびグループ・レベル関数はサポートされません。

  • CSVファイル内のデータ・フィールドの形式は、マッピングされる日付要素については標準ISOデータ書式(例: 2012-01-01T10:30:00-07:00)、マッピングされる数値要素については######.##であることが必要です。

  • CSVファイルに対するデータ検証は用意されていません。

2.12.2 ファイル・ディレクトリ・データソースに格納されたCSVファイルの使用

ファイル・ディレクトリ・データソースにあるCSVファイルを使用してデータ・セットを作成するには:

  1. データ・モデル・エディタのツールバーの「新規データ・セット」をクリックし、「CSVファイル」を選択します。「新規データ・セット - CSVファイル」ダイアログが開きます(図2-39を参照)。

    図2-39 「新規データ・セット - CSVファイル」ダイアログ

    「データ・セットの作成 - ファイル」ダイアログ
  2. このデータ・セットの名前を入力します。

  3. 「共有」をクリックして、「データソース」リストを有効にします。

  4. 「データソース」で、CSVファイルが存在するデータソースを選択します。このリストは、構成済のファイル・データソース接続から移入されます。

  5. 「参照」をクリックしてデータソースに接続し、使用可能なディレクトリを参照します。ファイルを選択します。

  6. (省略可能)ファイルの最初の行に列名が格納されていることを指定するには、「最初の行は列ヘッダーです」を選択します。このオプションを選択しない場合は、列にはColumn1、Column2のような汎用名が割り当てられます。割り当てられたXMLタグ名および表示名は、データ・モデル・エディタの「構造」タブで編集できます。

  7. 「CSVデリミタ」で、ファイルで使用されているデリミタを選択します。デフォルトでは「カンマ(,)」が選択されます。

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

2.12.3 ローカルに格納されたCSVファイルのアップロード

ローカルに格納されたCSVファイルを使用してデータ・セットを作成するには:

  1. ツールバーの「新規データ・セット」をクリックし、「CSVファイル」を選択します。「新規データ・セット - CSVファイル」ダイアログが開きます(図2-40を参照)。

    図2-40 「新規データ・セット - CSVファイル」ダイアログ

    「データ・セットの作成 - ファイル」ダイアログ
  2. このデータ・セットの名前を入力します。

  3. 「ローカル」を選択します。「アップロード」ボタンが有効になります。

  4. 「アップロード」をクリックし、ローカル・ディレクトリにあるCSVファイルを選択してアップロードします。このファイルがすでにデータ・モデルにアップロードされている場合は、「ファイル名」リストから選択できるようになっています。

  5. (省略可能)ファイルの最初の行に列名が格納されていることを指定するには、「最初の行は列ヘッダーです」を選択します。このオプションを選択しない場合は、列にはColumn1、Column2のような汎用名が割り当てられます。割り当てられたXMLタグ名および表示名は、データ・モデル・エディタの「構造」タブで編集できます。

  6. 「CSVデリミタ」で、ファイルで使用されているデリミタを選択します。デフォルトでは「カンマ(,)」が選択されます。

  7. 「OK」をクリックします。

2.12.3.1 データ型の編集

CSVファイル要素のデータ型を編集するには、データ型アイコンをクリックするか、要素の「プロパティ」ダイアログで更新します。

要素のデータは、割り当てられたデータ型に準拠している必要があります。ユーザー・インタフェースには、データ型を更新するときにデータを検証する機能はありません。データが一致しない場合(たとえば、整数として定義された要素に対して文字列値が存在する場合)は、レイアウト編集ツールで、または実行時にエラーが発生する可能性があります。

データ型を更新できるのは、データソースがCSVファイルの場合のみです。

2.12.3.2 アップロードしたCSVファイルのリフレッシュと削除

ファイルをアップロードすると、そのファイルはデータ・モデルの「プロパティ」ペインにある「添付」リージョンに表示されます(図2-41を参照)。

図2-41 「プロパティ」ペインの「添付ファイル」リージョン

「添付ファイル」リージョン

「プロパティ」ペインの詳細は、第1.7項「データ・モデルのプロパティの設定」を参照してください。

データ・モデル内のローカル・ファイルをリフレッシュするには:

  1. コンポーネント・ペインの「データ・モデル」をクリックして「プロパティ」ページを表示します。

  2. このページの「添付」リージョンで、「データ・ファイル」リストからファイルを見つけます。

  3. 「リフレッシュ」をクリックします。

  4. 「アップロード」ダイアログで、最新バージョンのファイルを参照してアップロードします。このファイルには同じ名前を付ける必要があります。別の名前を付けると古いバージョンは置き換えられません。

  5. データ・モデルを保存します。

ローカル・ファイルを削除するには:

  1. コンポーネント・ペインの「データ・モデル」をクリックして「プロパティ」ページを表示します。

  2. このページの「添付」リージョンで、「データ・ファイル」リストからファイルを見つけます。

  3. 「削除」をクリックします。

  4. 「OK」をクリックして処理を確認します。

  5. データ・モデルを保存します。

2.13 HTTP XML入力からのデータ・セットの作成

HTTP (XML入力)データ・セット・タイプを使用すると、HTTP GETメソッドでデータを取得して、Web上のRSSフィードおよびXML入力からデータ・モデルを作成できます。


重要:

システムのセキュリティに応じて、外部データソースのフィードにアクセスするために追加の構成が必要になることがあります。RSSフィードがSecure Sockets Layer (SSL)によって保護されている場合は、『Oracle Fusion Middleware Oracle Business Intelligence Publisher管理者ガイド』のSecure Sockets Layer (SSL)通信用にBI Publisherを構成する方法に関する項を参照してください。


データ・セットにパラメータを含めるには、先にパラメータを定義して、そのパラメータをデータ・セットの定義時に選択できるようにすることをお薦めします。第4章「パラメータと値リストの追加」を参照してください。

HTTP XML入力データ・セットから得られるメタデータは存在しないため、グループとリンクはサポートされません。

11.1.1.7.10では、HTTP XML入力からデータ・セットを作成するためのプロシージャが拡張されています。ご使用のリリースに適したプロシージャを参照してください。

2.13.1 リリース11.1.1.7.10におけるHTTP XMLデータ・セットからのデータ・セットの作成

リリース11.1.1.7.10では、次の2つの異なる方法によってHTTP (XML入力)データソースを設定できます。

  • 「管理」ページ

    HTTPデータソースへの接続を「管理」ページで設定し、複数のデータ・モデルで使用できます。詳細は、『Oracle Fusion Middleware Oracle Business Intelligence Publisher管理者ガイド』のHTTP XML入力への接続の設定に関する項を参照してください。

  • プライベート・データソースとして

    自分のみアクセス可能なプライベート接続を設定することもできます。プライベート・データソース接続の詳細は、第1.8項「プライベート・データソースの管理」を参照してください。

HTTP XML入力からデータ・セットを作成するには:

  1. ツールバーの「新規データ・セット」をクリックし、「HTTP(XML入力)」を選択します。「新規データ・セット - HTTP(XML入力)」ダイアログが開きます(図2-42を参照)。

    図2-42 「新規データ・セット - HTTP(XML入力)」ダイアログ

    「データ・セットの作成 - HTTP」ダイアログ
  2. このデータ・セットの名前を入力します。

  3. データソースを選択します。

  4. RSSフィードまたはXML入力のURL接尾辞を入力します。

  5. 「メソッド」で「GET」を選択します。

  6. パラメータを追加するには、「パラメータの追加」をクリックします。「名前」を入力して、「値」を選択します。「値」リストには、「パラメータ」セクションで定義したパラメータの「名前」が移入されます。第4章「パラメータと値リストの追加」を参照してください。

  7. 「OK」をクリックして、データ・セットのダイアログを閉じます。

2.13.2 11.1.1.7.10より前のリリースにおけるHTTP XMLデータ・セットからのデータ・セットの作成

HTTP XML入力からデータ・セットを作成するには:

  1. ツールバーの「新規データ・セット」をクリックし、「HTTP(XML入力)」を選択します。「新規データ・セット - HTTP(XML入力)」ダイアログが開きます(図2-42を参照)。

    図2-43 「新規データ・セット - HTTP(XML入力)」ダイアログ

    「データ・セットの作成 - HTTP」ダイアログ
  2. このデータ・セットの名前を入力します。

  3. RSSフィードまたはXML入力のソースURLを入力します。

  4. 「メソッド」で「GET」を選択します。

  5. 必要に応じて、URLに対するユーザー名、パスワードおよびレルムを入力します。

  6. パラメータを追加するには、「パラメータの追加」をクリックします。「名前」を入力して、「値」を選択します。「値」リストには、「パラメータ」セクションで定義したパラメータの「名前」が移入されます。第4章「パラメータと値リストの追加」を参照してください。

  7. 「OK」をクリックして、データ・セットのダイアログを閉じます。

2.14 Oracle Endeca問合せからのデータ・セットの作成

エンタープライズ・データ検出プラットフォームであるOracle Endeca Information Discoveryでは、複雑で多様なデータの高度な探索と分析を行うことができます。情報は様々なソース・システムから読み込まれ、このデータを格納するファセット・データ・モデルは変動するデータを動的にサポートします。BI Publisherを利用すると、Oracle Endeca Information DiscoveryユーザーがEndeca Query Language (EQL)問合せをOracle Endeca Serverに対して実行し、取り出したデータをBI Publisherに返してエンタープライズ・レポーティングを行うことができます。

前提条件: 管理者がOracle Endeca Serverとの統合を構成する必要があります。詳細は、『Oracle Fusion Middleware Oracle Business Intelligence Publisher管理者ガイド』のOracle Endeca Serverとの統合の構成方法に関する項を参照してください。

EQL問合せの記述方法の詳細は、Oracle Endeca Server問合せ言語リファレンスを参照してください。図2-44に、Oracle Endeca問合せの例を示します。

図2-44 Oracle Endeca問合せの例

Endeca問合せデータ・セットの例

Oracle Endeca Serverデータソースに対するEQL問合せを使用してデータ・セットを作成するには:

  1. ツールバーの「新規データ・セット」ボタンをクリックし、「Oracle Endeca問合せ」を選択します。「新規データ・セット - Oracle Endeca問合せ」ダイアログが開きます。

  2. このデータ・セットの名前を入力します。

  3. 「データ・ストア」で、このデータ・セットのデータ・ストアを選択します。

  4. EQL問合せを直接入力するか、別の場所(たとえばOracle Endeca Information Discoveryのビュー)からコピーして貼り付けます。

  5. 「OK」をクリックします。

2.14.1 Oracle Endeca問合せデータ・セットに関する注意点

Oracle Endeca Serverから取り出したデータ・セットについては、グループのブレーク、データのリンクおよびグループ・レベル関数はサポートされません。

サポート対象は次のとおりです。

  • グローバル・レベル関数

  • 要素がNULLの場合の値の設定

  • グループ・フィルタ

前述のサポート対象機能の詳細は、第3章「データの構造化」を参照してください。

2.15 キャラクタ・ラージ・オブジェクト(CLOB)として格納されたデータのデータ・モデル内での使用方法

BI Publisherでは、キャラクタ・ラージ・オブジェクト(CLOB)データ型として格納されたデータのデータ・モデル内での使用をサポートしています。この機能によって、別のプロセスで生成してデータベースに保存してあるXMLデータを、BI Publisherデータ・モデルへの入力として使用できます。

クエリー・ビルダーを使用して、SQL問合せで列を取得してから、データ・モデル・エディタを使用して、必要なデータ構造を指定します。データ・モデルの実行時に、データ・エンジンは次のいずれかの形式でデータを構造化します。


注意:

必ずデータに改行またはキャリッジ・リターンが含まれないようにしてください。データ内の改行およびキャリッジ・リターンは、BI Publisherレポートのレイアウトで予期したように表示されないことがあります。


CLOBとして格納されたデータからデータ・セットを作成するには:

  1. ツールバーの「新規データ・セット」をクリックし、「SQL問合せ」を選択します。「新規データ・セット - SQL問合せ」ダイアログが開きます。

  2. データ・セットの名前を入力します。

  3. このデータ・セットのデフォルト・データソースを使用しない場合は、リストから「データソース」を選択します。

  4. SQL問合せを入力するか、「クエリー・ビルダー」を使用してCLOBデータ列を取得する問合せを作成します。クエリー・ビルダー・ユーティリティの詳細は、第2.3.3項「SQLクエリー・ビルダーの使用」を参照してください。図2-45は、列名DESCRIPTIONにCLOBデータが格納されている場合の問合せの例です。

    図2-45 問合せの例

    問合せの例
  5. 問合せの入力後に、「OK」をクリックして保存します。BI Publisherによって、問合せが検証されます。

  6. デフォルトでは、データ・モデル・エディタはCLOB列にCLOBデータ型を割り当てます。データ型をXMLに変更するには、データ型アイコンをクリックして「XML」を選択します(図2-46を参照)。

    図2-46 XMLへのデータ型の変更

    XMLへのデータ型の変更

2.15.1 データが返される方法

問合せの実行時、CLOB列に整形式XMLが含まれていると、データ・エンジンはCLOB列のタグ名内に構造化されたXMLデータを返します。

データ型がXMLの場合の出力例:

<DESCRIPTION>要素には、CLOB列内に格納されたXMLデータが含まれています(図2-47を参照)。

図2-47 データ型がXMLの場合のデータ構造例

データ型がXMLの場合の出力例

データ型がCLOBの場合の出力例

CLOBデータ型としてデータが返されるように選択している場合、返されるデータは図2-48に示すように構造化されます。

図2-48 データ型がCLOBの場合のデータ構造の例

データ型がCLOBの場合のデータ構造の例

2.15.1.1 CLOB列データを使用したデータ・セットの注意点

バースティング問合せでCLOB列を使用する際に特有の注意点は、第7.3項「バースティング定義のデータ・モデルへの追加」を参照してください。

2.15.2 CLOB列に格納されたXHTMLデータの処理

BI Publisherでは、データベースのCLOB列に格納されたXHTML文書形式のデータを取得して、生成されたレポートでマークアップをレンダリングできます。BI Publisherレポート・レンダリング・エンジンでマークアップ・タグを処理できるようにするには、データ・エンジンから渡されたXMLレポート・データ内で、XHTMLデータをCDATAセクション内にラッピングする必要があります。

CDATAセクションでラッピングされたデータをデータベースに格納することをお薦めします。これにより、単純なSELECT文を使用してデータを抽出できます。データがCDATAセクション内にラッピングされていない場合は、そのデータをラッピングするための命令をSQL文に含める必要があります。

次の各項では、それぞれの場合でXHTMLデータを抽出する方法について説明しています。

マークアップをレポート内に表示するには、『Oracle Fusion Middleware Oracle Business Intelligence Publisherレポート・デザイナーズ・ガイド』のレポートでHTML形式のデータをレンダリングする方法に関する項に記載されている構文を使用する必要があります。この項には、サポートされるHTML形式についての説明もあります。レポート内でのHTMLマークアップのレンダリングは、RTFテンプレートに対してのみサポートされます。

2.15.2.1 CDATA内にラッピングされたXHTMLデータの取得

次のデータが、CLOB_DATAというデータベース列に格納されていると仮定します。

<![CDATA[
<p><font style="font-style: italic; font-weight: bold;" size="3">
<a href="http://www.oracle.com">oracle</a></font> </p>
<p><font size="6"><a href="http://docs.oracle.com/">Oracle Documentation</a>
</font></p>
]]>

次の例に示すような単純なSQL文を使用して列データを取得します。

select CLOB_DATA as "RTECODE"  from MYTABLE 

データ・モデル・エディタで、RTECODE列のデータ型をXMLに設定します(図2-49を参照)。

図2-49 データ型をXMLに設定

データ型をXMLに設定

2.15.2.2 問合せでのCDATA内へのXHTMLデータのラッピング

次のデータが、CLOB_DATAというデータベース列に格納されていると仮定します。

<p><font style="font-style: italic; font-weight: bold;" size="3">
<a href="http://www.oracle.com">oracle</a></font> </p>
<p><font size="6"><a href="http://docs.oracle.com/">Oracle Documentation</a>
</font></p>

次の構文をSQL問合せ内で使用して、そのデータを取得し、それをCDATAセクション内にラッピングします。

select '<![CDATA' || '['|| CLOB_DATA || ']' || ']>' as "RTECODE"from MYTABLE

データ・モデル・エディタで、RTECODE列のデータ型をXMLに設定します(図2-49を参照)。

2.16 データ・モデルのテストとサンプル・データの生成

データ・モデル・エディタにはデータ・モデルをテストして出力を表示する機能があり、期待した結果が得られることを確認できます。テストが正常に完了した後で、テスト出力をデータ・モデルのサンプル・データとして保存するかどうかを選択できます。エクスポート機能を使用してサンプル・データをファイルにエクスポートすることもできます。データ・モデルの実行が失敗した場合は、データ・エンジン・ログを表示してください。

データ・モデルをテストするには:

  1. データ・モデル・エディタの「データ」タブを選択します(図2-50を参照)。

    図2-50 データ・モデル・エディタの「データ」タブを選択

    「XML出力の取得」ボタン
  2. 「SQL問合せ」、「Oracle BI Analysis」、「ビュー・オブジェクト」および「Oracle Endeca問合せ」のデータ・セットの場合: 「データ」タブで、返す行の数を選択します(図2-51を参照)。パラメータが含まれている場合は、テスト用に適切な値を入力します。

    図2-51 「戻す行数」の選択

    「戻す行数」の選択
  3. 「表示」をクリックして、データ・モデルから返されるXMLを表示します。

  4. 次のオプションのいずれかを選択してサンプル・データを表示します。

    • 「ツリー表示」を使用して、サンプル・データをデータ階層として表示します。これがデフォルトの表示オプションです。

    • 「表ビュー」を使用して、サンプル・データを、BI Publisherのレポートと同様の書式設定済の表として表示します。

テスト・データをデータ・モデル用のサンプル・データとして保存するには:

  1. データ・モデルの実行が正常に完了したら、「サンプル・データとして保存」をクリックします(図2-52を参照)。サンプル・データがデータ・モデルに保存されます。詳細は、第1.7.2項「データ・モデルへの添付ファイル」を参照してください。

    図2-52 サンプル・データとして保存

    サンプル・データとして保存

テスト・データをエクスポートするには:

  1. 「SQL問合せ」、「Oracle BI Analysis」、「ビュー・オブジェクト」および「Oracle Endeca問合せ」のデータ・セットの場合: 「データ」タブで、返す行の数を選択します。

  2. データ・モデルの実行が正常に完了したら、「エクスポート」をクリックします。ファイルを開く、またはローカル・ディレクトリに保存するための画面が表示されます。

データ・エンジン・ログを表示するには:

  1. データ・エンジン・ログの表示をクリックします。ファイルを開く、またはローカル・ディレクトリに保存するための画面が表示されます。データ・エンジン・ログ・ファイルは、XMLファイルです。

2.17 システム変数に格納されたユーザー情報をレポート・データに含める方法

BI Publisherは、現在のユーザーについての情報を格納します。この情報には、レポート・データ・モデルからアクセスできます。このユーザー情報は、表2-2で説明するシステム変数に格納されています。

表2-2 変数に格納されるユーザー情報

システム変数 説明

xdo_user_name

レポートを実行しているユーザーのユーザーID。例: Administrator

xdo_user_roles

レポートを実行しているユーザーに割り当てられたロール。例: XMLP_ADMIN、XMLP_SCHEDULER

xdo_user_report_oracle_lang

ユーザーのアカウント・プリファレンスに基づくレポート言語。例: ZHS

xdo_user_report_locale

ユーザーのアカウント・プリファレンスに基づくレポート・ロケール。例: en-US

xdo_user_ui_oracle_lang

ユーザーのアカウント・プリファレンスに基づくユーザー・インタフェース言語。例: US

xdo_user_ui_locale

ユーザーのアカウント・プリファレンスに基づくユーザー・インタフェース・ロケール。例: en-US


2.17.1 ユーザー・システム変数を要素として追加する方法

ユーザー情報をデータ・モデルに追加するには、パラメータとして変数を定義して、データ・モデルでパラメータ値を要素として定義します。または、単にパラメータとして変数を追加して、そのパラメータ値をレポート内で参照します。

次の問合せがあるとします。

select
:xdo_user_name as USER_ID,
:xdo_user_roles as USER_ROLES,
:xdo_user_report_oracle_lang as REPORT_LANGUAGE,
:xdo_user_report_locale as REPORT_LOCALE,
:xdo_user_ui_oracle_lang as UI_LANGUAGE,
:xdo_user_ui_locale as UI_LOCALE
from dual

次の結果が戻されます。

<?xml version="1.0" encoding="UTF-8"?>
<! - Generated by Oracle BI Publisher - >
<DATA_DS>
<G_1>
<USER_ROLES>XMLP_TEMPLATE_DESIGNER, XMLP_DEVELOPER, XMLP_ANALYZER_EXCEL, XMLP_ADMIN, XMLP_ANALYZER_ONLINE, XMLP_SCHEDULER </USER_ROLES>
<REPORT_LANGUAGE>US</REPORT_LANGUAGE>
<REPORT_LOCALE>en_US</REPORT_LOCALE>
<UI_LANGUAGE>US</UI_LANGUAGE>
<UI_LOCALE>en_US</UI_LOCALE>
<USER_ID>administrator</USER_ID>
</G_1>
</DATA_DS>

2.17.2 使用事例: 返されるデータ・セットのユーザーIDによる制限

次の例では、返されるデータをユーザーIDで制限しています。

select EMPLOYEES.LAST_NAME as LAST_NAME,
  EMPLOYEES.PHONE_NUMBER as PHONE_NUMBER,
  EMPLOYEES.HIRE_DATE as HIRE_DATE,
 :xdo_user_name as USERID 
from   HR.EMPLOYEES EMPLOYEES
where lower(EMPLOYEES.LAST_NAME) = :xdo_user_name

lower()関数を使用しているため、xdo_user_nameは必ず小文字の書式になります。BI PublisherはUSERIDを保持しないため、ユーザー名を使用する必要があります。このユーザー名を問合せ内で直接使用するか、参照表に問い合せてユーザーIDを検索します。

2.17.2.1 LDAPユーザー属性値からのバインド変数の作成

LDAPディレクトリに格納されたユーザー属性の値をデータ問合せにバインドするには、BI Publisherに属性名を定義して、必要なバインド変数を作成します。

2.17.2.1.1 前提条件

バインド変数の作成に使用できる属性は、管理者が「セキュリティ構成」ページで定義する必要があります。この属性は、LDAPの「セキュリティ・モデル」定義にある「データ問合せバインド変数の属性名」フィールドで定義します。このフィールドの詳細は、『Oracle Fusion Middleware Oracle Business Intelligence Publisher管理者ガイド』のLDAPサーバーを認識するためのBI Publisherの構成に関する項を参照してください。ユーザーに対して定義された任意の属性を使用できます(例: memberOf、sAMAccountName、primaryGroupID、mail)。

2.17.2.1.2 BI Publisherによるバインド変数の構成方法

LDAPの「セキュリティ・モデル」定義にある「データ問合せバインド変数の属性名」フィールドに入力した属性名は、次のように問合せ内で参照できます。

xdo_<attribute name>

たとえば、サンプル属性のmemberOf、sAMAccountName、primaryGroupID、mailが入力済だと仮定します。これらの属性は、次のバインド変数として問合せ内で使用できます。

xdo_memberof
xdo_SAMACCOUNTNAME
xdo_primaryGroupID
xdo_mail

属性については大文字と小文字が区別されませんが、接頭辞のxdo_は小文字にする必要があります。

これらのバインド変数は、データ・モデル内で次のように使用します。

SELECT
:xdo_user_name AS USER_NAME,
:xdo_user_roles AS USER_ROLES,
:xdo_user_ui_oracle_lang AS USER_UI_LANG,
:xdo_user_report_oracle_lang AS USER_REPORT_LANG,
:xdo_user_ui_locale AS USER_UI_LOCALE,
:xdo_user_report_locale AS USER_REPORT_LOCALE,
:xdo_SAMACCOUNTNAME AS SAMACCOUNTNAME,
:xdo_memberof as MEMBER_OF,
:xdo_primaryGroupID as PRIMARY_GROUP_ID,
:xdo_mail as MAIL
FROM DUAL

LDAPバインド変数は、ユーザーがログインしているLDAPディレクトリに格納された値を返します。