FCCSImpact 狀態函數

@FCCSImpactStatus 函數可讓您手動將所指定「案例」、「年度」、「期間」與「實體」組合的狀態變更為「受影響」。例如,如果系統計算特定實體之「實際」案例的「淨收入」值,則您可能想要系統影響稱為 Forecast 的另一個案例中相同年度和期間的相同實體。不論目前狀態為何,此函數都會將計算狀態變更為「受影響」。

@FCCSImpactStatus 函數可以用於「可設定的計算」(插入規則) 和「隨需規則」。請參閱使用可設定的計算使用隨需規則

語法:

@FCCSImpactStatus(Scenario, Year, Period, Entity)

您可以為函數選取這些參數:

  • 案例 - 單一成員。選取項目必須是層級 0 成員。

  • 年度 - 單一成員。選取項目必須是層級 0 成員。

  • 期間 - 單一成員。選取項目必須是層級 0 成員 (而不是 Q1 或 HY1 這類父項)。

  • 實體 - 單一成員或是函數或清單。同時支援層級 0 和父項成員。

它支援 @CURRMBR、@PREVSIBLING、@NEXTSIBLING、@LIST 這類函數。

對於實體,使用特定「成員名稱」支援「成員集」函數的清單類型,而不是 @CURRMBR("Entity")。例如:

  • 子代 (包括)

  • 子項 (包括)

  • 祖代 (包括)

  • 同層級 (包括)

  • 父項 (包括)

  • 第 0 級子代

  • 左邊同層級 (遞增)

  • 右邊同層級 (遞增)

  • 上一層級 0 成員

  • 下一層級 0 成員

  • 上一代

  • 下一代

  • @List

對於「案例」、「年度」、「期間」和「實體」維度,支援 @CURRMBR 以指出與處理目前成員相同。

對於「案例」、「年度」、「期間」和「實體」維度,只有在直接與 @CURRMBR 函數一起使用時,才支援 @NEXTSIBLING 和 @PREVSIBLING 函數。使用 @CURRMBR(..) 函數支援下列三個組合:

  • @CURRMBR("Scenario/Years/Period/Entity")

  • @PREVSIBLING(@CURRMBR(…))

  • @NEXTSIBLING(@CURRMBR(…))

對於「實體」維度,支援 @LIST 函數,其中,項目可以是 @CURRMBR("Entity") 或其有效組合。例如,「實體」欄位上的下列陳述式有效:

  • @LIST(@CURRMBR("Entity"), "LE-0011-EUR" @SIBLINGS("LE-0016-BRL"))

  • @LIST(@PREVSIBLING(@CURRMBR("Entity")),

  • @NEXTSIBLING(@CURRMBR("Entity")), @IAncestors("LE-0011-EUR"));

不論目前計算狀態為何,系統都會影響 @FCCSImpactStatus 函數中指定的「案例/年度/期間/實體」,以及影響所有適用的父項和祖代。影響所有具有資料的未來期間。

如果實體具有共用實體,則會影響主要實體和其所有共用實體,也會影響其對應的父項和祖代。系統不會影響鎖定的實體。

當您在「可設定計算」(插入規則) 中使用 @FCCSImpactStatus 函數時,影響狀態驗證程式會偵測錯誤,而且可能會導致整合程序在指令碼產生期間失敗。預設情況下,會啟用名為 DisableImpactStatusConsolValidation 的替代變數,它允許「影響狀態」規則語義驗證程式忽略驗證錯誤,並繼續執行「整合」規則。如果您將替代變數值設定為 False,驗證程式會顯示「影響狀態」錯誤以及詳細資料。

範例:在可設定計算中使用 @FCCSImpactStatus 函數
可設定計算中的範例函數

下例範例顯示範例 Impact Status 計算指令碼。


範例 Impact Status 函數指令碼

下例範例顯示 @FCCSImpactStatus 函數對各種「案例/年度/期間/實體」組合的影響。

範例 1:特定案例/年度/期間/實體的明確影響

