機械翻訳について

@SHIFTMINUS

@SHIFT@PRIORまたは@NEXTのかわりに使用して、算式が次の基準を満たす場合にパフォーマンスを向上させることができます:

  • 算式はCELLモードで実行されています。

  • 式には、次のいずれかのパターンがあります:

    X = Y - @SHIFT(mbrName [,n, XrangeList])

    または:

    X = Y - @PRIOR(mbrName [,n, XrangeList])

    または:

    X = Y - @NEXT(mbrName [,n, XrangeList])

これらの基準を満たす場合は、パフォーマンスを向上させるために、ブロック・モードで式を実行する@SHIFTMINUSを使用して式をリライトすることを検討してください。

Note: この関数をセル・モードで実行される関数と組み合せて使用すると、依存性を解決するためにセル・モードでの実行が必要になる場合があります。 式がセル・モードで実行されたかどうかを判断するには、ログで次の情報メッセージを確認してください: Formula for member [mbrName] will be executed in [CELL] mode セル・モードを使用する関数の詳細は、@CALCMODEのトピックを参照してください。

構文

@SHIFTMINUS (mbrName1, mbrName2 [,n, XrangeList])

パラメータ

mbrName1

任意の有効な単一メンバー名、または単一メンバーを戻す関数。

mbrName2

任意の有効な単一メンバー名、または単一メンバーを戻す関数。

n

オプションの符号付き整数。nは、メンバー名などの参照ではなく、数値である必要があります。 @SHIFTMINUSを使用して@NEXT関数を置き換える場合は、nの値として1を使用します。 @SHIFTMINUSを使用して@PRIOR関数を置き換える場合は、nの値として-1を使用します。 デフォルト値は+1です。

XrangeList

メンバーの順次範囲を指定するオプションのパラメータ。 範囲が指定されていない場合、EssbaseはTimeとしてタグ付けされたディメンションのレベル0のメンバーを使用します。

有効なメンバー名、メンバー名のカンマ区切りリスト、ディメンション間メンバー、またはメンバー・セット関数または範囲関数(@XRANGEを含む)からの戻り値を指定できます。

rangeListおよびXrangeListの詳細は、「範囲関数と財務関数」のトピックの「範囲リスト・パラメータ」を参照してください。

次の例は、@SHIFT()を使用した式を示しています。

Sales = Loss - @SHIFT(Sales, 1);

@SHIFTMINUS()を使用してパフォーマンスを向上させる式を次に示します:

@SHIFTMINUS (Loss, Sales, 1)

次の例は、YearディメンションがSample Basicに追加されていることを前提としています。

FIX("South", "East")
Sales = @SHIFTMINUS (COGS, Sales, 1, @XRANGE("2018"->"Sep", "2019"->"Mar"));
ENDFIX;

前述の計算は、XrangeListで指定された次の多ディメンション範囲で実行されます:


2018->Sep
2018->Oct
2018->Nov
2018->Dec
2019->Jan
2019->Feb
2019->Mar

関連項目

@SHIFTPLUS

@CALCMODE (ブロック計算モードおよびセル計算モードの説明)