@ANCEST
指定されたディメンション内で計算されている現在のメンバーの指定された世代またはレベルの祖先が戻されます。 オプションのmbrNameを指定すると、その祖先は指定したメンバーと結合されます。
このメンバー・セット関数は、そのパラメータがメンバーまたはメンバーのリストである別の関数のパラメータとして使用できます。
構文
@ANCEST (dimName, genLevNum [, mbrName])
パラメータ
ノート
-
FIX文では@ANCEST関数を使用できません。
-
@ANCEST関数は、式の左側と右側の両方で使用できます。 計算スクリプトの式の左側でこの関数を使用する場合は、メンバーに関連付けます。 例:
Sales(@ANCEST(Product) = 5;);
-
場合によっては、計算パフォーマンスの点を除いて、@ANCEST関数は@ANCESTVAL関数と同等です。 たとえば、次の2つの式は同等です:
Sales = @ANCEST(Product,2);
Sales = @ANCESTVAL(Product,2);
この場合、後者の式を使用すると、計算パフォーマンスが向上します。 通常、セルの暗黙的な値としてではなく、@ANCESTをメンバーとして使用します。 例:
Sales = @AVG(SKIPMISSING, @ISIBLINGS(@ANCEST(Product,2)));
-
「動的計算」または「動的計算および保管」としてタグ付けされたメンバーに関連付けられた式でこの関数を使用すると、取得および計算にかかる時間が大幅に長くなる可能性があります。
例
Sample Basicデータベースで、次のようにします:
Function Generated List
@ANCEST(Product,2,Sales) Colas->Sales, if the current member of
Product being calculated is Diet Cola.
@ANCEST(Measures,3,East) Total Expenses->East, if the current member of
Measures being calculated is Payroll.