@FCCSImpactStatus("Budget", "FY16", "Jan", "GBP E2")

選取 "Actual/FY16/Jan/EUR #1" 以執行隨需規則。

此函數將會明確地影響 "Budget/FY16/Jan/GBP E2" 以及 Budget/FY16/Jan 中的 GBP2 E2 祖代。

也會影響父項成員 "EUR D1"。


Impact Status 範例 1

範例 2:影響不同的案例但是相同的年度/期間/實體

@FCCSImpactStatus("Budget",@CURRMBR("Years",@CURRMBR("Period"),@CURRMBR("Entity")

選取 "Actual/FY16/Feb/EUR E1" 以執行隨需規則。

它將明確地影響 "Budget/FY16/Feb/EUR E1" 以及 Budget/FY16/Feb 中的 EUR E1 祖代。

也會影響二月的父項成員 "EUR D1"。


Impact Status 範例 2

範例 3:使用 @List 函數影響目前案例/年度/期間但不同的實體

@FCCSImpactStatus("@CURRMBR"("Scenario"), @CURRMBR("Years"), @CURRMBR("Period"),@LIST("EUR E3", "USD E4")

選取 "Actual/FY16/Mar/EUR E1" 以執行隨需規則。

它將明確地影響 "Actual/FY16/Mar/EUR E3 and USD E4" 以及 Actual/FY16/Mar 中的 EUR E3 和 USD E4 祖代。

也會影響三月的對應父項 "USD D2"。


Impact Status 範例 3

範例 4:影響目前案例/年度/實體但是下一個期間

@FCCSImpactStatus("@CURRMBR"("Scenario"), @CURRMBR("Years"), @NEXTSIBLING(@CURRMBR("Period")),@CURRMBR("Entity"))

選取 "Actual/FY16/Apr/EUR E1" 以執行隨需規則

它將明確地影響 "Actual/FY16/May/EUR E1" 以及 Actual/FY16/May 中的 EUR E1 祖代。

也會影響五月的對應父項 "EUR D1"。


Impact Status 範例 4

範例 5:使用 Calculation Manager RTP 值的影響案例/年度/期間/實體

FIX("FCCS_Periodic", "Custom1", " Custom2", "FCCS_No Intercompany", " Custom3", "FCCS_Data Input","FCCS_Entity Input","FCCS_No Movement")
        "Account"(
                @FCCSImpactStatus({Scenario},{Years},{Period},@IDESCENDANTS({Entity})) ;
        )
ENDFIX

此指令碼會使用在執行隨需規則期間提供之「計算執行時期提示」值中的案例、年度、期間和實體值。

它會影響具有父項實體的實體及其所有子代。

其他使用案例

下列範例顯示 @FCCSImpactStatus 函數的其他使用案例和其結果。


Impact Status 使用案例

假設您使用此「實體階層」,並整合 Actual/FY19/Nov/P02 以及使用 @FCCSImpactStatus 函數:

使用案例 1:@FCCSImpactStatus("Actual", "FY19", "Nov", "E03")

因為實體 E03 是 P02 的子代 (而且案例、年度和期間相同),所以不會有所影響。

使用案例 2:@FCCSImpactStatus("Actual", "FY19","Nov", "E04")

實體 E04 不是 P02 的子代。將會有所影響。

使用案例 3:@FCCSImpactStatus("Actual", "FY19","Dec", "E03")

即使實體 E03 是 P02 的子代,Dec. 還是 11 月之後的期間,因此它將會受到影響。

使用案例 4:@FCCSImpactStatus("Actual", "FY19", "Oct", "E03")

不會有所影響。我們正在整合 Actual/FY19/Nov/P02,這表示 Actual/FY19/Nov 中的 P02 和其所有子代 (包括 E03) 將會變成正常。

使用案例 5:@FCCSImpactStatus("Actual", "FY19", "Oct", "E04")

將會有所影響。實體 E04 不是 P02 的子代。