Microsoft is giving away 50,000 FREE Microsoft Certification exam vouchers. Get Fabric certified for FREE! Learn more
I analyse user numbers, and I would like to divide the work day into early (6 am- 2 pm), late (2 pm- 10 pm) and night shifts (10 pm- 6 am). Creating the night shift is no problem because it runs every weekday from 10pm - 6 am. IIt is difficult for me to create the early and late shift, because they change every week. In calendar week 48 group A has the early shift (6 am- 14 pm) and group B the late shift (2 pm- 10 pm). In calendar week 49 group B has the early shift and group A the late shift and so on.
I would be very grateful for helpful tips!
My Data looks like this (each row is a user):Data
My Conditional Column looks like this:
Code
This is ok but I need to adjust the weekly change from the early and late shift group.
Please see this post regarding How to Get Your Question Answered Quickly: https://community.powerbi.com/t5/Community-Blog/How-to-Get-Your-Question-Answered-Quickly/ba-p/38490
Hard to be specific without source data. But, if you created an hours table like this:
R06_Table =
VAR __Hours =
SELECTCOLUMNS(
GENERATESERIES(1 , 12 , 1),
"Hour",
[Value] & ":00:00 "
)
VAR __Period =
SELECTCOLUMNS(
{ ("AM"),("PM") },
"AM/PM",
[Value]
)
VAR __HoursAMPM = GENERATEALL(__Hours, __Period)
VAR __Final =
SELECTCOLUMNS(
ADDCOLUMNS(
__HoursAMPM,
"Time",
TIMEVALUE([Hour] & [AM/PM])
),
"Time",
CONVERT(TODAY() & " " & [Time], DATETIME)
)
RETURN
__Final
You could create a Shift column like this:
Shift =
VAR __1stBegin = 9
VAR __2ndBegin = 17
VAR __3rdBegin = 1
VAR __Time = TIMEVALUE('R06_Table'[Time])
VAR __Hour = HOUR(__Time)
RETURN
SWITCH(TRUE(),
__Hour >= __1stBegin && __Hour < __2ndBegin,"First",
__Hour >= __2ndBegin || __Hour < __3rdBegin,"Second",
"Third"
)
Check out the April 2025 Power BI update to learn about new features.
Explore and share Fabric Notebooks to boost Power BI insights in the new community notebooks gallery.
User | Count |
---|---|
19 | |
11 | |
10 | |
8 | |
8 |
User | Count |
---|---|
20 | |
13 | |
8 | |
7 | |
6 |