MDX スクリプティング - SCOPE

指定された多次元式 (MDX) ステートメントのスコープを指定されたサブキューブに限定します。

構文

  
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
1 つの組です。

解説

SCOPE ステートメントは、1 つ以上の 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 ;     

参照

MDX スクリプト ステートメント (MDX)