ASO 账户维中的时间余额和流度量

Essbase 聚合存储 (ASO) 多维数据集上的“剩余时间”属性可沿“时间”维提供内置计算。流标记可帮助您优化与时间相关的帐户的计算。流度量是一种未签名的帐户维成员,用于存储定期值和年初至今值。

在 ASO 账户维中使用剩余时间标记

您可以在聚合存储帐户维上设置“Time Balance(剩余时间)”属性,以沿“Time(时间)”维提供内置计算。这样可以节省使用成员公式以实现时间平衡功能的时间和性能开销。

存储的帐户维成员或含公式帐户维成员支持以下时间平衡属性:

  • 时间余额优先,上次时间余额平均值

  • 跳过无,跳过缺失

考虑人力资源应用程序中存储的度量,如人数。在“年 - 季 - 月”层次结构中,在月级别加载人数数据。

所需的年度或季度人数值不是其月数之和;相反,它应该是某个时间段内最后记录的值。

使用 SKIPMISSING 将人数标记为“最后剩余时间”意味着,对于 2005 年,其值是其月份中人数的最后一个非空值。如果 Dec 具有非缺少的人数值,则将返回该值;否则,如果不缺少,将检查并返回 Nov 值。

如果含公式的成员具有时间余额标记,则仅为 0 级时间成员执行公式,并根据时间余额标记汇总时间维。

时间余额标记提供沿时间维的内置计算。要使用公式(如期初至今和滚动平均值)执行其他基于时间的计算,可以创建名为 TimeView 的维并在该维上写入所有基于时间的公式。这样,您就可以使用“时间余额”计算功能,而不会失去执行其他基于时间的计算的能力。


此图显示一个大纲,其中“人数”标记有“TB 最后”和“跳过缺少的时间平衡”属性。

在 ASO 账户维中使用流标记

您可以使用流度量来优化聚合存储多维数据集中基于时间的帐户的计算。流度量是未签名的“帐户”维成员,它在大纲中存储定期值和年初至今值。

以下示例说明要使用流度量解决的问题。假设您有 12 个月的销售和增加数字。您希望执行汇总以填充每个月的期初库存。

表 37-6 库存计算

- 销售 添加 产品清单
Jan 5 1 50
Feb 6 3 46
三月 4 2 43
4 月 7 0 41
... ... ... ...

您可以对“期初库存”成员使用 MDX 公式来计算其值。如果没有流量指标,为了获得每个月的期初库存,计算器引擎将不得不指数地重申 MDX 公式。

Inventory = SUM(MemberRange(Jan:Time.CurrentMember), (Additions - Sales)) + Beg_Inventory

要优化所示示例,请使用 Essbase Web 界面中的大纲编辑器为“库存”成员分配公式 (添加–销售),并将该成员标记为“流”。


聚合存储多维数据集的大纲编辑器中的“流度量”选项。

在将成员标记为流之前,请确保它:

  • 是帐户维的成员

  • 具有公式

  • 具有“时间余额”标记

时间余额和流度量的替代层次结构的限制

如果在聚合存储时间维中使用了备用层次,则在帐户维上使用流和剩余时间标记时,将应用以下限制:

  1. 替代时间层次结构之间的共享级别必须为 0 级别。

  2. 替代时间层次结构中共享级别的成员的顺序在所有替代层次结构中必须相同。

  3. 存储成员的份额数不能超过其先前同级的份额数。上一个同级是指大纲中先前存储的成员,位于同一代。

    例如,考虑以下“年”维。备用层次无效,因为 4 月 (3) 的份额数大于 3 月 (1) 的份额数。


    大纲显示包含共享成员的替代层次的年维。

标记的汇总时间余额度量

使用 MDX 聚合函数聚合标记有时间余额标记的度量。

属性计算对 ASO 多维数据集中的时间余额度量的影响

以下计算逻辑适用于

  1. 聚合存储大纲包含具有一个或多个属性或链接属性维的时间维或日期时间维。

  2. 您可以对带有时间余额标记的度量执行查询。

如果上述情况均为 true,则使用 MDX Aggregate () 语义来评估单元格。

例如,考虑以下情景:

  • 年是具有日级别层次结构的时间日期维。

  • Holiday 是 Year 的属性维,每个日期都标记有 Holiday_TRUE 或 Holiday_FALSE。

  • 期初库存首先标记为“剩余时间”。

(Year,Holiday_TRUE,[Opening Inventory]) 的值根据以下 MDX 逻辑进行计算:

Aggregate( {Set of dates that are holidays in Year}, [Opening Inventory])