跳至主要内容
Adaptive Planning
上次更新时间 :2023-06-23
计算型账户特定于版本的公式变更

计算型账户特定于版本的公式变更

This article includes suggestions and workarounds. Content may not be accurate for all use cases or represent best practices for the latest release.

问题

是否可以对模型化工作表的计算型账户中的公式进行特定于版本的变更?

答案

在这种情况下,有两种选择。第一种是使用点记法来引用特定版本名称或描述。上文已对此进行了详细介绍。与工作表假设相比,建议使用此设置。您可以构建一个公式,例如 if(search(this.version.description,"New")>0,New_Formula,Old_Formula),该公式会查看版本描述中是否包含单词“New”,则系统将使用新公式,否则在描述中不含“新建”的历史版本中,仍将使用旧公式。
选项二使用假设。工作表假设因版本而异,如果您使用下文所述的流程,则可将公式变更设为特定于版本。第一步是添加工作表假设以用作触发器,第二步是修改计算型账户公式以引用此公式。在此示例中,我将使用以下公式作为当前公式:
ROW.Salary+(ROW.Salary*ROW.Commissions)
添加以下公式作为新公式:
Row.Salary+(Row.Salary*Row.Commissions*Row.Adjustment)
如要添加工作表假设,请执行以下步骤:
  1. 转至
    “建模”>“按层级指定的工作表”
    。选择相应的工作表。在此示例中,我选择了“人员”工作表。
  2. 在左下角,单击“工作表假设”选项卡。
  3. 单击“+”号以添加新的工作表假设。在此示例中,我们将工作表假设命名为“触发器”。
  4. 对于您希望新公式计算的版本时段,在新的工作表假设中填入 1。
  5. 如果版本的“左侧滚动限制”与计划开始日期
    不同
    ,并且您正在修改的公式用于初始余额元素(例如单位薪资),则
    在该版本可用的所有时段中输入触发器。为此,请单击“显示和隐藏”选项,然后选择所有月份作为可查看时间。
    范围
    将所有时段的触发器设置为“1”。
成功添加工作表假设后,保存工作表。然后,您将返回到工作表构建器并修改实际公式。
当前公式为:
ROW.Salary+(ROW.Salary*ROW.Commissions)
如要修改公式,您需要添加以下语法:
If(Assum.Personnel.Trigger=1, New Formula Syntax, Old Formula Syntax)
如果您使用新公式,则可以将其转换为就好像您创建的“触发器”中为某个时段填充了“1”。如果公式中没有 1,则使用旧公式。由于工作表假设触发器将特定于版本,因此新公式将仅在您为其填充 1 的版本中出现。
最终公式可能如下所示:
If(Assum.Personnel.Trigger=1, Row.Salary+(Row.Salary*Row.Commissions*Row.Adjustment), ROW.Salary+(ROW.Salary*ROW.Commissions))
此新公式将特定于版本,并且仅在为触发器工作表假设填充“1”的版本中进行计算。