ヘッダーをスキップ
Oracle® Fusion Middleware Oracle Business Intelligence Discoverer管理者ガイド
11gリリース1 (11.1.1)
E51906-01
  目次へ移動
目次
索引へ移動
索引

前
 
次
 

11 計算定義アイテムの作成とメンテナンス

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

11.1 計算定義アイテム

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

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

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

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

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

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

3つのタイプの計算定義アイテムがあります。

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

注意

11.2 導出アイテム

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

導出アイテムの例を次に示します。

11.3 集計計算定義アイテム

集計計算定義アイテムは、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つのデータ・ポイントの合計の比率を計算する場合、必ずデータ・ポイントを合計してから比率を計算します。

11.4 集計計算定義アイテムに適用される制限

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

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

11.5 分析関数と集計計算定義アイテムの動作の相違点

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

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

それぞれの詳細は、次を参照してください。

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

11.6 集計導出アイテム

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

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

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

11.7 集計導出アイテムの例

この例では、ビデオ・ストア・チェーンで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)」を使用したクエリーの結果

図11-1の説明は前後にあります。

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

AVG(Monthly Sales Per Store)

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

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

図11-2の説明は前後にあります。

注意

11.8 計算定義アイテムの作成方法

この作業によって、計算定義アイテム(導出アイテム、集計計算定義アイテム、集計導出アイテム)を作成できます。

新規計算定義アイテムを作成する手順は次のとおりです。

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

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

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

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

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

    図11-3の説明は前後にあります。
  3. 新規計算定義アイテムの名前を指定します。

  4. 「計算」フィールドに計算式を入力します。

    計算構文を扱い慣れている場合は、計算式を「計算」フィールドに入力します。

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

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

    • アイテムをビジネスエリアから計算に追加するには、「アイテム」オプションをクリックして「表示」リストからアイテムを選択し、「貼付け」をクリックしてアイテムを「計算」フィールドにコピーします。

    • 関数を計算に追加するには、「関数」オプションをクリックして「表示」リストから関数を選択し、「貼付け」をクリックして関数を「計算」フィールドにコピーします。

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

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

    注意: 計算は、標準のOracleの構文に従います。この構文の詳細は、『Oracle Database SQL言語リファレンス』を参照してください。

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

  5. 「計算」フィールドで詳細を指定し終えたら、「OK」をクリックします。

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

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

11.9 計算定義アイテムのプロパティの編集方法

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

11.10 計算定義アイテムの編集方法

既存の計算を編集する手順は次のとおりです。

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

  2. 必要に応じて計算を変更します。

    たとえば、次のような変更があります。

    • 計算の名前の変更

    • アイテム、関数または演算子の計算テキストへの追加または削除

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

11.11 計算定義アイテムの削除方法

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

計算定義アイテムを削除する手順は次のとおりです。

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

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

  2. 「編集」→「削除」を選択すると、「削除の確認」ダイアログが表示されます。

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

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

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

      図11-4の説明は前後にあります。

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

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

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

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

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

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

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

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

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

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

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

    ワークシート作成の詳細は、『Oracle Fusion Middleware 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 Fusion Middleware 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地域)

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

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

11.14 カスタム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データベース権限を持つユーザーのみです。

11.15 カスタムPL/SQLファンクションの登録

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

カスタムPL/SQLファンクションは次の2つの方法で登録できます。

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

11.16 カスタム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で使用できるように登録されました。

11.17 カスタムPL/SQLファンクションを手動で登録する方法

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

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

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

    図11-5の説明は前後にあります。
  2. 「新規」をクリックして、ファンクションの属性を指定します。

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

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

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

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

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

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

      図11-6の説明は前後にあります。
  6. ファンクションの定義を終了したら、「OK」をクリックします。

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