計算スクリプトを使用したキューブの計算
計算スクリプトは、Essbaseブロック・ストレージ・アウトライン式より優先され、これにより、キューブの計算フローをより細かく制御できます。論理計算フローの制御、計算での過大評価の防止、データのクリアができます。計算スクリプトでは、データ・サブセットをコピー、エクスポートおよび計算することや、頻繁に変更される情報について変数を実装することもできます。
計算スクリプトには一連の計算コマンド、等式および関数が含まれており、それらを使用して、データベース・アウトラインによって決定されるフローよりも具体的に計算を制御できます。
計算スクリプトでは、デフォルトの計算(CALC ALL)またはユーザーが選択した計算(データベースの一部の計算、メンバー間でのデータ値のコピーなど)を実行できます。
次のタスクを実行するには、計算スクリプトを記述する必要があります。
-
データベースのサブセットを計算します
-
データベース内の密ディメンションと疎ディメンションの計算順序を変更します
-
特定の順序で複雑な計算を実行する場合や、データ全体で複数の繰返しを必要とする計算を実行します(たとえば、一部の2パス計算には計算スクリプトが必要です)
-
勘定科目タグがないディメンションで2パス計算を実行します
-
データベース・アウトラインの式とは異なるメンバー式を計算します(計算スクリプトの式は、データベース・アウトラインの式を上書きします)
-
APIインタフェースを使用してカスタム計算を動的に作成します
-
計算でフロー・ロジックの制御を使用(たとえば、IF…ELSE…ENDIFまたはLOOP…ENDLOOPコマンドを使用)します
-
特定のメンバーのデータをクリアまたはコピーします
-
データベース計算に使用する一時変数を定義します
-
データベース・アウトラインの式または勘定科目プロパティを変更した後に、強制的にデータ・ブロックを再計算します
-
データベースを計算するときにEssbaseで高機能計算を使用する方法を制御します
次の計算スクリプトでは、Year、Measures、MarketおよびProductディメンションからActual値を計算します。
FIX (Actual)
CALC DIM(Year, Measures, Market, Product);
ENDFIX
計算スクリプトは、スクリプト・エディタを使用して作成できます。計算スクリプトの作成を参照してください。
Smart Viewから計算スクリプトを実行する場合は、ファイルに.csc
拡張子が必要です。ただし、計算スクリプトはテキスト・ファイルであるため、MaxL使用してテキスト・ファイルを計算スクリプトとして実行できます。