サンプル10: 式の使用
このEssbaseレポート・スクリプトのサンプルは、列計算式を使用して特定の行または定数の列値を操作する方法を示しています。
このレポート・サンプルで、各%列は、該当する四半期のSalesのパーセントとしての四半期の値を表します。さらに、Avg列は2つの四半期の平均値を表します。
Actual Product Market
Qtr1 % Qtr2 % Avg
======== ====== ======== ====== ========
Sales 141,245 100.00 136,193 100.00 138,719
Cost_of_Goods_Sold 58,104 41.14 56,281 41.32 57,193
Margin 83,141 58.86 79,912 58.68 81,527
Marketing 11,211 7.94 11,302 8.30 11,257
Payroll 43,817 31.02 43,827 32.18 43,822
Miscellaneous 302 0.21 1,859 1.36 1,081
Total_Expenses 55,330 39.17 56,988 41.84 56,159
Profit 27,811 19.69 22,924 16.83 25,368
Profit_% 20 0.01 17 0.01 18
Margin_% 59 0.04 59 0.04 59
次のスクリプトを使用してサンプル10を作成します。
// This report performs column calculations based on values in a
// report row.
<PAGE (Scenario, Product, Market)
Actual
<COLUMN (Year)
Qtr1 Qtr2
{ DECIMAL 2 3 4 }
{ NAMEWIDTH 22 WIDTH 7 3 4 }
{ ORDER 0 1 3 2 4 5 }
<ROW (Accounts)
{ SAVEROW } Sales
!
{ CALCULATE COLUMN "%" = 1 % "Sales" 1 }
{ CALCULATE COLUMN "% " = 2 % "Sales" 2 }
{ CALCULATE COLUMN "Avg" = 1 + 2 / 2. }
<DESCENDANTS Accounts
!
ノート:
レポートにコメントを含めるには、テキストの前に//を付けます。レポート・エクストラクタでは、二重スラッシュの後に続くものはすべて無視されます。レポートの処理を説明するためにコメントを使用できます。
SAVEROWコマンドでは、CALCULATE COLUMNコマンドで計算される行メンバーのスペースが予約されます。この場合、計算はSALESに影響します。メンバー名の後に!が必要です。
CALCULATE COLUMNコマンドでは、式に列番号、行名または定数を使用できます。最初の計算は次のように解釈できます: %は、列1のSalesのパーセントとして列1に等しい。
計算済の各列のラベルは一意である必要があります。2番目の計算済列ラベルで、%符号の後に空白スペースがどのように配置されているかに注意します。
定数を指定するには、数値とその後のピリオドを定義します。列または行の計算のいずれかに1つの定数を使用できます。最後の列計算では、列1と2の和が値2で除算されます。この式は(1+2)/2として解釈され、1 + (2/2.)とは解釈されません。
サンプル7: 別名の使用に示すように、ORDERコマンドでは列が指定された順序で配置されます。デフォルトでは、計算済列はデータベースから取得された既存の列の末尾に追加されます。この例で列0-2は、選択したメンバーに基づいて自動的に取得されます。列3-5は計算済列です。ORDERコマンドは、取得済列と計算済列の両方に適用されます。