ヘッダーをスキップ

Oracle Business Intelligence Discoverer 管理ガイド
10gリリース2(10.1.2.1)
B25101-01
目次
目次
索引
索引

戻る 次へ

11
ユーザー定義アイテムの作成とメンテナンス

この章では、Discoverer Administratorを使用したユーザー定義アイテムの作成とメンテナンス方法について説明します。項目は次のとおりです。

ユーザー定義アイテム

ユーザー定義アイテムは、アイテム用のデータを導出する計算式を使用するアイテムです。

ユーザー定義アイテムを使用すると、Discovererエンド・ユーザーはデータにビジネス計算を適用できます。たとえば、典型的なビジネス計算には次のものがあります。

ユーザー定義アイテムは(フォルダにある他のアイテムと同様に)、条件、サマリー・フォルダ、値リスト、結合および他のユーザー定義アイテムで使用できます。

Discovererマネージャは、ユーザー定義アイテムを作成し、ワークブックに含めることができます。

ユーザー定義アイテムを作成することには、次の利点があります。

次のものが含まれる式を使用して、ユーザー定義アイテムを作成します。

3つのタイプのユーザー定義アイテムがあります。

次のソースからDiscovererのユーザー定義アイテムの詳細がわかります。

注意

Calendar Year||CHR(10)||Department

このアイテムが含まれるワークシートでは、「Calendar Year」と「Department」が1つの列に表示されます。たとえば、次のようになります。

2002 Sales Department

導出ユーザー定義アイテム

導出ユーザー定義アイテムは、フォルダにある他のアイテムと同様に動作するユーザー定義アイテムで使用される式です。導出ユーザー定義アイテムは、軸アイテムまたはデータ・ポイントにできます。また、通常のアイテムを使用する任意の場所で使用できます。導出ユーザー定義アイテムの値は、ワークブックに含まれる他のアイテムにかかわらず常に同じです。

導出ユーザー定義アイテムの例を次に示します。

集計ユーザー定義アイテム

集計ユーザー定義アイテムは、GROUP関数が適用される導出アイテムです(SUM、COUNT、MAX、MIN、AVG、DETAILなど。詳細は「導出ユーザー定義アイテム」を参照)。集計ユーザー定義アイテムの値は、ワークシートに含まれる他のアイテムによって異なります。

集計ユーザー定義アイテムの例を次に示します。

軸アイテムがどのようにグループ化されるかが、集合化された行の数に影響します。これは、2つの集計の比率を計算する場合に特に重要です。

たとえば、マージンを計算するには、Profit/SalesではなくSUM(Profit)/SUM(Sales)の計算を使用します。クエリーで使用される場合、前者はSUM(Profit/Sales)になり、SUM(Profit)/SUM(Sales)とは異なる値になります。例ではSUM集計を使用していますが、他の任意の集計にも適用可能です(SUM、COUNT、MAX、MIN、AVG、DETAILなど)。

注意: 2つのデータ・ポイントの合計の比率を計算する場合、必ずデータ・ポイントを合計してから比率を計算します。

集計ユーザー定義アイテムに適用される制限

集計ユーザー定義アイテムを作成するときは、多くの制限が適用されることに注意してください。集計ユーザー定義アイテムに適用される制限は次のとおりです。

集計ユーザー定義アイテムは、所属するフォルダによって参照されるデータの行数に影響を与えません。ワークシートで選択された場合にのみ、生成されたSQLに影響します。

分析関数と集計ユーザー定義アイテムの動作の相違点

分析関数は、ビジネス・インテリジェンス・データの分析に使用できる数学および統計に基づく高度な計算です。たとえば、次のような質問に答えるために使用します。

分析関数は、集計ユーザー定義アイテムとは次の点で動作が異なります。

注意: Discovererでは、分析関数をOracle Enterprise Editionデータベースでのみサポートしています。

集計導出ユーザー定義アイテム

