機械翻訳について

レベルおよび世代の操作

MDXでは、layerEssbase階層内の世代およびレベルを参照します。

Essbaseでは、世代番号はディメンション名の1から始まります。世代番号が大きいほど、階層内のリーフ・メンバーに最も近い番号になります。

レベル番号は階層の左端の部分で0から始まり、最上位レベル番号はディメンション名です。

MDX関数の多くは、入力引数として指定したレイヤーを使用し、レイヤー引数で表された世代またはレベルに基づいて設定操作を実行します。

レイヤー引数は、次の方法で指定できます:

  • 世代名またはレベル名(StatesRegionsなど)。

  • ディメンション名と世代名またはレベル名(Market.Regions[Market].[States]など)。

  • ディメンションおよびレベル番号を入力とするレベル関数。 たとえば、[Year].Levels(0)などです。

  • メンバーを入力とするLevel関数。 たとえば、[Qtr1].Levelは、Marketディメンションのレベル1であるSample.Basicの四半期のレベルを返します。

  • ディメンションおよび世代番号を入力とするGenerations関数。 たとえば、[Year].Generations (3)などです。

  • メンバーを入力とする世代関数。 たとえば、[Qtr1].Generationは、Marketディメンションの第2世代であるSample.Basicの四半期の生成を返します。

ノート:

Sample.Basicデータベースでは、Qtr1とQtr4は同じレイヤーにあります。 つまり、Qtr1とQtr4も同じ世代です。 ただし、不規則階層を持つ別のデータベースでは、Qtr1とQtr4が同じ世代であっても、必ずしも同じレベルであるとはかぎりません。 たとえば、Qtr1の階層が週にドリルダウンし、Qtr4の階層が月に停止した場合、Qtr1はQtr4よりも上位のレベルになりますが、同じレイヤーになります。

演習: Members関数の使用

Members関数を使用して、指定した世代またはレベルのすべてのメンバーを戻します。 layer引数とともに使用する場合、構文は次のとおりです:

Members (layer)

ここで、layer引数は、戻すメンバーの世代またはレベルを示します。

ノート:

Membersの代替構文は、layer .Membersです。

Members関数を使用するには:

  1. 問合せの要素の理解から作成した問合せテンプレートであるqry_blank.txtを開きます。
  2. 中カッコ{}を削除します。
  3. メンバー関数およびレベル関数を使用して、Sample.BasicのMarketディメンションのすべてのレベル0メンバーを選択します:
    SELECT
      Members(Market.levels(0))
    ON COLUMNS
    FROM Sample.Basic
  4. 問合せをqry_members_func.txtとして保存します。
  5. 演習: 最初の問合せの実行の説明に従って、問合せをMaxLクライアントに貼り付けて実行します。

結果: Marketディメンションのすべての状態が返されます。