@LANCESTORS
指定されたメンバー・リストのメンバーのすべての祖先、または指定された世代またはレベルまでのすべての祖先を戻します。 この関数は、指定されたメンバーを除外します。
この関数を別の関数のパラメータとして使用できます。関数にはメンバーのリストが必要です。
構文
@LANCESTORS ((memberSetFunction) [,genLevNum])
パラメータ
- memberSetFunction
-
メンバーのリストを戻すメンバー・セット関数。
@LANCESTORS関数の使用方法によって、許可されるメンバー・セット関数が決まります。 次のガイドラインに従います。
-
@LANCESTORS関数を(FIX文内ではなく)単独で使用する場合は、@LIST関数を使用してメンバー名を指定する必要があります。 例:
@LIST(mbr1,mbr2,...)
-
@LANCESTORS関数がFIX文内で使用されている場合は、@UDAや@ATTRIBUTEなどのメンバー・セット関数を使用できます。 例:
@UDA(dimName,uda)
@ATTRIBUTE (attMbrName)
この場合、@LISTを使用するかどうかを選択できます。 たとえば、次の文は両方とも有効で、文は同じ結果を返します。
@ATTRIBUTEのみを使用する例:
FIX(@LANCESTORS(@ATTRIBUTE(Caffeinated_True),@ATTRIBUTE(Ounces_12),"200-40")) ... ENDFIX;
@LISTおよび@ATTRIBUTEの使用例:
FIX(@LANCESTORS(@LIST(@ATTRIBUTE(Caffeinated_True),@ATTRIBUTE(Ounces_12),"200-40"))) ... ENDFIX;
注意:
指定したメンバー・リストのすべてのメンバーは、同じディメンションのものである必要があります。
-
- genLevNum
-
オプション。 メンバーを選択する上限の絶対世代番号または絶対レベル番号を定義する整数値。 正の整数は世代番号を表します。 0または負の整数はレベル番号を表します。
例
すべての例は、Sample.Basicデータベースのものです。
@LANCESTORS(@LIST("100–10”,"200–20”),2)
100 (100-10の祖先)および200 (200-20の祖先)を返します。 Productは第1世代であるため除外されます。
@LANCESTORS(@LIST(“100”,“100–10”))
Product (100の祖先)および100 (100-10の祖先)を戻します。 結果に重複メンバーは含まれません。
@LANCESTORS(@LIST(“100”,“Product”,“200”))
Product (100および200の祖先)を返します。 結果に重複メンバーは含まれません。
FIX(@LANCESTORS(@UDA(Market,“New Market”)),2)
...
ENDFIX;
West、SouthおよびCentral (New Market属性に関連付けられているMarketディメンションのメンバーの世代2の祖先)を返します。
FIX(@LANCESTORS(@ATTRIBUTE(Caffeinated_True),@ATTRIBUTE(Ounces_12),"200–40”))
...
ENDFIX;
100、200、300およびProduct (100-10、100-20、200-10、300-30-caffeinated、12-ounce drinksおよび200-40の祖先)を返します。