集計導出ユーザー定義アイテムは、複合フォルダに含まれる集計ユーザー定義アイテムであり、別の集計ユーザー定義アイテム(同じ複合フォルダにあるもの)を集計します。つまり、集計導出ユーザー定義アイテムは、別の集計ユーザー定義アイテムの中にネストされた単なる集計ユーザー定義アイテムです。

集計導出ユーザー定義アイテムにより、集計(AVG、SUM、COUNTなど)を現行レベルの集計に適用し、追加の情報を導出できます。

集計導出ユーザー定義アイテムは、あらゆる点で普通の導出ユーザー定義アイテムと同様に動作します。詳細は、次の項目を参照してください。

集計導出ユーザー定義アイテムの例

この例では、ビデオ・ストア・チェーンで1年にわたって月当たりの平均売上を表示するために集計導出ユーザー定義アイテムをどのように使用するかを説明します。この例の集計導出ユーザー定義アイテムは、同じフォルダで作成された集計ユーザー定義アイテムを使用しています。集計ユーザー定義アイテムの詳細は、「集計ユーザー定義アイテム」を参照してください。

この例は、「Video Analysis」フォルダと「Monthly Sales Analysis」フォルダという2つの複合フォルダを使用しています。このフォルダは、サンプル・データを使用して作成できます(詳細は、第27章「Discovererのサンプル・データEUL、データおよびワークブック」を参照)。

集計導出ユーザー定義アイテムは、複合フォルダ「Monthly Sales Analysis」で作成されます。「Monthly Sales Analysis」複合フォルダは、「Video Analysis」複合フォルダから次のアイテムをドラッグして作成されます。

複合フォルダ「Monthly Sales Analysis」は、毎月の全店舗のデータの行を参照します。

集計ユーザー定義アイテム(Monthly Sales Per Store)は、次の計算式を使用して「Monthly Sales Analysis」複合フォルダで作成されます。

SUM(Video Analysis.Sales)

このアイテムは、所定の店舗の所定の月の売上合計を示します。

図11-1    集計ユーザー定義アイテム「SUM(Video Analysis.Sales)」を使用したクエリーの結果


画像の説明

集計導出ユーザー定義アイテム(「Average Monthly Sales per Store」)は、次の計算式を使用して「Monthly Sales Analysis」複合フォルダで作成されます。

AVG(Monthly Sales Per Store)

このアイテムは、所定の店舗の所定の月の平均売上合計を示します。

図11-2    集計導出ユーザー定義アイテムAVG(Monthly Sales Per Store)を使用したクエリーの結果


画像の説明

注意

ユーザー定義アイテムの作成方法

この作業を使用して、ユーザー定義アイテム(導出ユーザー定義アイテム、集計ユーザー定義アイテム、集計導出ユーザー定義アイテム)を作成できます。

