Execute Calculation
格納されている計算、格納されているデフォルト計算(alter databaseによって決定)または匿名(格納されていない)計算文字列を実行します。
最低限必要な権限:
-
保管済計算用(CALC-NAME): 計算へのアクセス権が付与されました。
-
匿名計算(CALC-STRING)およびデフォルト計算の場合: データベースの更新
キーワード
- execute calculation <calc-name>
-
指定された保管済計算スクリプトを実行します。
- <calc-name> on database
-
指定したデータベースに対して、指定したストアド計算スクリプトを実行します。
- <calc-string> on <dbs-name>
-
指定したデータベースに対して、本文が<calc-string>に含まれる匿名計算を実行します。
- default on <dbs-name>
-
指定したデータベースに対してデフォルトの計算を実行します。
- <calc-name> with runtimesubvars <rtsv-list>
-
RTSV-LISTで指定されたランタイム代替変数(キー/バリュー・ペアとして指定されたランタイム代替変数の文字列)を使用して、指定された保管済計算スクリプトを実行します。 文字列を一重引用符で囲み、キー/値ペアをセミコロン(文字列の最後のランタイム置換変数の後、および末尾の一重引用符の前のセミコロンを含む)で区切る必要があります。 このランタイム代替変数文字列の例では、4つのランタイム代替変数の名前と値が指定されています(たとえば、"a"という名前のランタイム代替変数の値は100です):
'a=100;b=@CHILDREN("100");c="Actual"->"Final";d="New York";'
ランタイム代替変数の文字列は64 KBを超えることはできません。
ノート:
計算スクリプトで使用されるランタイム代替変数は、SET RUNTIMESUBVARS計算コマンドで名前とデフォルト値を使用して宣言する必要があります。 RTSV-LISTで別の値が宣言されている場合、デフォルト値は実行時に上書きされます。
SET RUNTIMESUBVARSで宣言されていないランタイム代替変数をRTSV-LISTに含めると、Essbaseは宣言されていないランタイム代替変数を無視します(警告または例外は生成されません)。
計算スクリプトで使用されるランタイム代替変数は、ENABLERTSVLOGGING構成設定を使用してアプリケーション・ログ・ファイルに記録できます。 「Essbaseキューブの設計およびメンテナンス」の「ランタイム代替変数のロギング」を参照してください。
SET RUNTIMESUBVARS計算コマンドで宣言されたランタイム代替変数の名前が、RTSV-LISTで宣言されたランタイム代替変数と同じ場合、RTSV-LISTで指定された値によってSET RUNTIMESUBVARSのデフォルト値が上書きされます。
ノート
-
保管された計算は、アプリケーション内の特定のデータベース(データベース・レベル)またはアプリケーションのみ(アプリケーション・レベル)に関連付けることができます。 アプリケーション・レベルで格納された計算を実行するには、「データベースSTRING」文法を使用して、アプリケーション内のどのデータベースを計算するかを指定する必要があります。
-
計算スクリプトは、with runtimesubvars文法を使用してランタイム代替変数を参照できます。
例
execute calculation Sample.Basic.Calc1;
データベースに関連付けられているCalc1という名前のストアド計算スクリプト・ファイルを使用して、Sample.Basicデータベースを計算します。
execute calculation Sample.Calc2 on database Basic;
Sampleアプリケーションに関連付けられているCalc2という名前のストアド計算スクリプト・ファイルを使用して、Sample.Basicデータベースを計算します。
execute calculation
'SET MSG ERROR;
CALC ALL;'
on Sample.basic;
匿名(保管されていない)計算文字列を使用してSample.Basicデータベースを計算します。
execute calculation Sample.Basic.Calc3 with runtimesubvars ‘a=100;b=50;’;
データベースに関連付けられているCalc3という名前のストアド計算スクリプト・ファイルと、"a"という名前のランタイム代替変数の値が100で"b"の値が50の指定されたランタイム代替変数を使用して、Sample.Basicデータベースを計算します。