@RANGE
あるディメンションの指定されたメンバー(mbrName)と別のディメンションの指定されたメンバー範囲(rangeList)を横断するメンバー・リストを戻します。 この関数は、@AVGRANGEなどの既存の範囲関数を置き換える、@AVGなどの範囲外の関数と組み合せることができます。
構文
@RANGE (mbrName [, rangeList])
パラメータ
ノート
この関数をディメンション間演算子(->)と組み合せてFIX文内で使用することはできません。
例
例 1
次の例は、Sample Basicデータベースに基づいています。@RANGEは、@AVGとともに使用して、西部のColasの平均販売を決定します。
FIX(Sales)
West=@AVG(SKIPBOTH,@RANGE(Sales,@CHILDREN(West)));
ENDFIX
計算スクリプトによってSalesが修正されるため、WestのSales値のみがwestern状態の値の平均になり、WestのCOGS値はwestern状態の合計になります。 この例では、次のレポートが作成されます:
Colas
Sales COGS
Actual Actual
Qtr3 Qtr4 Qtr3 Qtr4
==== ==== ==== ====
California 3401 2767 2070 1701
Oregon 932 1051 382 434
Washington 1426 1203 590 498
Utah 1168 1294 520 575
Nevada 496 440 222 197
West 1484.6 1351 3784 3405
例 2
次の例は、Sample Basicデータベースに基づいています。 Measuresディメンションに追加メンバーProd Countが含まれているとします。@RANGEは、@COUNTとともに使用して、データ値が存在するすべての製品の数を計算します:
"Prod Count" = @COUNT(SKIPMISSING,@RANGE(Sales,@CHILDREN(Product)));
この例では、次のレポートが作成されます SKIPMISSINGが式で指定されているため、Sales->Diet Drinksの#MI
値はデータ値としてカウントされません:
Jan New York Actual
Sales Prod Count
===== ==========
Colas 678 #MI
Root Beer 551 #MI
Cream Soda 663 #MI
Fruit Soda 587 #MI
Diet Drinks #MI #MI
Product 2479 4