使用計算命令
Essbase 計算命令可協助您彈性計算區塊儲存立方體中的資料。您可以設計命令檔,根據大綱計算資料、反覆計算或平行計算、限制為子集,以及宣告變數。您可以從計算指令集內自訂不同功能的行為。
本節主題探討依功能分組的計算指令。
計算 Essbase 大綱
控制計算流程
區塊儲存 Essbase 計算命令檔中的控制流程命令可協助您重複計算、平行計算,或將計算限制在立方體的子集。
下列命令會操控計算的流程:
表格 23-2 控制計算流程的命令清單
| 命令 | 運算 |
|---|---|
|
透過包含計算資料庫的子集 |
|
|
透過排除計算資料庫的子集 |
|
|
指定重複命令的次數 |
|
|
對命令區塊啟用平行計算 |
附註:
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 平行計算。 |
|
|
增加用來識別平行計算任務的維度數。請參考識別平行計算的其他任務。 |
|
|
控制 Essbase 如何標示智慧型計算的資料區塊。請參閱設定 CLEARUPDATESTATUS 命令。 |
|
|
開啟並關閉「在方程式上建立圖塊」設定,該設定會在您將非常數值指派給稀疏維度的成員時控制圖塊的建立。請參閱在稀疏維度中指派給成員的非常數值。 |
|
|
啟用潛在資料區塊的計算,並在結果不是 #MISSING 時儲存這些區塊。 |
|
|
最佳化大型資料庫大綱中稀疏維度公式的計算。請參考大型大綱中稀疏維度的公式。 |
|
|
顯示訊息給計算式監督和追蹤。 |
|
|
宣告用於計算命令檔的程式實際執行替代變數。請參閱在 Essbase 中執行之計算命令檔中的程式實際執行替代變數和在 Smart View 中執行之計算命令檔中的程式實際執行替代變數 |
|
在下列計算命令檔中, 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;另請參閱