Smart View 中執行之計算命令檔中的程式實際執行替代變數

您可以在設計用於在 Smart View 中執行的 Essbase 計算指令碼中使用執行時期替代變數 (RTSV)。RTSV 可讓計算的焦點區域成為動態,視有效的方格環境定義 (POV) 而定。

若要使用包含智慧型檢視中執行時期替代變數的計算指令碼, SET RUNTIMESUBVARS 計算指令中的執行時期替代變數宣告必須包含 <RTSV_HINT> 標記。此外,<RTSV_HINT> 標記必須包含 <svLaunch> 標記。通常,<svLaunch> 標記會包含其他 XML 標記,提供中繼資料以在 Smart View 中執行計算指令碼。

使用下列語法定義用於智慧型檢視的執行時期替代變數定義:

SET RUNTIMESUBVARS
{
   rtsvName = POV
   <RTSV_HINT>
      <svLaunch>
         <description>rtsv_description</description>
         <type>member | string | number</type>
         <dimension>dimName</dimension>
         <choice>single | multiple</choice>
         <allowMissing>true | false</allowMissing>
      </svLaunch>
   </RTSV_HINT>
};

在上述定義中,程式實際執行替代變數名稱為 rtsvName,但您可以使用任何名稱。變數的值必須設為 POV,以表示只應計算試算表方格中目前的資料切片。

<RTSV_HINT> 元素也必須是變數宣告的一部分。其內容包括:

  • <description>:協助 Smart View 使用者瞭解成員選擇的描述區
  • <type>:變數是否用於成員、字串或數字的規格
  • <allowMissing>:如果應包含遺漏的資料,則為 true;否則為 false
  • <dimension>:此變數從中提取資訊的維度名稱
  • <choice>:如果只能將一個選擇傳送至執行時期替代變數,則 single;否則為 multiple

如需上述 XML 標記的完整描述,請參閱 XML 標記參考 - 計算指令碼與 Smart View 的執行時期替代變數

智慧型檢視中,當您在計算指令碼對話方塊中選取包含執行時期替代變數的計算指令碼時,執行時期提示區域會根據在 SET RUNTIMESUBVARS 計算指令中定義執行時期替代變數的方式,植入欄位。您可以依定義執行計算指令碼,也可以使用執行時期提示,根據資料類型輸入不同的變數資訊。

附註:

智慧型檢視中,如果 SET RUNTIMESUBVARS 命令未包含 <RTSV_HINT><svLaunch>...</svLaunch></RTSV_HINT> 標記,您就無法執行包含執行時期替代變數的計算命令檔。

範例:程式實際執行替代變數設為 POV

若要將 Essbase 計算指令碼的執行時期替代變數設定為 Smart View 作用中方格環境定義 (POV),則執行時期替代變數的值必須設定為 POV,且資料類型必須設定為 member,如本範例所示。

依預設,計算命令檔會在執行時期使用 POV 中的作用中成員,除非 Smart View 使用者在執行時期提示中指定不同的成員。

在此範例中,假設資料庫具有下列維度:Account、Entity、Period 和 Scenario。已定義三個執行時期替代變數 (名稱為 rtsvEntity、rtsvScenario 和 rtsvPeriod),每個變數的值都設為 POV。FIX 敘述句中會以 &rtsvEntity、&rtsvScenario 和 &rtsvPeriod 的形式參照程式實際執行替代變數。

