计算更新日期 DAX

Calculate renewal date DAX

我在 PowerPivot 模型中有一个日期时间列 (starting_date)。我想计算一个字段,显示距离下一个续订日期还有多少个月。每 就要续约一次?

有人知道如何在 DAX 中动态执行此操作吗?

没有任何示例数据,我设置了以下 table - 表 1(假设每个客户只能出现一次)

Customer    starting_date
a           1/1/2014
b           2/25/2014
c           1/1/2015
d           4/1/2014

然后在PowerPivot中我设置了以下措施:

[StartingDate] - 用于 return 客户的开始日期

StartingDate:=MAX(Table1[starting_date])

[BirthdayThisYear] - 设置当前年份的日期

BirthdayThisYear:=DATE(YEAR(TODAY()),MONTH([StartingDate]),DAY([StartingDate]))

[ThisYearBeforeToday] - 测试 [BirthdayThisYear] 是否早于 TODAY()

ThisYearBeforeToday:=if([BirthdayThisYear]<today(),"yes","no")

[NextRenewalDate] - 使用 [ThisYearBeforeToday] 计算下一个续订日期

NextRenewalDate:=IF([ThisYearBeforeToday]="yes",DATE(YEAR([BirthdayThisYear])+1,MONTH([BirthdayThisYear]),DAY([BirthdayThisYear])),[BirthdayThisYear])

您可以一步完成以上所有操作,但我发现以后很难调试并且难以阅读。它也可能做得更干净,但它有效(据我了解你的要求)