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

適用対象: SQL Server Analysis Services Azure Analysis Services Fabric/Power BI Premium

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

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

  • レポート アクション。アクションが発生するキューブの選択したセクションに関連付けられているReporting Servicesからレポートを返します。

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

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

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

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

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

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

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

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

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

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

重要

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

アクションの種類

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

アクションの種類 説明
CommandLine コマンド プロンプトでコマンドを実行します。
データセット データセットをクライアント アプリケーションに返します。
ドリルスルー ドリルスルー ステートメントを式として返します。この式は、行セットを返すときにクライアントによって実行されます。
Html インターネット ブラウザーで HTML スクリプトを実行します。
[専用] この一覧に表示されていないインターフェイスを使用して操作を実行します。
レポート パラメーター化された URL ベースの要求をレポート サーバーに送信して、レポートをクライアント アプリケーションに返します。
[行セット] 行セットをクライアント アプリケーションに返します。
ステートメント OLE DB コマンドを実行します。
URL インターネット ブラウザーで動的 Web ページを表示します。

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

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

参照

多次元モデルのアクション