@LDESCENDANTS

Essbaseの@LDESCENDANTS計算関数は、メンバー・リストの子孫を、オプションで特定の世代またはレベルまで返します。

この関数は、指定したメンバーを除外します。

この関数を別の関数のパラメータとして使用できます。ここで、この関数にメンバーのリストが必要です。

構文

@LDESCENDANTS ((memberSetFunction) [,genLevNum])

パラメータ

memberSetFunction

メンバーのリストを返すメンバー・セット関数。

この関数の使用方法によって、許可されるメンバー・セット関数が決まります。次のガイドラインに従います。

  • この関数を単独で使用する場合(FIX文内ではない)、@LIST関数を使用し、メンバー名を指定する必要があります。例:

    @LIST(mbr1,mbr2,...)
  • @LDESCENDANTS関数をFIX文内で使用する場合、@UDA@ATTRIBUTEなどのメンバー・セット関数を使用できます。例:

    @UDA(dimName,uda)
    @ATTRIBUTE (attMbrName)

    この場合、@LISTを使用するかどうかを選択できます。たとえば、次の文はどちらも有効であり、文は同じ結果を返します。

    @ATTRIBUTEのみを使用する例は次のとおりです。

    FIX
    (@LDESCENDANTS(@ATTRIBUTE(Caffeinated_True),@ATTRIBUTE(Ounces_12),"200-40"))
    ...
    ENDFIX;

    @LIST@ATTRIBUTEを使用する例は次のとおりです。

    FIX
    (@LDESCENDANTS(@LIST(@ATTRIBUTE(Caffeinated_True),@ATTRIBUTE(Ounces_12),"200-40")))
    ...
    ENDFIX;

注意:

指定するメンバー・リストのすべてのメンバーが、同じディメンションからのものである必要があります。

genLevNum

オプション。メンバーを選択する上限の絶対世代番号または絶対レベル番号を定義する整数値。正の整数は世代番号を表します。0または負の整数はレベル番号を表します。

すべての例は、Sample.Basicデータベースに基づいています。

@LDESCENDANTS(@LIST("100","200","300"))

100-10、100-20、100-30 (100の子孫)を返します。200-10、200-20、200-30、200-40 (200の子孫)を返します。300-10、300-20、300-30 (300の子孫)を返します。

@LDESCENDANTS(@LIST("Market"),-1)

East、West、South、Central (指定したメンバーであるMarketのレベル1までの子孫)を返します。

FIX
(@LDESCENDANTS(@UDA(Market,"Major Market")))
...
ENDFIX;

New York、Massachusetts、Florida、Connecticut、New Hampshire (指定したメンバーであるEastの子孫)を返します。Illinois、Ohio、Wisconsin、Missouri、Iowa、Colorado (指定したメンバーであるCentralの子孫)を返します。California、Texas (指定したメンバー)は、これらが子孫を持たないため除外されます。

FIX
(@LDESCENDANTS(@ATTRIBUTE(Caffeinated_True),@ATTRIBUTE(Ounces_12),"200–40"))
...
ENDFIX;

指定したメンバー(100-10、100-20、200-10、300-30、カフェイン入り、12オンス飲料、200-40)のいずれも子孫を持たないため、空のリストを返します。