在 DAX 中传递变量
Passing a Variable in DAX
我正在尝试使用 PowerBI Desktop DAX 将变量传递给 DATEADD 函数,以便它更改间隔。
我正在使用
Sales Comparison = CALCULATE( [SALES], DATEADD('CALENDAR'[DATE],-1,YEAR))
显示去年同期的销售额,但我希望 YEAR 函数是可变的。
我们的想法是对其进行更改,以便用户可以与上个月、上季度等进行比较。
我创建了一个包含月、季度、年的期间 table,我试图通过它来显示
Sales Comparison =
CALCULATE( [SALES],
DATEADD('CALENDAR'[DATE],-1,VALUES(PERIOD[PERIOD])
)
)
错误显示“最后一个参数必须是以下关键字之一:DAY、MONTH、QUARTER 或 YEAR。
我一直在用 SELECTEDVALUE 和 VALUE 替换 VALUES;所有这些都对我失败。
将不胜感激。
DAX 可能是一种非常令人沮丧的语言 - 如此新颖和原始,但又如此限制...
我会将 DATEADD 复制 4 次(用于 DAY、MONTH、QUARTER 和 YEAR)并将整个热气腾腾的混乱情况包装在 SWITCH 函数中。类似于:
Sales Comparison =
SWITCH (
VALUES ( PERIOD[PERIOD] ),
"DAY", CALCULATE ( [SALES], DATEADD ( 'CALENDAR'[DATE], -1, DAY ) ),
"MONTH", CALCULATE ( [SALES], DATEADD ( 'CALENDAR'[DATE], -1, MONTH ) ),
"QUARTER ", CALCULATE ( [SALES], DATEADD ( 'CALENDAR'[DATE], -1, QUARTER ) ),
"YEAR", CALCULATE ( [SALES], DATEADD ( 'CALENDAR'[DATE], -1, YEAR ) )
)
那我需要洗个澡
我正在尝试使用 PowerBI Desktop DAX 将变量传递给 DATEADD 函数,以便它更改间隔。
我正在使用
Sales Comparison = CALCULATE( [SALES], DATEADD('CALENDAR'[DATE],-1,YEAR))
显示去年同期的销售额,但我希望 YEAR 函数是可变的。
我们的想法是对其进行更改,以便用户可以与上个月、上季度等进行比较。
我创建了一个包含月、季度、年的期间 table,我试图通过它来显示
Sales Comparison =
CALCULATE( [SALES],
DATEADD('CALENDAR'[DATE],-1,VALUES(PERIOD[PERIOD])
)
)
错误显示“最后一个参数必须是以下关键字之一:DAY、MONTH、QUARTER 或 YEAR。
我一直在用 SELECTEDVALUE 和 VALUE 替换 VALUES;所有这些都对我失败。
将不胜感激。
DAX 可能是一种非常令人沮丧的语言 - 如此新颖和原始,但又如此限制...
我会将 DATEADD 复制 4 次(用于 DAY、MONTH、QUARTER 和 YEAR)并将整个热气腾腾的混乱情况包装在 SWITCH 函数中。类似于:
Sales Comparison =
SWITCH (
VALUES ( PERIOD[PERIOD] ),
"DAY", CALCULATE ( [SALES], DATEADD ( 'CALENDAR'[DATE], -1, DAY ) ),
"MONTH", CALCULATE ( [SALES], DATEADD ( 'CALENDAR'[DATE], -1, MONTH ) ),
"QUARTER ", CALCULATE ( [SALES], DATEADD ( 'CALENDAR'[DATE], -1, QUARTER ) ),
"YEAR", CALCULATE ( [SALES], DATEADD ( 'CALENDAR'[DATE], -1, YEAR ) )
)
那我需要洗个澡