DAX - 根据最新数据 运行 在日期维度 table 中创建滚动 "within last 7 days" TRUE/FALSE 列 table

DAX - Creating a rolling "within last 7 days" TRUE/FALSE column in Date Dimension table based on latest data run date in Fact table

我知道这应该非常简单,但无法弄清楚。我想在我的数据维度 table 中的 Power BI 中创建一个滚动的“过去 7 天内”TRUE/FALSE 列,以允许我将其用作其他计算的过滤器 - 这将基于最新数据 运行 我的 Fact table 中的日期(可以延迟到每天下午 运行,因此我不只是简单地使用 TODAY() 函数) .

我在创建列时尝试使用 DATEDIFF 函数,当我在我的事实 table 中测试它时它工作正常(因为 MAX 运行 日期是最后一个运行 中的日期 table)。但是,当引用我的日期维度 table 时,它为我提供了最新 运行 日期之前最多 7 天的所有内容的 TRUE 值,但也为最新 [=42] 之后的每个日期提供了 TRUE 值=] 日期。我的日期维度 table 有未来 5 年的日期,因此这是一个问题。

Rolling 7 Days = if (DATEDIFF('Fact Table'[Date], MAX('Fact Table'[Date]), DAY) <= 7, TRUE(), FALSE())

我如何重写它,以便它明确地给出从最新数据 运行 日期开始的最近 7 天的 TRUE 结果,以便我可以将其用作过滤器?

这还能写成度量吗?

提前致谢!

尝试使用两个条件而不是一个。

例如,

Rolling 7 Days =
VAR MaxFactDate = MAX ( 'Fact Table'[Date] )
RETURN
    ( dimDate[Date] > MaxFactDate - 7 ) && ( dimDate[Date] <= MaxFactDate )