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

Register now to learn Fabric in free live sessions led by the best Microsoft experts. From Apr 16 to May 9, in English and Spanish.

Reply
lamysroe
Advocate I
Advocate I

Meeting Room utilization by day, week, month, year, etc.

I have been trial and erroring and researching for several weeks on how to get the utilization rate of conference rooms based on a calendar. I have a table with the conference room information, a utilization table where I broke down information more, a calendar table which includes working hours per day, and a holiday calendar table in which I want to exclude from working days. 

 

I can get utilization by year and for days when the room is booked, but I am having issues getting true utilization for days, weeks, month... regardless of whether the room was booked or not. I have provided only snipets of the tables as there are over 30 conference rooms. 

 

Conference Rooms

RoomOfficeStartEndVideo Conference?End TimeStart TimeDurationYearMonth NameDay Name.1MonthDay of WeekAvailable Work HoursWeek of YearDay of Year
AOffice 13/21/2017 9:003/21/2017 9:30No9:30:00 AM9:00:00 AM0.52017MarchTuesday33101280
BOffice 23/23/2017 7:003/23/2017 17:00No5:00:00 PM7:00:00 AM102017MarchThursday35101282
BOffice 23/27/2017 14:003/27/2017 14:30No2:30:00 PM2:00:00 PM0.52017MarchMonday32101386
BOffice 33/28/2017 14:003/28/2017 14:30No2:30:00 PM2:00:00 PM0.52017MarchTuesday33101387
AOffice 14/4/2017 11:304/4/2017 12:00No12:00:00 PM11:30:00 AM0.52017AprilTuesday43101494
BOffice 14/5/2017 8:004/5/2017 8:30No8:30:00 AM8:00:00 AM0.52017AprilWednesday44101495

 

 

 

Utilization Table 

OfficeStartEndRoomVideo Conference?End TimeStart TimeDurationWorktime per DayPercentage UtilizationYear
Office 13/21/2017 9:003/21/2017 9:30ANo9:30:00 AM9:00:00 AM0.5105.00%2017
Office 23/23/2017 7:003/23/2017 17:00BNo5:00:00 PM7:00:00 AM1010100.00%2017
Office 23/27/2017 14:003/27/2017 14:30BNo2:30:00 PM2:00:00 PM0.5105.00%2017
Office 33/28/2017 14:003/28/2017 14:30BNo2:30:00 PM2:00:00 PM0.5105.00%2017
Office 14/4/2017 11:304/4/2017 12:00ANo12:00:00 PM11:30:00 AM0.5105.00%2017
Office 14/5/2017 8:004/5/2017 8:30BNo8:30:00 AM8:00:00 AM0.5105.00%2017

 

 

Holidays 

20170101New Years
20170529Memorial Day
20170704Independence Day
20170904Labor Day
20171123Thanksgiving
20171124Friday after Thanksgiving
20171225Christmas
20180101New Years
20180528Memorial Day
20180704Independence Day
20180903Labor Day
20181122Thanksgiving
20181123Friday after Thanksgiving
20181225Christmas
20190101New Years
20190527Memorial Day
20190704Independence Day
20190902Labor Day
20191128Thanksgiving
20191129Friday after Thanksgiving
20191225Christmas
20200101New Years
20200525Memorial Day
20200704Independence Day
20200907Labor Day
20201126Thanksgiving
20201127Friday after Thanksgiving
20201225Christmas

 

 

Calendar

Calendar.png

 

Any thoughts or suggestions?

 

1 ACCEPTED SOLUTION
Icey
Community Support
Community Support

Hi @lamysroe ,

I find ‘Conference Rooms’ is similar to ‘Utilization Table’. So, I just use ‘Conference Rooms’ table. This is my PBIX file.

You can create columns and measures like so:

1. Create relationship among three tables.

Meeting Room utilization by day, week, month, year, etc 1.PNG

2. Create columns in ‘Calendar’ table.

Is Holiday =
IF (
    CALCULATE (
        MAX ( 'Calendar'[Date] ),
        ALLEXCEPT ( 'Calendar', 'Calendar'[Date] )
    )
        = CALCULATE (
            MAX ( Holidays[Holiday Date] ),
            ALLEXCEPT ( Holidays, Holidays[Holiday Date] )
        ),
    1,
    0
)
Work Hours Actual =
IF (
    'Calendar'[Work Hours] = 0
        || CALCULATE (
            MAX ( 'Calendar'[Is Holiday] ),
            ALLEXCEPT ( 'Calendar', 'Calendar'[Date] )
        ) = 1,
    0,
    10
)

3. Create measures.

utilization =
DIVIDE (
    SUM ( 'Conference Rooms'[Duration] ),
    SUM ( 'Calendar'[Work Hours Actual] ),
    0
)

Meeting Room utilization by day, week, month, year, etc 4.PNG

 

Best Regards,

Icey

 

If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

View solution in original post

3 REPLIES 3
Icey
Community Support
Community Support

Hi @lamysroe ,

I find ‘Conference Rooms’ is similar to ‘Utilization Table’. So, I just use ‘Conference Rooms’ table. This is my PBIX file.

You can create columns and measures like so:

1. Create relationship among three tables.

Meeting Room utilization by day, week, month, year, etc 1.PNG

2. Create columns in ‘Calendar’ table.

Is Holiday =
IF (
    CALCULATE (
        MAX ( 'Calendar'[Date] ),
        ALLEXCEPT ( 'Calendar', 'Calendar'[Date] )
    )
        = CALCULATE (
            MAX ( Holidays[Holiday Date] ),
            ALLEXCEPT ( Holidays, Holidays[Holiday Date] )
        ),
    1,
    0
)
Work Hours Actual =
IF (
    'Calendar'[Work Hours] = 0
        || CALCULATE (
            MAX ( 'Calendar'[Is Holiday] ),
            ALLEXCEPT ( 'Calendar', 'Calendar'[Date] )
        ) = 1,
    0,
    10
)

3. Create measures.

utilization =
DIVIDE (
    SUM ( 'Conference Rooms'[Duration] ),
    SUM ( 'Calendar'[Work Hours Actual] ),
    0
)

Meeting Room utilization by day, week, month, year, etc 4.PNG

 

Best Regards,

Icey

 

If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

@Icey Thanks this was very helpful. I was able to get the many to one relationship working as well after playing with it for a bit. 

amitchandak
Super User
Super User

One of the easy ways to create a table having all resources per day using a cross join. And use that as the base for utilization

https://docs.microsoft.com/en-us/dax/crossjoin-function-dax

 

Other is a working day measure using the slicer date. Use that Var in formula. 

Var Working days= Max(date[date]) - Min(date[date])  - put holiday logic

 

Use this in your formula.

Helpful resources

Announcements
Microsoft Fabric Learn Together

Microsoft Fabric Learn Together

Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City

PBI_APRIL_CAROUSEL1

Power BI Monthly Update - April 2024

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

April Fabric Community Update

Fabric Community Update - April 2024

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