Forum Discussion
Creating a Dashboard for operations
- Anonymous8 months ago
Hi kaytaylor19 ,
Follow below steps.
1. Create a separate Dates table
Dates =
ADDCOLUMNS (
CALENDAR ( DATE(2025,1,1), DATE(2026,12,31) ),
"Weekday", WEEKDAY ( [Date], 1 ) -- Sunday = 1 ... Saturday = 7
)
Create a relationship:
Dates[Date] → YourData[Date]
2. 90-Day Average by Weekday (Hours)
Avg Hours Last 90 Days =
VAR _Today = MAX ( Dates[Date] )
VAR _MinDate = _Today - 90
VAR _Weekday = MAX ( Dates[Weekday] )
RETURN
CALCULATE (
AVERAGE ( 'YourData'[Puerto Rico Hours] ),
'YourData'[Date] >= _MinDate,
'YourData'[Date] < _Today,
'YourData'[Day #] = _Weekday -- weekday match
)
3. 90-Day Average by Weekday (Units)
Avg Units Last 90 Days =
VAR _Today = MAX ( Dates[Date] )
VAR _MinDate = _Today - 90
VAR _Weekday = MAX ( Dates[Weekday] )
RETURN
CALCULATE (
AVERAGE ( 'YourData'[Puerto Rico Units] ),
'YourData'[Date] >= _MinDate,
'YourData'[Date] < _Today,
'YourData'[Day #] = _
Weekday
)
4. You want:
If the date exists in your actual table → use actuals
If the date has NO data (future) → use the 90-day weekday average
Predicted Hours Measure
Predicted Hours =
VAR _ActualHours =
CALCULATE (
SUM ( 'YourData'[Puerto Rico Hours] ),
REMOVEFILTERS ( Dates ) -- keep row context
)
RETURN
IF (
NOT ISBLANK ( _ActualHours ),
_ActualHours, -- actual exists
[Avg Hours Last 90 Days] -- otherwise predicted
)
Predicted Units Measure
Predicted Units =
VAR _ActualUnits =
CALCULATE (
SUM ( 'YourData'[Puerto Rico Units] ),
REMOVEFILTERS ( Dates )
)
RETURN
IF (
NOT ISBLANK ( _ActualUnits ),
_ActualUnits,
[Avg Units Last 90 Days]
)
If my response as resolved your issue please mark it as solution and give kudos.
Please see sample data below
| Month | Date | Day # | Puerto Rico Hours | Puerto Rico Units |
| Oct | 10/01/2025 | 4 | 254.47 | 29,238 |
| Oct | 10/02/2025 | 5 | 259.27 | 30,779 |
| Oct | 10/03/2025 | 6 | 267.10 | 18,209 |
| Oct | 10/04/2025 | 7 | 43.05 | - |
| Oct | 10/05/2025 | 1 | 52.12 | 27,082 |
| Oct | 10/06/2025 | 2 | 241.60 | 28,744 |
| Oct | 10/07/2025 | 3 | 250.18 | 29,723 |
| Oct | 10/08/2025 | 4 | 274.67 | 29,673 |
| Oct | 10/09/2025 | 5 | 284.07 | 34,362 |
| Oct | 10/10/2025 | 6 | 264.48 | 16,631 |
| Oct | 10/11/2025 | 7 | 40.87 | - |
| Oct | 10/12/2025 | 1 | 63.20 | 26,181 |
| Oct | 10/13/2025 | 2 | 251.77 | 25,803 |
| Oct | 10/14/2025 | 3 | 269.53 | 29,369 |
| Oct | 10/15/2025 | 4 | 280.25 | 28,857 |
| Oct | 10/16/2025 | 5 | 267.20 | 29,274 |
| Oct | 10/17/2025 | 6 | 255.55 | 17,490 |
| Oct | 10/18/2025 | 7 | 41.35 | - |
| Oct | 10/19/2025 | 1 | 54.33 | 26,362 |
| Oct | 10/20/2025 | 2 | 247.98 | 26,759 |
| Oct | 10/21/2025 | 3 | 245.75 | 29,939 |
| Oct | 10/22/2025 | 4 | 251.37 | 26,620 |
| Oct | 10/23/2025 | 5 | 242.70 | 31,446 |
| Oct | 10/24/2025 | 6 | 223.47 | 17,730 |
| Oct | 10/25/2025 | 7 | 39.60 | - |
| Oct | 10/26/2025 | 1 | 49.63 | 26,649 |
| Oct | 10/27/2025 | 2 | 254.83 | 29,112 |
| Oct | 10/28/2025 | 3 | 261.42 | 31,961 |
| Oct | 10/29/2025 | 4 | 259.52 | 30,798 |
| Oct | 10/30/2025 | 5 | 258.70 | 35,307 |
| Oct | 10/31/2025 | 6 | 262.72 | 16,416 |
| Nov | 11/01/2025 | 7 | 41.17 | - |
| Nov | 11/02/2025 | 1 | 63.12 | 28,135 |
| Nov | 11/03/2025 | 2 | 285.22 | 29,319 |
| Nov | 11/04/2025 | 3 | 248.73 | 32,098 |
| Nov | 11/05/2025 | 4 | 290.23 | 30,365 |
| Nov | 11/06/2025 | 5 | 252.60 | 37,437 |
| Nov | 11/07/2025 | 6 | 245.55 | 16,697 |
| Nov | 11/08/2025 | 7 | 47.52 | - |
| Nov | 11/09/2025 | 1 | 67.73 | 28,656 |
| Nov | 11/10/2025 | 2 | 228.62 | 30,291 |
| Nov | 11/11/2025 | 3 | 284.88 | 31,177 |
| Nov | 11/12/2025 | 4 | 252.75 | 28,315 |
| Nov | 11/13/2025 | 5 | 0.00 | - |
| Nov | 11/14/2025 | 6 | 272.59 | 16,845 |
| Nov | 11/15/2025 | 7 | 42.11 | 1 |
| Nov | 11/16/2025 | 1 | 60.77 | 27,265 |
| Nov | 11/17/2025 | 2 | 259.19 | 29,356 |
| Nov | 11/18/2025 | 3 | 281.58 | 30,058 |
| Nov | 11/19/2025 | 4 | 280.61 | 29,109 |
| Nov | 11/20/2025 | 5 | 276.53 | 33,072 |
| Nov | 11/21/2025 | 6 | 272.59 | 16,845 |
| Nov | 11/22/2025 | 7 | 42.11 | 1 |
| Nov | 11/23/2025 | 1 | 60.77 | 27,265 |
| Nov | 11/24/2025 | 2 | 259.19 | 29,356 |
| Nov | 11/25/2025 | 3 | 281.58 | 30,058 |
| Nov | 11/26/2025 | 4 | 280.61 | 29,109 |
| Nov | 11/27/2025 | 5 | 276.53 | 33,072 |
| Nov | 11/28/2025 | 6 | 272.59 | 16,845 |
| Nov | 11/29/2025 | 7 | 42.11 | 1 |
| Nov | 11/30/2025 | 1 | 60.77 | 27,265 |
| Dec | 12/01/2025 | 2 | 259.19 | 29,356 |
| Dec | 12/02/2025 | 3 | 281.58 | 30,058 |
| Dec | 12/03/2025 | 4 | 280.61 | 29,109 |
| Dec | 12/04/2025 | 5 | 276.53 | 33,072 |
| Dec | 12/05/2025 | 6 | 272.59 | 16,845 |
| Dec | 12/06/2025 | 7 | 42.11 | 1 |
| Dec | 12/07/2025 | 1 | 60.77 | 27,265 |
| Dec | 12/08/2025 | 2 | 259.19 | 29,356 |
| Dec | 12/09/2025 | 3 | 281.58 | 30,058 |
| Dec | 12/10/2025 | 4 | 280.61 | 29,109 |
| Dec | 12/11/2025 | 5 | 276.53 | 33,072 |
| Dec | 12/12/2025 | 6 | 272.59 | 16,845 |
| Dec | 12/13/2025 | 7 | 42.11 | 1 |
| Dec | 12/14/2025 | 1 | 60.77 | 27,265 |
| Dec | 12/15/2025 | 2 | 259.19 | 29,356 |
| Dec | 12/16/2025 | 3 | 281.58 | 30,058 |
| Dec | 12/17/2025 | 4 | 280.61 | 29,109 |
| Dec | 12/18/2025 | 5 | 276.53 | 33,072 |
| Dec | 12/19/2025 | 6 | 272.59 | 16,845 |
| Dec | 12/20/2025 | 7 | 42.11 | 1 |
| Dec | 12/21/2025 | 1 | 60.77 | 27,265 |
| Dec | 12/22/2025 | 2 | 259.19 | 29,356 |
| Dec | 12/23/2025 | 3 | 281.58 | 30,058 |
| Dec | 12/24/2025 | 4 | 280.61 | 29,109 |
| Dec | 12/25/2025 | 5 | 276.53 | 33,072 |
| Dec | 12/26/2025 | 6 | 272.59 | 16,845 |
| Dec | 12/27/2025 | 7 | 42.11 | 1 |
| Dec | 12/28/2025 | 1 | 60.77 | 27,265 |
| Dec | 12/29/2025 | 2 | 259.19 | 29,356 |
| Dec | 12/30/2025 | 3 | 281.58 | 30,058 |
| Dec | 12/31/2025 | 4 | 280.61 | 29,109 |
Hi kaytaylor19 ,
Follow below steps.
1. Create a separate Dates table
Dates =
ADDCOLUMNS (
CALENDAR ( DATE(2025,1,1), DATE(2026,12,31) ),
"Weekday", WEEKDAY ( [Date], 1 ) -- Sunday = 1 ... Saturday = 7
)
Create a relationship:
Dates[Date] → YourData[Date]
2. 90-Day Average by Weekday (Hours)
Avg Hours Last 90 Days =
VAR _Today = MAX ( Dates[Date] )
VAR _MinDate = _Today - 90
VAR _Weekday = MAX ( Dates[Weekday] )
RETURN
CALCULATE (
AVERAGE ( 'YourData'[Puerto Rico Hours] ),
'YourData'[Date] >= _MinDate,
'YourData'[Date] < _Today,
'YourData'[Day #] = _Weekday -- weekday match
)
3. 90-Day Average by Weekday (Units)
Avg Units Last 90 Days =
VAR _Today = MAX ( Dates[Date] )
VAR _MinDate = _Today - 90
VAR _Weekday = MAX ( Dates[Weekday] )
RETURN
CALCULATE (
AVERAGE ( 'YourData'[Puerto Rico Units] ),
'YourData'[Date] >= _MinDate,
'YourData'[Date] < _Today,
'YourData'[Day #] = _
Weekday
)
4. You want:
If the date exists in your actual table → use actuals
If the date has NO data (future) → use the 90-day weekday average
Predicted Hours Measure
Predicted Hours =
VAR _ActualHours =
CALCULATE (
SUM ( 'YourData'[Puerto Rico Hours] ),
REMOVEFILTERS ( Dates ) -- keep row context
)
RETURN
IF (
NOT ISBLANK ( _ActualHours ),
_ActualHours, -- actual exists
[Avg Hours Last 90 Days] -- otherwise predicted
)
Predicted Units Measure
Predicted Units =
VAR _ActualUnits =
CALCULATE (
SUM ( 'YourData'[Puerto Rico Units] ),
REMOVEFILTERS ( Dates )
)
RETURN
IF (
NOT ISBLANK ( _ActualUnits ),
_ActualUnits,
[Avg Units Last 90 Days]
)
If my response as resolved your issue please mark it as solution and give kudos.