2015-02-23 130 views
0

我在PowerPivot模型中有一個datetime列(starting_date)。我想計算一個字段,顯示直到下一個更新日期有多少個月。每一年一個更新即將到來?計算更新日期DAX

有人有關於如何在DAX中動態執行該操作的想法嗎?

+0

我們需要更多的信息來幫助解決這個問題。什麼決定續約日期?等等。 – guitarthrower 2015-02-23 16:38:13

+0

「開始日期」+ 1年(12個月)每個未來一年。我知道DAX具有EDate功能,但它只能用於下一個即將到來的時期!? – madsh 2015-02-23 16:49:19

+0

是否可以計算只知道開始日期和更新時間? – madsh 2015-02-24 11:10:39

回答

0

不具有任何數據。例如,我在下面的表格設置 - 表1(在假設每個客戶只能出現一次)

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

然後在PowerPivot中我設置了以下措施:

[STARTINGDATE] - 用於返回客戶的開始日期

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]) 

您可以在一個步驟中完成所有上述操作,但是我發現以後難以調試並且難以閱讀。它也可能會做得更乾淨,但它的工作(據我瞭解您的要求)

+0

非常感謝@guitarthrower。非常好。解決了我的需求! – madsh 2015-02-27 09:34:18