新規ユーザー定義アイテムを作成する手順は、次のとおりです。

  1. ワークエリア: 「データ」タブで新規ユーザー定義アイテムを含めるフォルダを選択します。

  2. 「挿入」→「アイテム」を選択して、「新規アイテム」ダイアログを表示します。

    このダイアログにより、新規ユーザー定義アイテムを作成し、選択したフォルダに追加できます。

    注意: フォルダを選択しない場合、Discoverer Administratorは「新規アイテム」ダイアログを表示します。このダイアログで、新規ユーザー定義アイテムを含めるフォルダを選択できます(現在開いているビジネスエリアから任意のフォルダを選択できます)。

    図11-3    「新規アイテム」ダイアログ


    画像の説明

  3. 新規ユーザー定義アイテムの名前を指定します。

  4. 「ユーザー定義アイテム」フィールドに計算式を入力します。

    計算構文を扱い慣れている場合は、計算式を「ユーザー定義アイテム」フィールドに入力します。

    注意: 「ユーザー定義アイテム」フィールドに計算式を入力する場合は、計算式の前に等号(=)を付ける必要があります。

    あるいは、次の方法で計算式を段階的に作成できます。

    • アイテムをビジネスエリアから計算式に追加するには、「アイテム」ラジオ・ボタンをクリックして「表示」リストからアイテムを選択し、次に「貼付け」をクリックしてアイテムを「ユーザー定義アイテム」フィールドにコピーします。

    • 関数を計算式に追加するには、「関数」ラジオ・ボタンをクリックして「表示」リストから関数を選択し、次に「貼付け」をクリックして関数を「ユーザー定義アイテム」フィールドにコピーします。

    • 数学演算子を計算式に含めるには、「ユーザー定義アイテム」フィールドの下にある適切な演算子ボタンをクリックします。

    ヒント: アイテムを「ユーザー定義アイテム」フィールドに貼り付ける前に、「ユーザー定義アイテム」フィールドのアイテムを挿入する場所にカーソルを置きます。

    注意: ユーザー定義アイテムは、標準のOracleデータベースの構文に従います。この構文の詳細は『Oracle Database SQLリファレンス』を参照してください。

    注意: 登録されているユーザー定義PL/SQLファンクションは、「データベース」グループに表示されます。詳細は、「ユーザー定義PL/SQLファンクション」を参照してください。

  5. 「ユーザー定義アイテム」フィールドで詳細を指定し終えたら、「OK」をクリックします。

    「ユーザー定義アイテム」フィールド内にエラーがなければ、新規アイテムが作成されます。「ユーザー定義アイテム」フィールドにエラーがある場合、Discoverer Administratorはまずエラーを表示し、「新規アイテム」ダイアログを表示します。これにより詳細を訂正できます。

この時点で、新規ユーザー定義アイテムを使用し、結合や条件、さらに新規のユーザー定義アイテムも作成できます。新規ユーザー定義アイテムを他のユーザー定義アイテムに含めることもできます。

ユーザー定義アイテムのプロパティの編集方法

ユーザー定義アイテムのプロパティ編集の詳細は、「アイテム・プロパティの編集方法」を参照してください。

ユーザー定義アイテムの編集方法

既存のユーザー定義アイテムを編集する手順は、次のとおりです。

  1. ワークエリア: 「データ」タブでユーザー定義アイテムを選択し、「編集」→「編集」を選択して、「ユーザー定義アイテムの編集」ダイアログを表示します。

  2. 必要に応じてユーザー定義アイテムを変更します。

    たとえば、次のような場合です。

    • ユーザー定義アイテムの名前の変更

    • アイテム、関数または演算子のユーザー定義アイテムのテキストへの追加または削除

  3. 「OK」をクリックし、変更内容を保存してダイアログを閉じます。

ユーザー定義アイテムの削除方法

1つ以上のユーザー定義アイテムを削除できます。ユーザー定義アイテムを削除する場合は、削除するユーザー定義アイテムを使用している他のEULオブジェクトが影響を受ける可能性があることに注意してください。「影響」ダイアログを使用すれば、ユーザー定義オブジェクトの削除による影響を受ける可能性がある別のオブジェクトを確認できます。

ユーザー定義アイテムを削除する手順は、次のとおりです。

  1. ワークエリア: 「データ」タブで、削除するユーザー定義アイテムを選択します。

    同時に複数のアイテムを選択するには、[Ctrl]キーを押しながら別のアイテムをクリックします。

  2. 「編集」→「削除」を選択して、「削除の確認」ダイアログを表示します。

  3. (オプション)このアイテムの削除によって影響を受ける可能性があるオブジェクトを確認する手順は、次のとおりです。

    1. 「影響」をクリックして、「影響」ダイアログを表示します。

      図11-4    「影響」ダイアログ


      画像の説明

      「影響」ダイアログを使用すると、アイテムの削除による影響を受ける可能性のある別のEULオブジェクトを確認できます。

      注意: 「影響」ダイアログには、ファイル・システム(.disファイル内)に保存されたワークブックに対する影響は表示されません。

    2. (オプション)行を選択すると、現在の処理がEULオブジェクトに与える影響を示すテキストが、リストの一番下に表示されます。

    3. アイテムの削除による影響を確認後、「閉じる」をクリックして、「影響」ダイアログを閉じます。

  4. 選択したアイテムを削除する場合は、「はい」をクリックします。

