【问题标题】:Filtering relative dates to get the last 2 shifts moving过滤相对日期以移动最后 2 个班次
【发布时间】:2022-10-23 16:55:04
【问题描述】:

我正在尝试过滤我的 Power BI 报告以使最后 2 个班次移动。我有一个日期维度表、一个时间维度表和一个班次维度表。

我的班次维度表由 2 行组成,第一行是白班(从早上 6 点到下午 5:59)和夜班(从下午 6 点到早上 5:59)。白班的参考是 1,夜班的参考是 2。

我有一个事实表,展示与每个班次相关的每一天的结果。我想做的总是展示最后两个班次完成,例如我们是 10 月 18 日上午 8 点 30 分,然后我想看到最后两个班次完成,即夜班(从 10 月 17 日晚上 6 点到 10 月 18 日 5 :59 AM)和白班(从 10 月 17 日上午 6 点到下午 5:59)。

我也想回到过去,例如过滤我的数据,这样我就可以回到过去。

我怎样才能做到这一点?我是否需要一个包含所有班次和日期的班次维度,而不是仅显示白天与夜班的 2 行维度表?

这是我的班次表的样子:

这是我的日期表的样子:

这是我的时间表的样子:

这是我的事实表的样子:

所以我想要做的是过滤我的数据以使最后两个班次可用并完成。

这是我第一次尝试的样子:

起初,我在事实表中添加了列 date 以获得完整日期:

其次,我创建了一个新列,在我的 FactTable 中使用 DAX 来指示该行是否在过去 2 天内可用:

这是它在视觉形式中的样子:

我要做的是根据最后两个班次进行过滤,而不是几天以及与班次相关的小时之间的过滤,以便始终有最后两个班次可用。我不知道班次表是否有可能只有 2 行,或者是否可以使用包含所有班次和日期和时间的 dimshift ?

我要显示的是最后 2 个可用班次的数量总和,因此对于此示例,将是 9 月 27 日夜班(从下午 6 点到上午 5:59:59)和 9 月 28 日白班(6 小时)上午至下午 5:59:59)。当我点击 true 时,我希望能够过滤 2 last shift 而当我不过滤数据时,我应该能够及时返回并查看历史数据

【问题讨论】:

  • 请在您的脑海中分享您的事实表和预期的维度表格式。您不必共享实际数据,只需使用类似格式的假数据即可。向我们展示您为解决问题付出了哪些努力。然后我们可以愉快地帮助您。简短地说,如果您想回到以前的日期或跟踪趋势,使用包含所有班次的日期维度表会更有效。
  • 你能澄清一下你在寻找什么结果吗?即你想要最后两班的小时总和吗?你能告诉我们你尝试了什么吗?回答引用模型中的表和列的问题会容易得多。
  • 嗨,如果您想了解有关上下文@OzanSen 的更多信息,我刚刚更新了我的问题
  • 嗨,如果您想了解有关上下文的更多信息,我刚刚更新了我的问题@MarkWojciechowicz
  • 嗨@亚历山德拉。感谢您更新您的帖子。如果可以的话,我会花一些时间来检查它并尝试提供一些解决方案!好好的!

标签: powerbi dax


【解决方案1】:

我试图以不同的方式解决它,请检查我的推理,看看它是否是你想要的。

首先,根据您的共享集,这是我使用的数据模型:

然后我开始使用这个 DAX 代码创建一个计算列:

Calc_Table = 
VAR TblSummary = SUMMARIZE(YourFactTable, 'Date'[Date], 'Time'[HH:mm:ss], Shift[RefShift])
VAR RankColumnAdded = ADDCOLUMNS(TblSummary,
"Rank",
    RANKX(TblSummary,[Date] + [HH:mm:ss]))
VAR QuantityColumnAdded = ADDCOLUMNS(
    RankColumnAdded,
    "QuantityAmount",CALCULATE(SUM(YourFactTable[Quantity])))
VAR Filter_Last2 = FILTER(QuantityColumnAdded, [Rank] IN {1,2})
RETURN
Filter_Last2

我的计算表如下所示:

然后,您可以通过在形成的计算表上拖放字段来在表格视觉中使用它,结果是这样的:

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-12-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-02-06
    相关资源
    最近更新 更多