アクション (Analysis Services - 多次元データ)

アクションにはさまざまな種類があり、適切に作成する必要があります。アクションの種類は次のとおりです。

  • ドリルスルー アクション。このアクションが発生したキューブで選択されているセル内のデータを表す行セットを返します。

  • レポート アクション。このアクションは、実行されたキューブで選択されているセクションに関連付けられた Reporting Services からレポートを返します。

  • 標準アクション。このアクションは、実行されたキューブで選択されているセクションに関連付けられたアクション要素 (URL、HTML、DataSet、RowSet などの要素) を返します。

アクションを取得してエンド ユーザーに公開する際、クライアント アプリケーションでは ADOMD.NET などのクエリ インターフェイスが使用されます。詳細については、「ADOMD.NET」を参照してください。

簡単な Action オブジェクトは、基本情報、アクションが実行される対象、アクション スコープの限定条件、およびアクションの種類で構成されます。基本情報には、アクションの名前、アクションの説明、アクションに推奨されるキャプションなどが含まれます。

対象は、アクションが実行されるキューブ内の実際の場所です。対象は、対象の種類および対象オブジェクトで構成されます。対象の種類は、アクションが有効化されるキューブ内のオブジェクトの種類を表します。対象の種類には、レベル メンバ、セル、階層、階層メンバなどがあります。対象オブジェクトは、その対象の種類に属する特定のオブジェクトです。対象の種類が階層の場合、対象オブジェクトは、キューブ内で定義された階層のうちの 1 つです。

条件は、アクション イベント時に評価される、Boolean 型の MDX 式です。条件が true と評価された場合に、アクションが実行されます。それ以外の場合、アクションは実行されません。

種類は、実行されるアクションの種類です。Action は抽象クラスであるため、これを使用するにはその派生クラスのいずれかを使用する必要があります。2 種類のアクションが事前定義されています。ドリルスルーおよびレポートです。これらに対応する派生クラスとして、DrillThroughAction および ReportAction があります。その他のアクションは、StandardAction クラスに含まれます。

MicrosoftSQL ServerAnalysis Services でのアクションとは、クライアント アプリケーションによって表示および使用されるストアド MDX ステートメントです。つまり、アクションとは、サーバーで定義され格納されたクライアント コマンドです。また、クライアント アプリケーションによって MDX ステートメントを表示および処理するタイミングと方法を指定する情報も含まれています。アクションで指定される操作では、アクションに含まれる情報をパラメータとして使用してアプリケーションを起動したり、アクションで指定される条件に基づいて情報を取得することができます。

アクションを使用すると、ビジネス ユーザーは分析結果に従った操作を実行できます。従来の分析は、データの表示で終わることが普通でしたが、アクションを保存および再利用することで、エンド ユーザーはそれ以上の効果を得ることができます。問題と欠陥を検出するソリューションを開始できるので、キューブの範囲を超えてビジネス インテリジェンス アプリケーションを拡張できます。アクションの利用により、クライアント アプリケーションを高度なデータ表示ツールから企業の運用システムの不可欠部分へと変えることができます。エンド ユーザーは、運用アプリケーションへの入力としてのデータ送信に終始せず、むしろ意思決定プロセスの "環を閉じる (Closing the Loop)" ことができるのです。分析データを意思決定に変えることのできる能力は、成功をもたらすビジネス インテリジェンス アプリケーションにとって不可欠です。

たとえば、キューブを参照するビジネス ユーザーが、ある製品の現在の在庫が不足していることに気付いたとします。クライアント アプリケーションは、Analysis Services データベースから取得したアクションの一覧をビジネス ユーザーに提供します。この一覧に含まれるすべてのアクションは、製品在庫の値が不足していることに関係しています。ここでビジネス ユーザーが、製品を表すキューブのメンバの Order アクションを選択するとします。Order アクションにより、運用データベースのストアド プロシージャが呼び出されて、新しい注文が開始されます。このストアド プロシージャでは、適切な情報が生成されて注文入力システムに送信されます。

アクションは、柔軟に作成できます。たとえば、アクションでアプリケーションを起動したり、データベースから情報を取得することができます。ディメンション、レベル、メンバ、セルなど、キューブのほとんどすべての部分からアクションがトリガされるように構成したり、キューブの同じ部分に対して複数のアクションを作成することができます。また、起動したアプリケーションに文字列パラメータを渡して、アクションの実行時にエンド ユーザーに表示されるキャプションを指定することもできます。

重要な注意事項重要

ビジネス ユーザーがアクションを使用するには、ビジネス ユーザーが実行するクライアント アプリケーションでアクションがサポートされている必要があります。

アクションの種類

次の表に、Analysis Services に含まれているアクションの種類を示します。

アクションの種類

説明

コマンド ライン

コマンド プロンプトでコマンドを実行します。

データセット

データセットをクライアント アプリケーションに返します。

ドリルスルー

ドリルスルー ステートメントを式として返します。この式は、行セットを返すときにクライアントによって実行されます。

Html

インターネット ブラウザで HTML スクリプトを実行します。

専用

この表に記載されている以外のインターフェイスを使用して操作を実行します。

レポート

パラメータ化された URL ベースの要求をレポート サーバーに送信して、レポートをクライアント アプリケーションに返します。

行セット

行セットをクライアント アプリケーションに返します。

ステートメント

OLE DB コマンドを実行します。

URL

インターネット ブラウザで動的 Web ページを表示します。

アクションの競合回避と実行

コマンド オブジェクトが定義されているオブジェクトにビジネス ユーザーがアクセスすると、アクションに関連付けられているステートメントが自動的に解決されます。このため、クライアント アプリケーションでそのステートメントを利用できるようになりますが、アクションが自動的に実行されるわけではありません。アクションは、ビジネス ユーザーがそのアクションを開始するクライアント固有の操作をしたときにのみ実行されます。たとえば、クライアント アプリケーションでは、ビジネス ユーザーが特定のメンバまたはセルを右クリックしたときに、ポップアップ メニューとしてアクションの一覧を表示できます。