@NONEMPTYTUPLE

@NONEMPTYTUPLE計算関数は、式の実行時に問合せでデータ依存セルのみを使用するように強制するために使用できるEssbase式ディレクティブです。リリース21c以降では、この関数のかわりに@QUERYBOTTOMUPを使用してください。

@QUERYBOTTOMUPは、Essbase 21cではこの関数に置き換ります。

式の前でこの関数を使用すると、式の実行時に問合せでデータ依存セルのみを使用するように強制できます。これにより、計算に必要な交差を特定して問合せ時間を最適化し、問合せ時間が入力データ・サイズと比例するようにします。

この関数は、式ディレクティブとして使用できます。数式が長く、多くのディメンション間演算子が含まれている場合は、数式仕様の前に使用することをお薦めします。このような数式を使用すると、数式キャッシュが大きくなり、スパース(比較的小さい入力データ・セットを持つ)になります。このディレクティブを使用すると、問合せの実行がボトムアップ・モードで発生し、数式キャッシュがスパースな場合に依存関係分析をすばやく解決できます。

構文

@NONEMPTYTUPLE [(nonempty_member_list)]

パラメータ

nonempty_member_list

オプション。現在のディメンション(この式が適用されるディメンション)からのメンバーのリスト。

nonempty_member_listで指定したメンバーのいずれかが空の場合、式はボトムアップ・モードで実行されます。nonempty_member_listが指定されていない場合、現在の数式の依存メンバーが空であれば、数式はボトムアップ・モードで実行されます。ほとんどのユースケースでは、nonempty_member_listを指定する必要はありません。数式構文の前に@NONEMPTYTUPLEを配置するだけで、ボトムアップの数式が実行されます。

次のアウトライン式の例は、Compensation Analyticsサンプル・キューブに基づいています。このサンプル・キューブのアプリケーション・ワークブックは、ApplicationsギャラリのHR Analysisディレクトリにあります。

@NONEMPTYTUPLE("Headcount under Target")
IF("Headcount under Target"!=#missing)
"Market Movement"*"Size %"->"Actual"->"Sep17"->"No JG"->"unassigned_OU"->"No Job Code"->"No EE"->"No_MktComp"*"BASE"*"Competitive Incr %"->"Actual"->"Sep17"->"No Region"->"No JG"->"unassigned_OU"->"No Job Code"->"No EE"->"No_MktComp";
ENDIF;

次の例は、計算スクリプトのユースケースです。

"Headcount under Target"(
@NONEMPTYTUPLE("COMPARATIO")
IF("COMPARATIO"!=#missing AND "COMPARATIO"<="Competitive Target"->"No JG"->"No Region"->"unassigned_OU"->"No EE"->"No Job Code"->"No_MktComp")
1;
ENDIF;)

関連項目

MDX最適化プロパティのNONEMPTYTUPLE

IGNORECONSTANTSアプリケーションの構成設定