PowerBI:查找在特定日期有效的所有记录

时间:2019-06-17 12:08:53

标签: powerbi dax scd

我有一个带记录的经典数据仓库。每条记录都有一个有效日期和有效日期。

现在,我想在PowerBI中设置一个过滤器。这个想法是用户以某种方式设置了一个日期,并且该日期介于有效日期(valid_from)和有效日期(valid)至之间的所有记录都应该在PowerBI中可用。从而为用户提供了遍历数据的可能性。

这似乎是一项非常标准的任务,但我找不到方法。...建议?

1 个答案:

答案 0 :(得分:2)

鉴于这个模糊的问题没有明确的细节,我将不得不做一些假设。我假设您有一个从与数据表无关的参数表中填充的日期切片器,并且您有一套在视觉中使用的度量来显示您感兴趣的记录。

基于这些假设,您可以按照以下方式编写度量以过滤现有度量:

FilteredMeasure = 
VAR SelectedDate = SELECTEDVALUE ( DateSlicer[Date] )
RETURN
    CALCULATE (
        [ExistingMeasure],
        FILTER (
            DataTable,
            DataTable[valid_from] <= SelectedDate
                && SelectedDate < DataTable[valid_to]
        )
    )

这是另一个相似但不完全等效的表述:

FilteredMeasure = 
VAR SelectedDate = SELECTEDVALUE ( DateSlicer[Date] )
RETURN
    CALCULATE (
        [ExistingMeasure],
        DataTable[valid_from] <= SelectedDate,
        DataTable[valid_to] > SelectedDate
    )