powerbi - 如何在 Power BI 中将工作日转换为每天可以多次更新的小时?
问题描述
我第一次使用 Power BI,我的任务是将我们的票证响应时间与我们向客户承诺的时间进行比较。我需要显示自创建工单以来已经过去了多少工作日和工作时间。营业时间为 08:00 - 16:00(视客户而定),工作日为周一、周二、周三、周四和周五。一天工作8小时。如果票在 15:00 收到,我们有 1 个工作日的时间回复,那么我们需要在第二天 15:00 之前回复,而不是当天的 23:00。我现在的问题是,我目前的计算是在完整的工作日中进行的。这意味着我的工作时间仅每隔 8 小时更新一次。这在每天的基础上不是很有用,在我们只有一天时间回复票证的情况下,
在实践中,这会转化为一个列,其中今天创建的工单将有 0 个经过的工作日和 0 个经过的工作时间,即使当前时间是 15:00,并且工单是在 08:00 创建的。
目前我有(除其他外)这两列:经过的工作日(WDE)和经过的工作时间(WHE)。
WDE 的计算方式如下,不包括周末:
(InitialDate as date) as number =>
let
FinalDate = DateTime.Date(DateTime.LocalNow()),
DaysBetweenDates = Duration.Days(FinalDate-InitialDate),
DaysList = List.Dates(List.Min({InitialDate,FinalDate}),DaysBetweenDates, Duration.From(1)),
WeekDaysList = List.Select(DaysList, each (Date.DayOfWeek(_, Day.Monday) < 5) ),
WorkingDays = (if DaysBetweenDates < 0 then -1 else 1) * List.Count(WeekDaysList)
in
WorkingDays
Work Hours Elapsed,目前更简单一些:
Work Hours Elapsed = 'Work Items'[Work Days Elapsed]*'Work Items'[Business Hours]
我如何将其转换为至少可以每小时刷新一次的东西?也许更频繁。
我希望我已经提供了足够的信息,并且这一切都是有道理的。
解决方案
我想通了,这主要是一个数学问题。我做了一个可以每小时更新的解决方案,这似乎很好。
我添加了两列:营业时间开始和营业时间结束。然后通过以下方式将我的 WorkDaysElapsed 转换为小数(我尝试给它一些有意义的名称):
HowFarIntoTheDay = 现在 - 开始
HowManyPercentageOfTheToalDayHasGoneBy = HowFarIntoTheDay/(结束-开始)
WorkDaysElapsedInDecimals = WorkDaysElapsed + HowManyPercentageOfTheToalDayHasGoneBy
我不知道这是否是最好的解决方案,但它似乎可以完成这项工作。
推荐阅读
- html - 如何向下移动一段标准标题或段落元素
- php - 用 symfony 添加收藏夹
- pytorch - Pytorch DataLoader 迭代顺序稳定吗?
- php - 为什么我的 PHP 函数代码出现未定义索引错误
- mapbox - 矢量瓷砖,mapbox style.json
- macos - 无法为 Mac 安装 VS Code
- iframe - 从 Google 表格在 iFrame 中启动时,Google 表单无法提交
- angular - ng build 后的国家/地区标志
- javascript - Babylonjs 将脚本附加到元素
- verilog - 系统verilog中的if else和case