MDX データ操作 - CREATE ACTION
キューブ、ディメンション、階層、または下位オブジェクトに関連付けることができるアクションを作成します。
構文
CREATE ACTION CURRENTCUBE | Cube_Name
.Action_Name <action body>
<action body> ::=
FOR
CUBE
| Hierarchy_Name [MEMBERS]
| Level_Name [MEMBERS]
| CELLS
| SET }
AS 'MDX_Expression'
[, TYPE = '
{ URL
| HTML
| STATEMENT
| DATASET
| ROWSET
| COMMANDLINE
| PROPRIETARY }
']
[ , INVOCATION = 'INTERACTIVE | ON_OPEN | BATCH ' ]
[ , APPLICATION = String_Expression ]
[ , DESCRIPTION = String_Expression ]
[ , CAPTION = 'MDX_Expression' ]
引数
Cube_Name
キューブ名を提供する有効な文字列。
Action_名
作成するアクションの名前を指定する有効な文字列です。
Hierarchy_名
階層名を提供する有効な文字列。
Level_名
レベル名を提供する有効な文字列。
Member_名
メンバー名またはメンバー キーを提供する有効な文字列。
MDX_Expression
有効な MDX 式。
String_Expression
有効な文字列式。
解説
クライアント アプリケーションは、安全でないアクションを作成して実行できます。また、クライアント アプリケーションで安全でない関数を使用することもできます。 このような状況を回避するには、 Safety Options プロパティを使用します。 詳細については、「Safety Options プロパティ」を参照してください。
Note
このステートメントは、旧バージョンとの互換性のために用意されています。 ドリルスルーやレポート アクションなど、Analysis Services の新しいアクションはサポートされていません。
アクションの種類
次の表では、Analysis Services で使用できるさまざまな種類のアクションについて説明します。
アクションの種類 | 説明 |
---|---|
URL | 返されるアクション文字列は、インターネット ブラウザーで開く URL です。 注: このアクションが または https:// でhttps:// 始まらない場合、SafetyOptions が DBPROPVAL_MSMD_SAFETY_OPTIONS_ALLOW_ALL に設定されていない限り、このアクションはブラウザーで使用できなくなります。 |
HTML | 返されるアクション文字列は HTML スクリプトです。 文字列をファイルに保存し、インターネット ブラウザーを使用してファイルをレンダリングする必要があります。 この場合、生成された HTML の一部としてスクリプト全体を実行できます。 |
ステートメント | 返されるアクション文字列は、コマンド オブジェクトの ICommand::SetText メソッドを文字列に設定し、 ICommand::Executeメソッドを呼び出すことによって実行する必要があるステートメントです。 コマンドが成功しない場合は、エラーが返されます。 |
データセット | 返されるアクション文字列は、コマンド オブジェクトの ICommand::SetText メソッドを文字列に設定し、 ICommand ::Execute メソッドを呼び出すことによって実行する必要がある MDX ステートメントです。 要求されたインターフェイス ID (IID) は IDataset である必要があります。 データ・セットが作成された場合、コマンドは成功します。 クライアント アプリケーションでは、返されたデータセットをユーザーが表示できるようにする必要があります。 |
行セット | DATASET と同様ですが、IDataset の IID を要求する代わりに、クライアント アプリケーションで IRowset の IID を要求する必要があります。 行セットが作成されれば、コマンドは成功したことになります。 クライアント アプリケーションでは、ユーザーが返された行セットを参照できるようにする必要があります。 |
コマンドライン | クライアント アプリケーションでアクション文字列を実行します。 文字列はコマンド ラインです。 |
独自 | クライアント アプリケーションは、特定のアクションに関するカスタムの非一般的な知識がない限り、アクションを表示したり、実行したりしないでください。 クライアント アプリケーションがAPPLICATION_NAMEに適切な制限を設定して明示的に要求しない限り、クライアント アプリケーションに独自の アクションは返されません。 |
呼び出しの種類
次の表では、Analysis Services で使用できるさまざまな種類の呼び出しについて説明します。 呼び出しの種類は、アクションを呼び出すタイミングを判断するために、クライアント アプリケーションによってのみ使用されます。 呼び出しの種類は、実際にはアクションの呼び出し動作を決定しません。
呼び出しの種類 | 説明 |
---|---|
インタラクティブ | アクションは、ユーザーの操作を通じてクライアント アプリケーションによって呼び出される必要があります。 |
ON_OPEN | アクションは、ターゲット オブジェクトを開いたときにクライアント アプリケーションによって呼び出される必要があります。 この呼び出しの種類は現在実装されていません。 |
バッチ | クライアント アプリケーションは、対象のオブジェクトがバッチ操作にかかわった時点を判別してアクションを呼び出します。 この呼び出しの種類は現在実装されていません。 |
Scope
各アクションは特定のキューブに対して定義され、そのキューブに一意の名前が付けられます。 アクションには、次の表に示すスコープのいずれかを指定できます。
キューブ スコープ
特定のディメンション、メンバー、セルに限定されないアクションです。たとえば、"AS/400 実稼働システムの端末エミュレーションの起動" などは、これに相当します。
ディメンション スコープ
アクションは、特定のディメンションに適用されます。 この種のアクションは、選択された特定のレベルまたはメンバーに依存しません。
レベル スコープ
特定のディメンション レベルに適用されるアクションです。 これらのアクションは、そのディメンション内のメンバーの特定の選択に依存しません。
メンバー スコープ
アクションは、特定のレベルのメンバーに適用されます。
セル スコープ
特定のセルだけに適用されるアクションです。
セット スコープ
アクションはセットにのみ適用されます。 ActionParameterSet という名前は、アクションの式内のアプリケーションで使用するために予約されています。