手动解决性能问题的方法

检查规则设计是否不佳

为了确保获得正确结果和最佳性能,最佳做法是始终指定要针对其运行计算的维和成员。

将计算范围限于所需的维和成员,才能获得最佳合并规则性能。如果未将必要的维和成员添加到计算中,则会强制针对所有可能的成员组合来运行规则。例如,以下示例规则要求仅针对自定义维成员 No Department 运行计算。通过使规则仅针对 No Department 运行,在源中添加维成员可加快执行速度。
示例规则集插图

检查规则源(帐户维)中是否存在多个存储成员

当合并规则源中的多个 0 级存储帐户重定向到单个目标帐户时,性能可能会下降。在这种情况下,Oracle 建议您创建具有存储性数据存储的占位符帐户成员,并以 FCCS_110(单货币应用程序)或 FCCS_30(多货币应用程序)编写插入规则,以将子代金额重定向到该规则中。然后,您可以在合并规则源中使用占位符帐户来代替动态父代,以确保更快地执行规则。

用例:部署可配置合并规则后解决性能问题

本示例假定动态父代 Retained Earnings Current(这是应用程序中众多损益帐户之一)下存在 100 个损益帐户(从 Acc_001 到 Acc_100)。请参阅下图。
具有许多存储成员的示例动态父代

下图展示了直接或通过引用间接使用 Retained Earnings Current 作为源的规则。
使用直接引用的示例规则


使用间接引用的示例规则
在上述间接引用中,Retained Earnings Current 的所有 0 级子代都是间接源的一部分,因为其属于 Total Equity

要更改规则定义和添加重定向脚本以加快规则执行速度,请执行以下步骤:

  1. 创建占位符帐户。

    在 FCCS_BalanceSheet 下创建名为 Retained Earning_Memo 的备忘帐户。将合并运算符设置为忽略 (~),并将数据存储设置为“存储”。所有其他属性都将与动态父代的属性相同。如下图所示,Retained Earning_Memo 占位符帐户将持有 Retained Earnings Current 的值。
    示例备忘帐户

  2. 刷新多维数据集。
  3. 在 FCCS_30 中,将源收入值复制到 Retained Earning_Memo。可使用以下示例脚本将子代值复制到 Retained Earning_Memo。务必根据需要修改该脚本,以满足您的要求。有关优化可配置计算性能的最佳做法的信息,请参阅《管理 Financial Consolidation and Close》中的“可配置计算最佳做法”。
    SET HYBRIDBSOINCALCSCRIPT NONE;// Use with Hybrid environments only.
    FIX("FCCS_Entity Input", "Parent Currency", "Opening Balance", @RELATIVE("FCCS_Total Data Source", 0), @RELATIVE("FCCS_Intercompany Top", 0))
            "Retained Earning_Memo" (
               @CALCMODE(BOTTOMUP);
               @SUM(@RELATIVE("FCCS_Retained Earnings Current", 0) AND @LIST(@UDA("Account", "REVENUE") OR @UDA("Account", "LIABILITY") OR @UDA("Account", "EQUITY") OR @UDA("Account", "SAVED ASSUMPTION"))) - @SUM(@RELATIVE("FCCS_Retained Earnings Current", 0) AND @LIST(@UDA("Account", "EXPENSE") OR @UDA("Account", "ASSET")));
            ) 
    ENDFIX
  4. 在使用 Retained Earnings Current 的可配置合并规则中,使用 Retained Earning_Memo 作为源。
    1. 如果在源中直接使用 ILvl0Descendants(Retained Earnings Current):下图显示了在此用例中实施建议之前的规则。
      不使用备忘帐户的规则插图

      下图显示了在此用例中实施建议之后的规则。
      使用备忘帐户的规则插图

    2. 如果间接使用 ILvl0Descendants(Retained Earnings Current):下图显示了在此用例中实施建议之前的规则。
      不使用备忘帐户的规则插图

      下图显示了在此用例中实施建议之后的规则。
      不使用备忘帐户的规则插图