SET RUNTIMESUBVARS {
   rtsvEntity = POV
      <RTSV_HINT>
         <svLaunch>
            <description>Entities to Copy</description>
            <type>member</type>
            <dimension>Entity</dimension>
            <allowMissing>false</allowMissing>
            <choice>multiple</choice>
         </svLaunch>
      </RTSV_HINT>;
   rtsvScenario = POV
      <RTSV_HINT>
         <svLaunch>
            <description>Scenarios to Copy</description>
            <type>member</type> 
            <allowMissing>false</allowMissing>
            <dimension>Scenario</dimension>
            <choice>multiple</choice>
         </svLaunch>
      </RTSV_HINT>;
   rtsvPeriod   = POV
      <RTSV_HINT>
         <svLaunch>
            <description>Period to Copy</description>
            <type>member</type>
            <allowMissing>false</allowMissing>
            <dimension>Period</dimension>
            <choice>single</choice>
         </svLaunch>
      </RTSV_HINT>;
}
FIX(&rtsvEntity, &rtsvScenario, &rtsvPeriod)
"Opening Balance" (
@PREV("Closing Balance");
)

變數宣告下方是一個 FIX 區塊,可選取計算的焦點區域,並執行命令來設定期間的期初餘額。程式實際執行替代變數會使用以下語法傳送至 FIX 區塊:&varname。因此,根據智慧型檢視中的 POV,計算的焦點區域是動態的。

附註:

使用 Essbase 工作介面、 MaxL 執行計算陳述式或 API (例如 REST API 執行工作端點) 時,您無法執行包含設為 POV 之執行時期替代變數的計算指令碼。由於這些內容相依於目前的 Smart View 方格內容,因此必須從 Smart View 執行。

XML 標記參照 — Smart View 之具有執行時期替代變數的計算命令檔

當您設計 Essbase 計算指令碼時,其執行時期替代變數是設計為根據 Smart View POV/ 方格環境定義執行時,您必須使用此處說明的一些 XML 標籤。

  • <RTSV_HINT>

    用於定義用於智慧型檢視之執行時期替代變數的必要標記。

  • <svLaunch>

    必要標記,指出已定義執行時期替代變數以用於 Smart View

    此標記是以下標記的父項標記:<description><type><dimension><choice><allowMissing>

  • <description>rtsv_description</description>

    rtsv_description 是描述程式實際執行替代變數的字串。字串不會用於計算。

  • <type>value</type>

    有效的資料類型值為:

    • 成員—執行時期替代變數值必須定義為成員 (單一成員名稱或以逗號分隔的成員名稱清單) 或 POV。

      附註:

      成員名稱必須以引號括住;例如,"New York" (單一成員) 或 "New York","Florida" (以逗號分隔的成員名稱清單)。

      如果執行時期替代變數值設為 POV,則 <type> 值必須是成員。另請參閱 <choice> 標記。

      使用 Essbase 工作或 MaxL,您無法執行包含設定為 POV 之執行時期替代變數的計算命令檔。這些計算命令檔是要從 Smart View 執行,因為 POV 取決於目前的方格環境定義來決定切片。

    • string — 執行時期替代變數值可以定義為單一成員名稱、以逗號分隔的成員名稱清單 (例如 "New York","Florida") 或日期。

      使用字串資料類型時,成員選擇對話方塊無法使用;因此,智慧型檢視使用者必須確定使用正確的語法 (以引號括住成員名稱,以逗號分隔多個成員名稱,或針對日期,將日期字串的格式與計算指令碼中所定義的格式相符— mm-dd-yyyy 或 dd-mm-yyyy)。

    • number — 執行時期替代變數值必須定義為數字

  • <dimension>dimName</dimension>

    維度的名稱。

    附註:

    只有在 <type> 值為成員時,才支援此 XML 標記。

  • <choice>value</choice>

    有效的選擇值為:

    • 單一值:

      • 如果方格或 POV 上有單一成員,則會使用該成員。

      • 如果維度在 POV 上,則會使用作用中成員。

      • 如果維度位於 POV 上且有多個成員,則會發生錯誤。

    • 多重—使用方格或 POV 上的所有維度成員。

    附註:

    只有在 <type> 值為成員時,才支援此 XML 標記。

  • <allowMissing>boolean</allowMissing>

    指定是否允許或隱藏資料庫中沒有資料的資料儲存格。

    有效值:true 和 false。