Oracle® Fusion Middleware Oracle Business Intelligence Enterprise Editionメタデータ・リポジトリ作成者ガイド 12c (12.2.1.1.0) E77227-02 |
|
![]() 前へ |
![]() 次へ |
Oracle Business Intelligenceは、複数のデータ・ソースから移入されるセッション変数をサポートします。
このようなマルチソース・セッション変数は論理問合せまたはリポジトリのデータ・フィルタ内で使用でき、様々なデータ・ソースからの値の結合を含めることができます。
マルチソース・セッション変数が保持できる値の数に制限はありません。マルチソース・セッション変数を作成するには、まず、ソースごとに行単位の初期化ブロックを作成します。
次に、ソースごとにセッション変数を明示的に定義します。セッション変数名のフォーマットは、次のようにする必要があります。
<ms_variable_name>
____<source>
ここで、セパレータは4つのアンダースコア文字である必要があります。
これによって、次の名前のマルチソース・セッション変数1つが自動的に作成されます。
<ms_variable_name>
コンポーネント・セッション変数名(<ms_variable_name>____<source>)は、管理ツールの「変数マネージャ」には個別に表示されますが、「式ビルダー」では1つのマルチソース・セッション変数名(<ms_variable_name>)のみが表示されます。
注意:
この項では主としてマルチソース・セッション変数の定義と使用法について説明していますが、論理問合せとデータ・フィルタでコンポーネント・セッションの値を選択することもできます。
行単位の初期化ブロックのいずれかがNULL結果を返した場合、それはOracle BIサーバーのログ、nqserver.log
に記録されます。正常に値を返した他のコンポーネント初期化ブロックのマルチソース・セッション変数にも値を追加できます。マルチソース・セッション変数は、すべてのコンポーネント初期化ブロックがNULL値を返した場合のみ失敗します。
マルチソース・セッション変数についても、通常のセッション変数と同様に、実行優先度と遅延実行を設定できます。
次の例を使用して、マルチソース・セッション変数の作成方法を説明します。
次の例では、マルチソース・セッション変数の作成と使用方法を示しています。
管理ツールの「変数マネージャ」で、「アクション」→「新規」→「セッション」→「初期化ブロック」を選択します。
デフォルトの初期化文字列に対して次のSQLを指定して、mvcountry_sebl_init
という行単位の初期化ブロックを作成します。
select distinct 'MVCOUNTRY____SEBL', country from siebel_table
デフォルトの初期化文字列に対して次のSQLを指定して、mvcountry_orcl_init
という行単位の初期化ブロックを作成します。
select distinct 'MVCOUNTRY____ORCL', country from oracle_table
まだ「変数マネージャ」で、「アクション」→「新規」→「セッション」→「変数」を選択します。
MVCOUNTRY____SEBLというセッション変数を、変数名とソース名の間に4つのアンダースコアが含まれていることを確認して、作成します。「初期化ブロック」に対してmvcountry_sebl_init
を選択します。
MVCOUNTRY____ORCLという2つ目のセッション変数を、変数名とソース名の間に4つのアンダースコアが含まれていることを確認して、作成します。「初期化ブロック」に対してmvcountry_orcl_init
を選択します。
コンポーネント・セッション変数は「変数マネージャ」に表示されるのに対し、作成されたマルチソース・セッション変数、MVCOUNTRYは「式ビルダー」に表示されます。
論理問合せでのマルチソース・セッション変数の使用方法
これで、マルチソース・セッション変数MVCOUNTRYを論理問合せで使用できるようになりました。
次に例を示します。
select lastName, firstName, country from employee where country=VALUEOF(NQ_SESSION.MVCOUNTRY)
データ・フィルタでのマルチソース・セッション変数の使用方法
マルチソース・セッション変数MVCOUNTRYをデータ・フィルタで使用するには、次の手順を実行します。
次のイメージに示すように、「式ビルダー」には、マルチソース・セッション変数MVCOUNTRYのみが表示され、このマルチソース・セッション変数の作成に使用した通常のセッション変数は表示されないことに注意してください。