使用計算命令

Essbase 計算命令可協助您彈性計算區塊儲存立方體中的資料。您可以設計命令檔,根據大綱計算資料、反覆計算或平行計算、限制為子集,以及宣告變數。您可以從計算指令集內自訂不同功能的行為。

計算 Essbase 大綱

下列 Essbase 計算命令會根據其大綱中的結構和公式來計算區塊儲存立方體。

表 23-1 計算立方體大綱的命令清單

命令 運算

全部計算

整個立方體,以大綱為基礎

CALC DIM

指定的一或多個維度

計算 TWOPASS

在標記為帳戶的維度上標記為兩階段的所有成員

附註:

請勿在混合模式立方體使用二次計算。只使用解決順序

membername

公式會套用至立方體大綱中的成員,其中 membername 是套用公式的成員名稱

CALC AVERAGE

在標記為帳戶的維度上標記為「平均」的所有成員

CALC FIRST

在標記為帳戶的維度上標記為「第一個」的所有成員

CALC LAST

在標記為帳戶的維度上標記為「最後」的所有成員

CCONV

幣別換算

控制計算流程

區塊儲存 Essbase 計算命令檔中的控制流程命令可協助您重複計算、平行計算,或將計算限制在立方體的子集。

下列命令會操控計算的流程:

表格 23-2 控制計算流程的命令清單

命令 運算

修正 ... 修正

透過包含計算資料庫的子集

EXCLUDE...ENDEXCLUDE

透過排除計算資料庫的子集

LOOP...ENDLOOP

指定重複命令的次數

修正平行 ...ENDFIXPARALLEL

對命令區塊啟用平行計算

您也可以使用 IFENDIF 命令來指定條件式計算。

附註:

Essbase 不允許從一個計算指令碼分支至另一個計算指令碼。

另請參閱

控制流程命令

在計算期間宣告資料變數

使用 Essbase 區塊儲存計算命令檔中的資料宣告命令來宣告和設定暫時變數的初始值,這些變數會儲存中間計算的結果。

您也可以在計算命令檔中使用替代變數。請參閱計算命令檔中的替代變數

表格 23-3 宣告資料變數的命令清單

命令 運算

阿拉伯文

宣告一維陣列變數

風險值

宣告包含單一值的暫時變數

執行緒變數

宣告一個可在 FIXPARALLEL...ENDFIXPARALLEL 區塊內使用的暫時變數。

儲存在暫時變數中的值只有在計算命令檔執行時才會存在。您無法報告暫時變數的值。

變數與陣列名稱都是包含下列任一字元的字元字串:

  • 字母 a – z

  • 數字 0 – 9

  • 特殊字元:$ (錢號)、# (井號) 及 _ (底線)

通常,陣列用於儲存屬於成員公式的變數。陣列變數的大小是由對應維度中的成員數目所決定。例如,如果 Scenario 維度有四個成員,下列命令會建立一個名為 Discount 的陣列,其中包含四個項目:

ARRAY Discount[Scenario];

您可以一次使用多個陣列。

指定計算的全域設定值

Essbase 計算命令檔的 SET 命令可協助定義區塊儲存計算之不同功能層面的行為。第一次出現的 SET 指令會保持有效,直到命令檔中出現相同 SET 指令為止。

下列命令定義計算行為:

表格 23-4 定義計算行為的命令清單

命令 運算

設定承兌

指定 Essbase 在計算期間如何處理 #MISSING 值

設定快取

調整預設計算器快取大小。請參考 Essbase 快取與計算效能

設定平行計算

啟用平行計算。請參閱啟用 CALCPARALLEL 平行計算

設定 CALCTASKDIMS

增加用來識別平行計算任務的維度數。請參考識別平行計算的其他任務

SET CLEARUPDATESTATUS

控制 Essbase 如何標示智慧型計算的資料區塊。請參閱設定 CLEARUPDATESTATUS 命令

SET CREATEBLOCKONEQ

開啟並關閉「在方程式上建立圖塊」設定,該設定會在您將非常數值指派給稀疏維度的成員時控制圖塊的建立。請參閱在稀疏維度中指派給成員的非常數值

設定 CREATENONMISSINGBLK

啟用潛在資料區塊的計算,並在結果不是 #MISSING 時儲存這些區塊。

設定 FRMLBOTTOMUP

最佳化大型資料庫大綱中稀疏維度公式的計算。請參考大型大綱中稀疏維度的公式

設定訊息

設定通知

SET TRACE

顯示訊息給計算式監督和追蹤

SET RUNTIMESUBVARS

宣告用於計算命令檔的程式實際執行替代變數。請參閱在 Essbase 中執行之計算命令檔中的程式實際執行替代變數在 Smart View 中執行之計算命令檔中的程式實際執行替代變數

設定 UPDATECALC

開啟或關閉智慧型計算

在下列計算命令檔中, Essbase 會在計算 Year 維度時,於詳細資料層級 (SET MSG DETAIL;) 顯示訊息,並在計算 Measures 維度時,於摘要層級 (SET MSG SUMMARY;) 顯示訊息:

SET MSG DETAIL;
CALC DIM(Year);

設定訊息摘要;

CALC DIM (評量);

某些 SET 計算命令會觸發資料庫的額外通過。

在下列計算命令檔中, Essbase 會在開啟 SET AGGMISSG 時計算 Qtr1 的成員組合,然後進行第二次計算通過資料庫,並計算關閉 SET AGGMISSG 的 East 成員組合:

SET AGGMISSG ON;
Qtr1;
SET AGGMISSG OFF;
East;

另請參閱

SET 指令