另一个Power BI问题我已经尝试解决这个问题但无济于事。
我试图创建一个计算列来标记记录是否在今年。
我有一张计划表:
FiscalYear | ReportDate | Status |
2017 | 01/4/2018 | Open |
2018 | | Open |
2017 | | Closed |
2016 | 01/10/2016 | Complete |
2016 | 01/8/2017 | Complete |
我有一个度量[当年]以2018/19作为文本返回。
我有一个日期表,其中包含每个日期,下面是选定年份的样本:
FiscalYear | FiscalYearSlash| Date |
2017 | 2017/18 | ..........|
2018 | 2018/19 | ..........|
2017 | 2017/18 | ..........|
2016 | 2016/17 | ..........|
2016 | 2016/17 | ..........|
我可以在计划表中使用以下内容返回FiscalYearSlash:
CALCULATE(VALUES(Dates[FiscalYearSlash]),
FILTER(Dates,
Dates[FiscalYear]=Planning[FiscalYear]))
但是当我把它作为IF语句中的条件时,每次都会出现错误。列和度量都是文本。有什么想法吗?
想知道它是否与上下文转换有关。我已经观看了一些SQLBI.com视频并了解它们,但是在应用它时...有点挣扎。感谢。
这是我尝试的IF声明:
IF( CALCULATE(VALUES(Dates[FiscalYearSlash]),
FILTER(Dates,
Dates[FiscalYear]=Planning[FiscalYear]))
= CurrentYear,"yes","no")
答案 0 :(得分:0)
我已经解决了这个问题。我将当前年份作为函数中的VAR返回,而不是采取措施:
VAR CurrentYear = CALCULATE(VALUES(Dates[FiscalYearSlash]),
FILTER(Dates,Dates[Date]=TODAY()))
RETURN
SWITCH(TRUE(),
CALCULATE(VALUES(Dates[FiscalYearSlash]),
FILTER(Dates,
Dates[FiscalYear]=Planning[FiscalYear]))=CurrentYear,
"Yes","No"
)