ToggleDrillState (MDX)

在深化模式和浅化模式之间切换成员的钻取状态。

语法

ToggleDrillState(Set_Expression1,Set_Expression2 [, [RECURSIVE] 
[,INCLUDE_CALC_MEMBERS] ] )

参数

  • Set_Expression1
    返回集的有效多维表达式 (MDX)。

  • Set_Expression2
    返回集的有效多维表达式 (MDX)。

  • Recursive
    (可选)。 指示集的递归比较的关键字。 ToggleDrillState 函数结合了 DrillupMember 函数和 DrilldownMember 函数。 只有当成员处于 DrilldownMember 状态时递归才适用。

  • Include_calc_members
    (可选)。 指示是否在深化级别包括计算成员(如果存在)的标志。

注释

ToggleDrillState 函数切换每个存在于第一个集中的第二个集的成员的钻取状态。 第一个集可以包含任意维数的元组,但是第二个集必须包含单个维度的成员。 ToggleDrillState 函数结合了 DrillupMember 函数和 DrilldownMember 函数。 如果第二个集中的成员 m 存在于第一个集中,并且该成员被深化(即,其后有一个直接后代),那么 DrillupMember(Set_Expression1, {m}) 将应用于第一个集中的成员或元组。 如果该 m 成员被浅化(即,m 后没有 m 的直接后代),则对第一个集应用 DrilldownMember(Set_Expression1, {m}[, RECURSIVE])。

如果使用了可选的 RECURSIVE 标志,则循环应用浅化和深化。 关于循环标志的详细信息,请参阅 DrillupMember 函数和 DrilldownMember 函数。

通过查询 XMLA 属性 MdpropMdxDrillFunctions,你可以验证服务器为钻取功能提供的支持的级别;有关详细信息,请参阅支持的 XMLA 属性 (XMLA)

请参阅 数据库日志:MDX 集函数:方案的 ToggleDrillState() 函数以及涉及此函数的示例。

示例

下例对第一个集中的澳大利亚成员进行深化,而对第一个集中的美国成员进行浅化。

SELECT ToggleDrillState
   ({[Geography].[Geography].[Country].Members, [Geography].[Geography].[Country].&[United States].Children},
      {[Geography].[Geography].[Country].[Australia]
      , [Geography].[Geography].[Country].&[United States]}
      --, recursive
      --, include_calc_members
   ) ON 0
   FROM [Adventure Works]

请参阅

参考

MDX 函数参考 (MDX)