限制指定的多維表達式(MDX)陳述的範圍為指定的子立方體。
Syntax
SCOPE(Subcube_Expression)
[ MDX_Statement ]
END SCOPE
Subcube_Expression ::=(Auxiliary_Subcube [, Auxiliary_Subcube,...n])
Auxiliary_Subcube ::=
Limited_Set
| Root([dimension_name])
| Leaves([dimension_name])
Limited_Set ::=
single_tuple
| member
| Common_Grain_Members
| hierarchy.members
| level.members
| {}
| Descendants
(
Member
, [level
[
, SELF
| AFTER
| BEFORE
| SELF_AND_AFTER
| SELF_AND_BEFORE
| SELF_BEFORE_AFTER
| LEAVES
]
)
[* <limited set>]
論點
Subcube_Expression
一個有效的 MDX 子立方體表達式。
MDX_Statement
一個有效的 MDX 陳述。
Common_Grain_Members
一個有效的 MDX 陳述句,能評估給具有相同顆粒的成員。
single_tuple
一個元組。
備註
SCOPE 陳述句決定將受到一個或多個 MDX 陳述式執行影響的子立方體。 除非 MDX 陳述句被框架在 SCOPE 陳述中,否則 MDX 陳述句的隱含範圍就是整個立方體。
Note
隱藏成員會在 SCOPE 語句中被揭露。
SCOPE 語句會建立子立方體,無論 MDX 相容 性設定如何,都會暴露「漏洞」。 例如,陳述 Scope( Customer.State.members )句 ,可以包含那些不包含州的國家或地區,但插入了原本看不見的佔位符成員的國家或地區。
在 SCOPE 陳述式中建立的計算成員與命名集合不受 SCOPE 陳述式影響。
範例
以下範例來自 Adventure Works 範例解法中的 MDX 計算腳本,將當前範圍定義為 2005 財政年度的財政季度及銷售額配額度量,然後利用 ParallelPeriod 函數為當前範圍內的儲存格分配值。 接著範例會用另一個 SCOPE 語句修改作用域,然後再使用 This (MDX) 函式執行另一個賦值。
Scope
(
[Date].[Fiscal Year].&[2005],
[Date].[Fiscal].[Fiscal Quarter].Members,
[Measures].[Sales Amount Quota]
) ;
This = ParallelPeriod
(
[Date].[Fiscal].[Fiscal Year], 1,
[Date].[Fiscal].CurrentMember
) * 1.35 ;
/*-- Allocate equally to months in FY 2002 -----------------------------*/
Scope
(
[Date].[Fiscal Year].&[2002],
[Date].[Fiscal].[Month].Members
) ;
This = [Date].[Fiscal].CurrentMember.Parent / 3 ;
End Scope ;
End Scope ;