エンド・ユーザーが1つのワークシートからドリルアウトしてDiscoverer Viewerに他のワークシートを表示できるようにするユーザー定義アイテムの作成方法

エンド・ユーザーがそこからドリルアウトして、Discoverer Viewerの別のワークシートで追加情報や関連情報を表示できるワークシートを作成できます。

インターネット・アドレス(URL)が含まれるユーザー定義アイテムをDiscoverer Administratorに作成し、それと同じアイテムをワークシートに含めることができます。エンド・ユーザーはそのアイテムをクリックして、事前定義のDiscoverer Viewerワークシートを表示できます。

エンド・ユーザーが1つのワークシート(ソース)からドリルアウトして、Discoverer Viewerに別のワークシート(ターゲット)を表示できるようにするユーザー定義アイテムを作成する手順は、次のとおりです。

  1. Discoverer PlusまたはDiscoverer Desktopでターゲット・ワークシートを作成し、データベースに保存します。

    これが、エンド・ユーザーがソース・ワークシートからドリルアウトする先となる事前定義ワークシートです。

    ワークシート作成の詳細は、『Oracle Business Intelligence Discoverer Plusユーザーズ・ガイド』を参照してください。

    注意: 状況依存の情報(エンド・ユーザーがドリルアウトする元となるソース・ワークシートの行または列に関連する情報)をターゲット・ワークシートに表示するには、ターゲット・ワークシートでデータをフィルタ処理する方法(パラメータやページ・アイテムなど)を使用する必要があります。

  2. Discoverer Viewerを使用して、ステップ1で作成したターゲット・ワークシートを表示します。

  3. ターゲット・ワークシートのURLをクリップボードにコピーします。

    ターゲット・ワークシートのURLをDiscoverer Administratorの新規ユーザー定義アイテムに貼り付けてから、ユーザー定義アイテムの計算式を変更します。

  4. Discoverer Administratorで「新規アイテム」ダイアログを表示します(「ユーザー定義アイテムの作成方法」を参照)。

    ソース・ワークシートで新規ユーザー定義アイテムを使用して、Discoverer Viewer内のターゲット・ワークシートにドリルアウトします。

  5. 「新規アイテム」ダイアログ「ユーザー定義アイテム」フィールドにURL(クリップボードにコピーしたもの)を貼り付けます。

    この時点で新規ユーザー定義アイテムに含まれるURLを編集し、各パラメータの値を対応するEULアイテム名で置き換えます。EULアイテムにより、ターゲット・ワークシート内のパラメータで使用する動的な値が提供されます。

  6. 「新規アイテム」ダイアログ「ユーザー定義アイテム」フィールドで、URLの最初と最後に一重引用符(')を入力します。

    たとえば、次のようになります。

    'http://mymachine.com/discoverer/viewer?&cn=cf_a208&pg=1&wbk=PARAMETERS&wsk=26&qp_myRegion=CENTRAL'

    一重引用符を使用することにより、URLのテキストをDiscovererで正しく処理できるようになります。

  7. 「ユーザー定義アイテム」フィールド内の計算式を編集し、URLの各パラメータの値を、対応するEULのアイテム名で置き換えます。

    たとえば、ターゲット・ワークシートでmyRegion(EULアイテムのRegionを表す)という名前のパラメータが使用されている場合、「ユーザー定義アイテム」フィールドに貼り付けるURLは、次のようになります。

    'http://mymachine.com/discoverer/viewer?&cn=cf_a208&pg=1&wbk=PARAMETERS&wsk=26&qp_myRegion=CENTRAL'

    EULアイテムで決定された値を持つURLの一部を置き換えるには、'||<ItemName>||'構文を使用します。たとえば、前述のURLでは、次のようにCENTRAL値が置き換えられます。

    'http://mymachine.com/discoverer/viewer?&cn=cf_a208&pg=1&wbk=PARAMETERS&wsk=26&qp_myRegion='||Region||''

    Regionは対応するEULアイテムであり、ターゲット・ワークシート内のmyRegionパラメータに必要な値を動的に提供します。

    注意: 一重引用符と||演算子を使用して、最終的なURLを正しく作成してください。

  8. 「名前」フィールドに、新規ユーザー定義アイテムに付ける適切な名前を入力します。

    たとえば、新規ユーザー定義アイテムにDrill_to_myRegionと命名できます。

  9. 「OK」をクリックしてダイアログを閉じ、変更内容を保存します。

  10. 「ワークエリア」の「データ」タブで、作成したユーザー定義アイテムを強調表示し、「編集」→「プロパティ」を選択します。

    Discovererにより、作成したユーザー定義アイテムの「アイテム・プロパティ」ダイアログが表示されます。

  11. 「コンテンツ・タイプ」属性をクリックし、ドロップダウン・リストからFILEを選択します。

    「コンテンツ・タイプ」属性により、別のアプリケーションが起動されることがDiscovererに通知されます。この場合は、Discoverer Plus、Discoverer DesktopまたはDiscoverer ViewerによってWebブラウザが起動され、Discoverer Viewerにターゲット・ワークシートが表示されます。

  12. 「OK」をクリックしてダイアログを閉じ、変更内容を適用します。

  13. 新規のDiscoverer Plusセッションを開始します(あるいはDiscoverer Desktopに再接続します)。

  14. Discoverer PlusまたはDiscoverer Desktopでワークシートを作成し(ソース・ワークシート)、Drill_to_myRegionユーザー定義アイテム(前述の手順でDiscoverer Administratorで作成したもの)をこのワークシートに含めます。

    ワークシート作成の詳細は、『Oracle Business Intelligence Discoverer Plusユーザーズ・ガイド』を参照してください。

    エンド・ユーザーがDiscoverer Plus、Discoverer DesktopまたはDiscoverer Viewerでこのソース・ワークシートを表示したときに、Drill_to_myRegionユーザー定義アイテム(前述の手順で作成したもの)をクリックすると、Discoverer Viewerにターゲット・ワークシートを表示できます。EULアイテム「Region」に対する状況依存値が、myRegionパラメータを使用してターゲット・ワークシートに動的に渡され、正しい結果データが表示されます。

このタスクで使用されるURLの例は、次の構成要素に分解できます。

インターネット・アドレスの部分  インターネット・アドレスの部分が表す内容 

http://mymachine.com/discoverer/viewer? 

Discoverer Viewerのインターネット・アドレス(URL) 

&cn=cf_a208 

データベースに接続するために使用する接続文字列 

&wbk=PARAMETERS 

ワークブック識別子 

&wsk=26 

ワークシート識別子 

&qp_myRegion 

パラメータmyRegion(Discoverer PlusまたはDiscoverer Desktopで作成) 

=CENTRAL 

ターゲット・ワークシートのパラメータmyRegionの値(CENTRAL region) 

PL/SQLファンクションが必要な理由

PL/SQLファンクションはSQLに対するOracleのプロシージャ拡張機能の1つです。PL/SQLファンクションを使用すると、SQL内のPL/SQL参照を経由して、Oracle Serverで実行されるPL/SQLファンクションにアクセスできます。PL/SQLファンクションにより、データベースにある値を計算できます。PL/SQLファンクションの詳細は、『PL/SQLユーザーズ・ガイドおよびリファレンス』を参照してください。

ユーザー定義PL/SQLファンクション

ユーザー定義PL/SQLファンクションは、Discovererマネージャが作成するPL/SQLファンクションであり、Discovererエンド・ユーザーの追加要件を満たすように設計されています(複雑なユーザー定義アイテムを用意する場合など)。ユーザー定義PL/SQLファンクションは、Oracleが提供するPL/SQLファンクションを補足し、すべてのデータベース・プロセスに利用できます。

SQL*Plusまたはプロシージャ・エディタを使用して、ユーザー定義PL/SQLファンクションを作成します。ユーザー定義PL/SQLファンクションはDiscoverer Administratorでは直接作成しません。詳細は、『SQL*Plusユーザーズ・ガイドおよびリファレンス』を参照してください。

注意: Discoverer Plusで、PL/SQLファンクションを使用する導出ユーザー定義アイテム(詳細は「導出ユーザー定義アイテム」を参照)を含むフォルダを表示できるのは、これらのファンクションに対してEXECUTEデータベース権限を持つユーザーのみです。

ユーザー定義PL/SQLファンクションの登録

Discovererを使用してユーザー定義PL/SQLファンクションにアクセスするには、ファンクションをEULに登録する必要があります。ユーザー定義PL/SQLファンクションを登録すると、登録したユーザー定義PL/SQLファンクションは「ユーザー定義アイテムの編集」ダイアログのデータベース関数のリストに表示され、標準のOracle関数と同じ方法で使用できます。

ユーザー定義PL/SQLファンクションは次の2つの方法で登録できます。

注意: PL/SQLファンクションを登録するには、そのファンクションに対するEXECUTE権限が必要です。

ユーザー定義PL/SQLファンクションを自動的に登録する方法

PL/SQLファンクションを自動的に登録するには、次の方法でインポートする必要があります。

  1. 「ツール」→「PL/SQL 関数の登録」を選択すると、「PL/SQL 関数」ダイアログ: 「関数」タブが表示されます。

  2. 「インポート」をクリックすると、「PL/SQL関数のインポート」ダイアログが表示されます。

    このダイアログを使用して、インポートするPL/SQLファンクションを選択します。

  3. インポートするファンクションを選択します。

    同時に複数のファンクションを選択するには、[Ctrl]キーを押しながら別のファンクションをクリックします。

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

    選択したファンクションがインポートされ、「PL/SQL 関数」ダイアログ: 「関数」タブにファンクションの詳細が表示されます。

    選択したファンクションに関する情報は、自動的にインポートされます。手動で情報を入力したり、情報を確認する必要はありません。

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

    これで、PL/SQLファンクションはDiscovererで使用できるように登録されました。

ユーザー定義PL/SQLファンクションを手動で登録する方法

DiscovererでPL/SQLファンクションを手動で登録する手順は、次のとおりです。

  1. 「ツール」→「PL/SQL 関数の登録」を選択すると、「PL/SQL 関数」ダイアログ: 「関数」タブが表示されます。

    図11-5    「PL/SQL 関数」ダイアログ: 「関数」タブ


    画像の説明

  2. 「新規作成」をクリックして、ファンクションの属性を指定します。

  3. 「検証」をクリックして、入力した情報の妥当性と記述の正確さを確認します。

  4. ファンクションが無効な場合は、属性を修正し、もう一度「検証」をクリックします。

  5. (オプション)引数を受け入れるファンクションの場合は、次の操作を実行できます。

    1. 「PL/SQL 関数」ダイアログ: 「引数」タブを表示します。

    2. 「引数」タブで、「新規作成」をクリックして、引数の属性を指定します。

      図11-6    「PL/SQL 関数」ダイアログ: 「引数」タブ


      画像の説明

  6. ファンクションの定義を終了したら、「OK」をクリックします。

これで、ユーザー定義PL/SQLファンクションはDiscovererで使用できるように登録されました。


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

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