维姬·卡普里
新撰稿人

最后一次非零出现

在模块1(Pic 1)中有一个要求,即存在一些事务,用户希望模块2中最后一次出现非零。我们如何获得模块2中的最后一个非零数据(图2)?突出显示的是我们希望在模块2中看到的数字。

单元1

Vicky_Kapri_2-1610904100437.png

单元2

Vicky_Kapri_0-1610904056043.png

1接受的解决方案

公认的解决方案
内森·鲁德曼
安纳普兰大师/社区老板

回复:上次非零事件

如前所述,您需要使用汇总类型“期末余额”。

但首先,您必须创建一个技术行项目,该项目将使用以下公式向前取最新的非0值:

如果值<>0,则为先前的值(技术行项目)

此LI可将其汇总类型更改为期末余额。然后,您可以通过查找特定年份(或模块2中的[SELECT:Time.all periods]来引用其值)


Nathan Rudman,安纳普兰模型建造商

在原始帖子中查看解决方案

5份答复5.
凯文·乔
经认证的船长

回复:上次非零事件

你好

这样做的一个简单方法可能是在行项目上打开时间摘要,将其设置为“期末余额”。但是,您需要在模型/时间刻度上设置“所有时段”时间,才能使其正常工作。

完成这些后,可以使用[SELECT:Time.All Periods]引用行项目。这将为您提供该行项目的期末余额,即最后输入的值。

内森·鲁德曼
安纳普兰大师/社区老板

回复:上次非零事件

如前所述,您需要使用汇总类型“期末余额”。

但首先,您必须创建一个技术行项目,该项目将使用以下公式向前取最新的非0值:

如果值<>0,则为先前的值(技术行项目)

此LI可将其汇总类型更改为期末余额。然后,您可以通过查找特定年份(或模块2中的[SELECT:Time.all periods]来引用其值)


Nathan Rudman,安纳普兰模型建造商

在原始帖子中查看解决方案

凯文·乔
经认证的船长

回复:上次非零事件

“但首先,您必须创建一个技术行项目,该项目将使用以下公式向前获取最新的非0值:”

当然可以!谢谢@内森·鲁德曼,忘了那一步。

Kanishq17
社区老板

回复:上次非零事件

你好

您可以创建一个新的行项目并使用公式,如果值<>0,则值else previous(值),然后在模块中引用该行项目[选择时间。'dec 20'],以获取上个月的时间刻度值,该值将是最后一个非零值,或者,您可以使用所有期间并选择时间汇总作为时间:期末余额

圣诞树
社区老板

回复:上次非零事件

@维姬·卡普里

作为替代方案,您可以使用TIMESUM和LASTNONBLANK聚合方法吗?

开始和结束位置由时间设置中的当前时段驱动,因此需要考虑这一点。此外,只有当目标模块(module2)不包含时间作为维度时,才应使用TIMESUM。

克里斯·希思科特
贝德福德咨询公司

欧洲、中东和非洲2021年度黄金合作伙伴和区域合作伙伴