Obsługa skryptów MDX — ZAKRES

Ogranicza zakres określonych instrukcji Multidimensional Expressions (MDX) do określonej podkostki.

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
Poprawne wyrażenie MDX subcube.

MDX_Statement
Ważne wyciąganie MDX.

Common_Grain_Members
Poprawne zdanie MDX, które ocenia do członków o tym samym ziarnistwie.

single_tuple
Pojedyncza krotka.

Remarks

Instrukcja SCOPE określa podkostkę, która będzie podlegała uruchomieniu jednej lub więcej instrukcji MDX. Jeśli instrukcja MDX nie jest objęta instrukcją SCOPE, niejawnym zakresem instrukcji MDX jest cała sześcian.

Note

Ukryte osoby są ujawniane w instrukcjach SCOPE.

Instrukcje SCOPE tworzą podkostki, które eksponują "dziury" niezależnie od ustawień kompatybilności MDX . Na przykład stwierdzenie Scope( Customer.State.members ), może zawierać stany w krajach lub regionach, które nie zawierają stanów, ale dla których w przeciwnym razie wstawiono niewidoczne zastępcze członki.

Obliczone elementy i nazwane zbiory utworzone w instrukcji SCOPE nie są objęte instrukcją SCOPE.

Example

Poniższy przykład, pochodzący ze skryptu obliczeń MDX w przykładowym rozwiązaniu Adventure Works, definiuje aktualny zakres jako kwartał fiskalny roku fiskalnego 2005 oraz miarę kwoty sprzedaży kwoty, a następnie przypisuje wartość komórkom w bieżącym zakresie za pomocą funkcji ParallelPeriod . Przykład następnie modyfikuje zakres za pomocą innego polecenia SCOPE, a następnie wykonuje kolejne przypisanie za pomocą funkcji 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 ;