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 属性”。

注意

包括此语句是为了向后兼容。 不支持 Analysis Services 中新增的操作,例如钻取操作或报表操作。

操作类型

下表描述了 Analysis Services 中可用的不同类型的操作。

操作类型 说明
URL 返回的操作字符串是一个 URL,应使用 Internet 浏览器打开此 URL。

注意:如果此操作未以 https://https://开头,则除非 SafetyOptions 设置为 DBPROPVAL_MSMD_SAFETY_OPTIONS_ALLOW_ALL,否则浏览器将不可用该操作。
HTML 返回的操作字符串是一个 HTML 脚本。 应将该字符串保存到文件中,并使用 Internet 浏览器来呈现该文件。 在这种情况下,整个脚本会在所生成的 HTML 中运行。
声明 返回的操作字符串是一个语句,需要通过将命令对象的 ICommand::SetText 方法设置为字符串并调用 ICommand::Execute方法来执行。 如果该命令失败,会返回一条错误。
数据 返回的操作字符串是需要通过将命令对象的 ICommand::SetText 方法设置为字符串并调用 ICommand::Execute 方法来运行的 MDX 语句。 (IID) 请求的接口 ID 应为 IDataset。 如果创建了数据集,就说明命令成功了。 客户端应用程序应当允许用户浏览返回的数据集。
行集 DATASET 类似,但客户端应用程序应请求 IRowset 的 IID,而不是请求 IDataset 的 IID。 如果创建了行集,就说明命令成功了。 客户端应用程序应当允许用户浏览返回的行集。
命令行 客户端应用程序应执行该操作字符串。 该字符串是一个命令行。
专有 客户端应用程序不应显示和执行该操作,除非该应用程序针对该操作进行了特殊的自定义设置。 除非客户端应用程序通过对APPLICATION_NAME设置适当的限制来显式要求这些操作,否则不会将专有操作返回到 客户端应用程序

调用类型

下表介绍了 Analysis Services 中可用的不同类型的调用。 调用类型仅用于帮助客户端应用程序来确定何时调用操作, 并不真正决定操作的调用行为。

调用类型 说明
互动 应该由客户端应用程序通过用户交互来调用操作。
ON_OPEN 应该在打开目标对象时由客户端应用程序调用操作。 目前尚未实现此调用类型。
应该由客户端应用程序在某一批处理操作中涉及到目标对象(由客户端应用程序确定)时调用操作。 目前尚未实现此调用类型。

范围

每个操作均针对一个特定的多维数据集定义,并且在该多维数据集中具有唯一的名称。 操作可具有下表所列的作用域之一。

多维数据集作用域
操作不依赖于特定的维度、成员或单元,例如:“为 AS/400 生产系统启动终端仿真”。

维度作用域
操作适用于特定的维度。 这些操作不依赖于所选的特定级别或成员。

级别作用域
操作适用于特定的维度级别。 这些操作不依赖于该维度中所选的特定成员。

成员作用域
操作适用于特定级别的成员。

单元作用域
操作仅适用于特定的单元。

集作用域
此操作仅适用于某个集。 名称 ActionParameterSet 保留供操作表达式内的应用程序使用。

另请参阅

MDX 数据定义语句 (MDX)