@XRANGE
Essbaseの@XRANGE計算関数は、同じレベルの2つの指定された単一メンバー間またはディメンション間メンバー間のメンバー範囲(両端を含む)を返します。
たとえば、時間ディメンションとシナリオ・ディメンションを操作する場合、2つを組み合せたディメンションを作成し、必要以上に多くの個別のメンバーを作成することになるかわりに、@XRANGEを使用して、時間とシナリオのメンバー・セットの組合せを返すことができます。
@XRANGEはメンバー・セット関数です。メンバー・セット関数は、メンバーのリストを返します。@XRANGEは、範囲が通常表示される数式の任意の場所に表示できます。
構文
@XRANGE (mbrName1, mbrName2)
パラメータ
ノート
-
@XRANGEの2つの引数は、両方が単一メンバーであるか、両方がディメンション間メンバーである可能性があります。たとえば、
@XRANGE(Actual->Jan, Budget)
は、単一のメンバーとディメンション間メンバーが一緒に使用されているため無効です。@XRANGE(Actual->Jan, Budget->Feb)
と@XRANGE(Jan, Mar)
はどちらも有効です。 -
メンバーのディメンションの順序は、両方の引数で一致する必要があります。たとえば、
@XRANGE(Actual->Jun, Jul->Budget)
は、2つのメンバー・コンポーネントの順序が異なるため、無効です。@XRANGE(Actual->Jun, Budget->Jul)
は有効です。 -
構文は正しいものの、
@XRANGE (Dec, Mar)
のような関数は、空のセットになるため、意味がありません。 -
各引数のメンバー・コンポーネントは、同じレベルからのものである必要があります。たとえば、
@XRANGE(Actual->Jun, Budget->Qtr1)
は、JunとQtr1が同じレベルからでないため、無効です。
例
次の例は、Sample Basicデータベースに基づいています。
例1
単純なメンバーを使用してJanからMarまでの範囲を返す非常に単純な例を次に示します。
@XRANGE(Jan, Mar)
この例では、次のメンバーが返されます。
Jan
Feb
Mar
例2
ディメンション間メンバーを使用して、Actual、JanとBudget、Marの間の範囲を返す非常に単純な例を次に示します。
@XRANGE (Actual->Jan, Budget->Mar)
この例では、次のメンバーが返されます。
Actual, Jan
Actual, Feb
Actual, Mar
Actual, Apr
Actual, May
Actual, Jun
Actual, Jul
Actual, Aug
Actual, Sep
Actual, Oct
Actual, Nov
Actual, Dec
Budget, Jan
Budget, Feb
Budget, Mar
例3
この例は、Sample Basicデータベースに基づいていません。これは、2001年から2003年までの各年のメンバーを含むYearというディメンションを含むデータベースに基づいています。
次の式は、2000年5月から2001年1月までのすべての月の平均売上高を計算します。
SalesAvg= @MOVAVG(Sales, 3, @XRANGE("2000"->Mar, "2001"->Jan));
この例では、次のメンバーが返されます。
Colas New York Actual
Sales SalesAvg
===== ========
2000
Mar 678 678
Apr 645 645
May 675 666
Jun 712 677.3
Jul 756 714.3
Aug 890 786
Sep 924 856.7
Oct 914 909.3
Nov 912 916.7
Dec 723 849.7
2001
Jan 647 760.7