Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Get certified in Microsoft Fabric—for free! For a limited time, get a free DP-600 exam voucher to use by the end of 2024. Register now

Reply
craigdent
Frequent Visitor

Calculate working days lost per month

Hi all, I'm hoping someone will be able to help me out.

 

I am trying to pull some absence reporting into Power BI and one of the measures I need to report on is the total number of working days lost each month for all employees who are off in each month, split by long term/short term and totalled.

 

I am looking to be able to produce a matrix that shows something like the following:

MonthSep-20Oct-20Nov-20Dec-20Jan-21Feb-21Mar-21Apr-21May-21Jun-21Jul-21Aug-21
Days Lost Short Term807595215066948474698468
Days Lost Long Term120142135211184156174146169183122135
Total Days Lost200217230232234222268230243252206203

 

An example of the data I am using can be found here: Sample Data which is split between the data itself and a date table - these are separate tables in PBI and currently have no relationship due to other measures in use.

 

Does anyone know of the best way to do this?

1 ACCEPTED SOLUTION

Easier said than done.  This turned out to be a monster query.  Please check that the results are as expected and that performance is acceptable.

 

lbendlin_0-1632877678671.png

see attached

View solution in original post

4 REPLIES 4
lbendlin
Super User
Super User

I think that by pre-bucketing ST and LT you are missing a data opportunity. Rather you would want to look at histograms, maybe even seasonal or monthly ones.

 

Speaking of months - I assume you want to count the number of days each person spends in either bucket each month?

 

For the computation you would want to approach it like this

 

- for each person and month you want to intersect the interval of start to end date of sickness with the start to end date of the month with the working day flag in the calendar. Then slap the bucket flag on and display the results.

Easier said than done.  This turned out to be a monster query.  Please check that the results are as expected and that performance is acceptable.

 

lbendlin_0-1632877678671.png

see attached

This looks great, thank you for your time and effort on this!

 

I do get one error though, and it's because some of the end dates are not filled in because the person hasn't returned to work yet. To counter this I added a calculated column to add in today's date if it's blank or provide the end date which worked a treat! Thank you again!

 

craigdent_0-1632903640011.png

 

Yes, I neglected to mention that I cover that scenario in the Power Query portion. Should have done it in DAX via COALESCE().

Helpful resources

Announcements
November Carousel

Fabric Community Update - November 2024

Find out what's new and trending in the Fabric Community.

Live Sessions with Fabric DB

Be one of the first to start using Fabric Databases

Starting December 3, join live sessions with database experts and the Fabric product team to learn just how easy it is to get started.

Las Vegas 2025

Join us at the Microsoft Fabric Community Conference

March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount! Early Bird pricing ends December 9th.

Nov PBI Update Carousel

Power BI Monthly Update - November 2024

Check out the November 2024 Power BI update to learn about new features.