Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Limita o âmbito das instruções de Expressões Multidimensionais (MDX) especificadas a um subcubo especificado.
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>]
Arguments
Subcube_Expression
Uma expressão válida de subcubo MDX.
MDX_Statement
Uma declaração MDX válida.
Common_Grain_Members
Uma declaração MDX válida que avalia para membros com o mesmo grão.
single_tuple
Uma única tupla.
Observações
A instrução SCOPE determina o subcubo que será afetado pela execução de uma ou mais instruções MDX. A menos que uma instrução MDX seja enquadrada dentro de uma instrução SCOPO, o âmbito implícito de uma instrução MDX é o cubo inteiro.
Note
Membros ocultos são expostos nas instruções SCOPO.
As instruções SCOPE criam subcubos que expõem "buracos" independentemente da definição de Compatibilidade MDX . Por exemplo, a afirmação , Scope( Customer.State.members )pode incluir os estados em países ou regiões que não contêm estados, mas para os quais foram inseridos membros provisórios invisíveis.
Membros calculados e conjuntos nomeados criados dentro de uma instrução SCOPE não são afetados pela instrução SCOPO.
Example
O exemplo seguinte, do script de cálculo MDX na solução de exemplo Adventure Works, define o âmbito atual como o trimestre fiscal do ano fiscal de 2005 e a medida da quota do montante de vendas, e depois atribui um valor às células no âmbito atual usando a função ParallelPeriod . O exemplo modifica então o âmbito usando outra instrução SCOPE e depois realiza outra atribuição usando a função 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 ;