如果不涉及时间,已经有很多选择来计算两个日期之间的工作日数,但是如果将其保留为日期/时间,则有任何方法可以获取工作日数(带小数的余数) )在DAX中的两个时间点之间(例如Power Query / Power BI)?
答案 0 :(得分:1)
假设您的开始时间和结束时间在工作日内发生,那么您应该能够计算两个日期之间的时差,并减去该期间的非工作日数。
您需要一个日历表来帮助您。说,
Dates = CALENDARAUTO()
那么您的工作日度量可能如下所示:
WorkingDays =
StartFinish[Finish Date] - StartFinish[Start Date] -
SUMX(
FILTER(Dates,
Dates[Date] > StartFinish[Start Date] &&
Dates[Date] < StartFinish[Finish Date]),
IF(WEEKDAY(Dates[Date]) = 1 || WEEKDAY(Dates[Date]) = 7, 1, 0)
)
如果您的日历表中有一个IsWorkDay
列(其中可能包括假期和周末),则可以只在最后一行引用它:
IF(Dates[IsWorkDay], 0, 1)
请注意,此方法假定工作日为24小时,而不是标准的8小时。如果您不希望小数部分表示24小时的一部分,则必须进行一些调整。要切换到8小时工作日的一部分,只需将小数部分乘以24/3 = 3。