【问题标题】:Excluding Weekends in Power Bi when calculating the difference in dates and times在计算日期和时间的差异时排除 Power Bi 中的周末
【发布时间】:2018-12-19 02:44:36
【问题描述】:

过去几天我一直在对这个问题进行大量研究,但是我研究过的文章都没有能够做到。我试图找出 Power BI 中不包括周末的两个日期之间的差异,但它还需要计算时间差异。我看到的所有文章都能够找到日期本身的差异,但是对于我的具体问题,时间很重要。

例如,

我正在尝试找出取件日期/时间和创建日期/时间之间的区别。我看的数据是查找提货日期前两个工作日之前录入系统的所有货件,而这些货件需要在当天中午之前录入。

我创建了一个日期表,其中包含 2018 年至 2020 年之间的所有日期,以显示是周末还是工作日,但我无法弄清楚如何基本上执行 Pickup From - Created From 并过滤掉周末。

对此的任何帮助将不胜感激。

我的数据低于我尝试使用的数据。

Supplier Lead Times Table with Created/Date Time and Pickup From/Date Time

Lead Time Days

目前的提前期天数只是('供应商提前期' [从日期/时间取货] - '供应商提前期'[创建日期/时间])。

即使我可以为此使用 DATEDIFF HOURS 函数,那也可以,我只是无法过滤掉周末的日子。我有一个包含所有工作日/周末的日历表

Calendar Week Table

【问题讨论】:

标签: powerbi


【解决方案1】:

据我检查,您的“创建日期”和“取件日期”字段始终是工作日。因此,如果我们计算总差异而不是将每个周末的 24 小时倒回去,那将是可行的。尝试创建一个如下所示的快速度量列并将其应用于您的表格:

Difference = 

var weekends = 
SUMX(
    SELECTCOLUMNS(
        CALENDAR(min('MyTable'[CreatedDate]), min('MyTable'[PickUpDate])),
        "Date", min('MyTable'[CreatedDate]),
        "BDay", IF(WEEKDAY([Date],3) >= 5, 1, 0)
    ),
    [BDay]
)

return DATEDIFF(min('MyTable'[CreatedDate]), min('MyTable'[PickUpDate]), HOUR) - weekends*24

【讨论】:

    猜你喜欢
    • 2017-10-15
    • 1970-01-01
    • 1970-01-01
    • 2022-08-10
    • 2015-04-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-01
    相关资源
    最近更新 更多