在 Power BI 中获取最后 08 天

时间:2021-01-21 09:52:08

标签: powerbi dax

我创建了一个度量以获取过去 08 天的日期表中的 MAX 日期。这就是度量,

dynamic Date =
VAR _select =
CALCULATE ( 
    MAX ( DateTable[Date] ), 
    ALLSELECTED ( DateTable[Date] ) 
)

VAR _last7days = _select - 7
RETURN
    IF ( _select > _last7days, 1, 0 )

但这显示的是从 1 月 1 日到 1 月 22 日的日期。我只需要得到最后 08 天。

我需要像这样在过滤器窗格中放置一个过滤器,

动态日期= 1

图像.png

3 个答案:

答案 0 :(得分:1)

尝试以下操作-

dynamic Date =
VAR max_date=
CALCULATE ( 
    MAX(DateTable[Date]), 
    ALLSELECTED(DateTable[Date]) 
)

RETURN IF (DATEDIFF(MIN(DateTable[Date]), max_date, DAY) > 7, 0, 1)

输出应该如下所示-

enter image description here

答案 1 :(得分:1)

我能想到的唯一可能会破坏您的代码的是在评估 _select 变量时存在其他一些过滤器。

您可以尝试从 DateTabe 中删除所有过滤器,然后在该日期内重新应用过滤器,如下所示

dynamic Date =
VAR _select =
CALCULATE ( 
    MAX ( DateTable[Date] ), 
    REMOVEFILTERS( DateTable ),
    ALLSELECTED ( DateTable[Date] ) 
)

VAR _last7days = _select - 7
RETURN
    IF ( _select > _last7days, 1, 0 )

答案 2 :(得分:0)

我使用这个措施达到了我的要求,

Date_Range =
VAR selecteddate =
    CALCULATE (
        MAX ( DateTable[Date] ),
        ALLSELECTED ( DateTable[Date] )
    )
RETURN
    IF (
        AND (
            MAX ( DateTable[Date] ) > selecteddate - 8,
            MAX ( DateTable[Date] ) <= selecteddate
        ),
        1,
        0
    )

并在过滤器窗格中放置此度量以仅获得“1”。

感谢您的建议。