Contents
Introduction

In the 12 Steps to Planning and Scheduling Maturity the first three steps are associated with assigning work.
- Step 1 – Ownership – Many organizations dispatch a work order to a technician or crew, or they allow a self-dispatching model to be used. In Maximo terminology this is adding an owner or crew to a work order or task. We use the Owner field, a person, or the team lead of the crew.
- Step 2 – Assignments – This is creating one or more work assignments with the required effort in hours. If the end goal is to use Maximo Scheduler, then this works based on assignments. Assignments allow multiple people to work on the same work order or task at the same time. This is using the Assignments tab on the Work Order Tracking application. When you assign a labor the default craft is entered, when you assign a crew, the crew type is entered.
- Step 3 – The third step is managing the work assignments within the availability of a shift. You will need to define periods of unavailability for work, or periods when the labor or crew have agreed to work extra hours, this defines the working hours of each work period. Availability can be entered using the Graphical Resource View application. You will now be able to make assignments within the available hours of the labor or crew.
At each step we have not planned the work, there is no mention of Job Plans or the Plans tab of the Work Order Tracking application, we could be making the assignments the day before the work order is assigned. Except for Graphical Resource View for creating and updating availability we have not mentioned the other applications of Maximo Scheduler where work assignment takes place, Graphical Work Week or Graphical Assignment, these rely much more on work planning.
This article is Step 3 – Availability.
In the Step 1 – Ownership article, I suggest some preliminary steps, defining a glossary, adding some additional work order statuses, reviewing your use of workflow on work orders. The Ownership step is using the Owner and Owner Group fields across the lifecycle of a work order so that everyone knows who is taking responsibility for the work order. https://maximosecrets.com/2025/04/23/step-1-planning-scheduling-maturity-ownership/
The Step 2 – Assignments article has a focus on using the Assignments tab of the Work Order Tracking application. It does not cover all applications where work assignments can be made, its focus is assigning work where no planning has taken place, emergency and urgent work orders often fall into this case. https://maximosecrets.com/2025/04/30/step-2-planning-scheduling-maturity-assignments/
In this article on Availability, we will look at defining calendars and shifts, this creates a baseline availability that may be shared between multiple people or crews. Individual availability is performed by adding periods of time of unavailability or periods of additional working hours, so called Modified Availability. This can be achieved in the People or Crews application, but it is simpler to use the Graphical Resource View application, a part of Maximo Scheduler, to achieve this. After we have defined availability, we will return to both Ownership and Assignments because some of the functionality which we introduced in those articles is dependent on availability being recorded. Finally, we will look at the Assignment Manager application which combines both assignments and availability and allows assignments to be made within the available work hours of a work period.
For those who know more about the applications of Maximo Scheduler we are not introducing Graphical Work Week or Graphical Assignment applications at this stage, we are only at step 3 in the 12 steps. Some clients will not use Assignment Manager and instead use Graphical Work Week.
Calendars/Shifts

Calendars is an application found in the Administration module. A calendar is defined at the Organization level, and it has a Start Date and End Date. As time passes you may need to extend the End Date of the calendar, this should be checked as part of end of year processing.
No Maximo Scheduler application can exist without a calendar. Each schedule can only reference one calendar, but multiple shifts. I’ve heard several times that a client wants to use Maximo Scheduler, but they do not want to use Calendars, this is simply not possible.
Calendars are designed to be shared; you must not think of them as a calendar for a particular person or crew.

A Calendar has a set of work periods, one work period per day and per shift. Here we have the Calendar DAY with a Shift also called DAY. The DAY Shift has been applied for Mondays through Friday for the whole of the calendar or a period within the Start Date and End Date of the calendar. The DAY shift has 8 working hours 7:00 AM through 3:00 PM and Monday through Friday. You can see that there are no work hours on Saturday and Sunday, and hence no work periods on these days of the week.
You can see two actions Define/Apply Shifts which must be used and Define/Apply Non-Working Time. Non-Working Time should only be set when it applies to everything that will use the calendar without exception. I wouldn’t use this action, instead apply non-working time individually, or in bulk, we’ll see how to do this later.
Each cell of the calendar will launch the work periods for the selected work date, but you can also see these from the Work Periods tab which has a table window of all the work periods in the calendar.

You define a Shift using the New Row button indicating the Start Day of the shift, normally a Sunday or Monday and the number of Days in Pattern, which is normally a factor of 7.
You then use the Define Pattern action to fill out the Start Time, End Time and Work Hours. The Work Hours is normally the elapsed time between the Start Time and End Time, and I suggest you use this to start with. Only in recent releases since MAS 8.10 has there been functionality to define and apply more accurately breaks and to allow the Maximo Scheduler applications to work with Work Hours that are less than the elapsed hours between Start Time and End Time.
For example, an 8-5 calendar has 9 elapsed hours but 8 work hours because it is expected there will be 1 hour taken for lunch. You have been able to indicate 8 Work Hours for a long time, but until relatively recently Maximo would have always treated this as 9 work hours because it was calculating the hours based on elapsed time. Therefore, if you are going to use Calendar Breaks or Work Hours shorter than the elapsed time between Start Time and End Time, then I would suggest that you perform additional tests.

After you have defined the pattern for the shift you select it and choose the action Apply Shift(s). You can apply the shift to the entire calendar or for Selected Dates. When the OK button is used this is creating Work Period records for each working day in the period, and for each selected shift.
When defining calendars, I would suggest using the Start Date as the 1st of January and the End Date as the 31st of December. There is little point in creating too many work periods which are earlier than today, they are unlikely to be used. For the End Date I would suggest 5 years more than the Start Date. You will need to add extending Calendars to your end of year processes, I would extend them by another five years when there is only one year remaining.
People – Modified Availability

You associate a calendar on a Person in the People application. People are defined at the System level and Calendars at the Organization level. It is possible for a person to have multiple calendars, one for each organization where they work but this is unusual.
The Calendar Organization, Primary Calendar and Primary Shift will be seen on the right-hand side of the screenshot. The detail menu on the Primary Calendar field has an option Show/Manage Values which is where a second calendar can be entered. The first one you select will be marked as the Primary Calendar.
It is not marked as mandatory but always add a Primary Shift along with a Primary Calendar, a calendar without a shift will not have any work periods.
You can enter a calendar on the Labor application, but this is actually entering the calendar against the associated Person record.

The Modify Person Availability action opens a dialog with two table windows. In the top table window, you select one or more Work Dates and then use the action Modify. I’ve selected next Monday 5/12/25.

This adds the selected Work Dates to the bottom table window, and you now need to select a Reason Code, I selected VAC – Vacation. For a half-day holiday, you would adjust the Start Time or End Time, and the Hours are recalculated.
After you have used OK the Modified Availability is saved and if you returned to the action, you would find the Vacation record already exists in the Modify Work Dates table window. There is a trashcan button for deleting the modified availability record.

The Reason Codes are defined by a Synonym Domain RSNCODE found in the Domains application. There are two Internal Values NON-WORK synonyms deduct from availability they are:
- MEET – Meeting
- NON-WORK – Non-Work Transaction
- PERS – Personal
- SICK – Sick Time
- TRAIN – Training
- VAC – Vacation
It is common to find some of these being changed, for example to make a difference between Public Holidays and Holidays, or to add additional synonyms like SAFETY – Safety Briefings or TOOLBOX – Toolbox Talks. NON-WORK is commonly given the description of Other. Don’t go overboard with adding so many synonyms that it becomes difficult to select and note there are colors associated with each of these synonyms, as we will see later.
The other Internal Value is WORK with two synonyms that add to availability, they are:
- WORK – Actual Work Time
- EXTRA TIME – Actual Extra-time
You need to distinguish what you will use these for. In the past I’ve used WORK to balance PERS when technicians/engineers work flexibly. For example, a dentist appointment might mean a technician misses the first two hours of a shift (PERS), which they can make up by doing two hours after normal shift hours (WORK). EXTRA TIME is then used when a technician is doing an extra shift, for example at a weekend, or extending their shift hours by a couple of hours.

If a technician works 07:00 AM to 03:00 PM then you can add two extra hours to the shift by selecting a Work Date and using the Modify action, then adjusting the Start Time and End Time and Hours and selecting EXTRA TIME as the Reason Code. I’ve added two extra hours at the end of WILSON’s shift on 5/13/25.

It is possible with the Modify Person Availability to add a week’s vacation for a person in the future by adjusting the Display From and Display To fields to the required week and then selecting the required Work Dates. Tip – Change the Display To field first, as the Display From needs to be earlier than the Display To. If you make it accurate to the days being taken, then you can use the select button in the table window header.
Using the Modify action will create, in this case, 6 Modify Work Dates, but you will need to select the Reason Code for each one. Using the Mass Modify button would have opened a dialog where you just enter the Reason Code, we’ll see this method next.

The Modify Person Availability is also available from the List tab of the People application and works on a selected set of People. Here I selected REVIS, STANLEY and WILSON who will all attend Training in a week’s time.

When selecting the date of the training and then using the Mass Modify action a dialog opens asking you to enter a Reason Code, I selected TRAIN – Training. After using OK you will find that 8 hours of training has been added to REVIS, STANLEY and WILSON on 5/23/25, the date I chose for the training.
The Mass Modify action applies the Start Time, End Time Hours and Reason Code to all the selected Work Dates and Persons. This can then be used for adding public holidays to multiple people in one go. It is a better way to proceed then using the Calendar action Define/Apply Non-Working Time, because if there is emergency/urgent maintenance that is needed on a public holiday, you will be able to add the availability of the technicians using the EXTRA TIME Reason Code.
Crew Availability works in the same way. You add a calendar to the Crew and from the Crews applications there is a Modify Crew Availability action. This action is also available from the List tab of the Crews application.
Graphical Resource View

The Graphical Resource View application is an easy-to-use application for adding modified availability to Labor and Crews. It is entering modified availability against the Person records associated with the Labor records, but there must be Labor records to use this application.
In the Resource tab you need to select a Start Week Day, a Calendar and one or more Shifts of the selected calendar. See how only one calendar can be selected, calendars need to be shared! I selected the DAY calendar and DAY shift, and the Start Week Day of MONDAY.
You do not need to Restrict Resource Availability, if you entered the Graphical View without it, it would show all Labor who shared the same Calendar and Shift(s) specified. If you do want to restrict the records, then the easiest way to do this is to set up a saved query on the Labor application and use the Copy Query action, a dialog of the saved queries will be displayed. You can also use the New Row button and fill out the fields. I’ve created a query that restricts to the three people WILSON, STANLEY and REVIS. If you are a team leader or supervisor, then it would be your team.

When you enter the Graphical View tab you will see a list of the Labor records on the left, split by their default craft, Mike Wilson is an Electrician and Tom Revis and Fred Stanley are both Mechanics. There is a month at a time display. The three calendar buttons in the tool bar are Select Date and Jump to that Date in the Schedule, Previous Period and Next Period.
You can clearly see the working days (green background) and non-working days (grey background) defined by the Calendar and Shift. You can see that WILSON has a VAC-Vacation on 5/12/25 and a partial day of EXTRA TIME on the 5/13/25. If you hovered over these cells, it would tell you Reason Code and Start Time and End Time. You can also see the mass update of training applied to WILSON, STANLEY and REVIS on Friday 5/23/25 (a darker green background).

You create Modified Availability in the Graphical Resource View application by selecting a Reason Code, I selected SICK in the toolbar and then one of Full Day, Full Week or Partial Day from the selection field to its right. You double click a cell, and a dialog box opens for you to confirm the changes or adjust the hours. Fred Stanley called in sick this morning, so I am adjusting his availability before reassigning his work assignments.

The result is that Fred Stanley now shows Sick on 5/9/25 and the available hours of Mechanics has reduced from 16 to 8 hours on that day. If you select Full Week, then you just need to double click anywhere in the week. You can remove Modified Availability by double clicking the field and using the trashcan delete button.
You can modify multiple people records, for example for training, by selecting each person on the left selection box. It is all very easy to use and quicker and more intuitive than using the Modify Person Availability action is the People application.
The Graphical Resource View also supports the same actions as Modified Crew Availability.
When the application was first released in 2020, I created three detailed articles:
Graphical Resource View (1) – Labor https://maximosecrets.com/2020/10/20/graphical-resource-view-1-labor/
Graphical Resource View (2) – Crews https://maximosecrets.com/2020/11/19/graphical-resource-view-2-crews/
Graphical Resource View (3) – Miscellaneous https://maximosecrets.com/2020/11/24/graphical-resource-view-3-miscellaneous/
In the third of these articles (Miscellaneous) I explain in the section Legend and Colours how to change the colors or add colours for additional Reason Codes. It uses System Properties starting skd.modavail.color.XXX where XXX is the Reason Code. If you do not add System Properties for additional Reason Codes, then they adopt the same colour as their internal synonym domain value.
Each of these articles will be nearly 100% correct to MAS 9.0. The only differences that I am aware of are:
- You can now indicate the Start Week Day
- You can now change the color of NON-WORK and WORK in the System Properties
- There is an option Change Person Shift in the description field of a Labor record.
Incidentally, the changes you are making in Graphical Resource View will be immediately found if you looked in the People application and the Modified Person Availability.
Ownership and Availability
In the article on Step 1 – Ownership we discussed the Select Owner action, but there is additional functionality in this dialog which is dependent on calendars/shifts and availability.

In the Work Order Tracking application when you use the Select Owner action there is a Date field in the header of the dialog. Without it being set the display of People and their Person Groups will show all People and Person Groups. However, if there is a Date and the Refresh button has been used, then the list of People and Person Groups will be filtered to those people with a calendar and shift, where the shift start and end times will be valid for the Date you have entered. If a person has no calendar or shift, then they will not be displayed when there is a Date present.
Notice that there are 66 records found for 5/23/25 7:00AM which is the date we gave for WILSON, REVIS and STANLEY to be on a training course. We can see WILSON, so clearly it is not filtering by availability, only by calendar and shift.
Note. The list will show multiple records for the same person if they belong to multiple person groups. You are selecting both a Person and their Person Group, the team responsible for the work order.

In the OrganizationsA structural element of a Maximo database which is used for data sharing. More application there is an option called Ownership Assignment Options where you need to select a SiteA structural element of a Maximo database that is used for data separation. More at the top of the dialog.
There is a radio button called Check Person Availability. The default is – Do not check Person Availability. I have changed that to – Check Person Availability.

Back on the Work Order Tracking application for the same work order and Select Owner action, I have refreshed the records for the same date/time 5/23/25 7:00 AM, now WILSON, REVIS and STANLEY are no longer available as they are on training, the number of records retrieved for the people with calendars available at that date/time is reduced to 60.
Incidentally, the Open Work column shows the number of open tickets and work orders for the person. You can verify this by looking at the Work View application and filtering on the Owner field. The Work View shows tickets at RESOLVED status and work orders at COMP status, and so you would need to filter those out as well to get the number of open tickets and work orders, i.e. Open Work.
Work Order Tracking – Assignments – Available Labor
In the article on Step 2 – Assignments we discussed the Assignments tab of the Work Order Tracking application, but we didn’t look at the actions Available Labor or Available Crew because they are dependent on calendars/shifts and availability.

I have a new work order 1670 with only a Target Start of 5/23/25 7:00 AM. I have created a new work assignment in the Assignments tab, which you must do before being able to use the action Available Labor. Notice there is no Scheduled Start, only the default 1:00 Hours and the default status of WAITASGN have been entered.

Although today is the 12th May 2025, notice how the Available Labor action uses the Target Start date to filter the records. As all the Labor shown are on the DAY shift and no work assignments have been made for that day, they all show a Start Time of 5/23/25 7:00 AM, the start time of the shift, they all show 8:00 Available Hours, the number of hours in the DAY shift.

If I filter the list to WILSON, REVIS or STANLEY who are all on training on the 23rd May 2025, no Start Time is shown, they are not available on this day, their Available Hours show 0:00.
If you unchecked the Include Fully Assigned those three labor records would disappear because they are not available on 23rd May 2025.
The Available Crews action and dialog works in the same way. Neither would work unless the Labor or Crew had a calendar and shift, and you need to be recording modified availability for these actions to be useful.

If you had created a new work assignment and had entered a Scheduled Start on the work assignment record, the Scheduled Start and Scheduled Finish would be set on the work order, the Hours are used to set the Scheduled Finish.

The Available Labor action and dialog now uses the Scheduled Start of the work assignment to filter the Labor records.
The Available Labor and Available Crew actions are very useful, but you do need to record availability correctly. I am a great advocate of every work order having a Target Start and delaying creating any scheduled dates until you are in the process of scheduling or assigning work, let the target start spread work out in time. For me the presence of a Scheduled Start indicates I have started scheduling and I don’t think this should happen until you reach WSCH status on the work order, i.e. the conditions for scheduling have been met. Certainly, an unapproved work order should not in my opinion have a Scheduled Start, a Target Start should be considered mandatory before the work order is approved. I’ll return to this subject in future articles on the 12 Steps to Planning and Scheduling Maturity.
Assignment Manager

The Assignment Manager application is a great tool for assigning Labor or Crews to work assignments. The top table window is work assignments, the bottom table window is the Labor or Crew.
You can create multiple work queries and labor or crew queries. You select a record in the work assignments list, use the action Filter Labor to Match Work and double-click one of the Labor cells for the next week where there is available time, this assigns the labor.

I have filtered for work order 1670 which has no work assignments, but it still shows in the Work List. I have also filtered the Labor List for WILSON, STANLEY or REVIS. Unfortunately, when you use the filter buttons the columns of the filter record will require you to do more horizontal scrolling. For the above screenshot I have zoomed in, and it still shows less columns in the Work List than the previous screenshot. Therefore, if you are going to use Assignment Manager, then it really is worth investing in some work and labor queries and a bit of configuration to remove any unwanted columns.
Notice work order 1670 in the Work List is selected. I will double-click the cell for WILSON and 5/15/25, blue text, showing 8:00 hours of availability.

When you double-click a labor cell the Assign Labor dialog opens where you can adjust the number of hours. The Craft and Skill Level is coming from the default Craft of Labor WILSON.
The advantage over using the Work Order Tracking – Assignments tab is that it is more visible where in a week there is availability.

The result of making the assignment is that details are added to the record in the Work List and the number of available hours has been reduced in the Labor List for WILSON, the 5/15/25 cell is now showing 7:00 hours remaining availability.
There is color coding in both the Work List and Labor List. For the Work List it is based on a calculated priority (CALCPRIORITY). You can set the priority ranges in Application Designer by looking for the tag <displayrule> in the XML. For the Labor List it is based on Percentage Allocated, there are three ranges, again look for the tag <displayrule> in the XML. You can change the colors in the maximo.css file, search for workman, which is the name of the Application Designer file name for the Assignment Manager application.
The % Alloc (Percentage Allocated) is a column at the right-hand end of the Labor List.

The Work List has a New Row button which allows you to create a new work assignment. The WO Group field will be the work order, I’ve entered 1670. I’m going to assign Labor STANLEY at the same Scheduled Date/Time and duration as for WILSON to illustrate a two-man job.

I had to use the action Refresh Labor List, but after making the new work assignment STANLEY now shows 7:00 hours of availability on the 5/15/25.
The Work List and Labor List fields are all read-only in the Assignment Manager application. However, what we have just illustrated is that you can create work assignments as you can in the Work Order Tracking – Assignments tab.

I am not intending this article to be a deep dive on the Assignment Manager application, only to illustrate that it is an alternative to working with work assignments if you do not plan work.
I have removed the filters so that you can see all the standard columns and fields when zoomed in. I wanted to highlight a couple of buttons in the Labor List.
The first is positioned after the Shift column it is Show Assignments, it shows the work assignments for the Labor record, allowing you to change the Scheduled Start or Hours.
The button at the right-hand end of the Labor List is the Modify Availability, the same dialog as that in the People application for modifying the availability of a person on one or more days.
The % Alloc (Percentage Allocated) is shown to the left of the Modify Availability button, and this is incremented as you start to make assignments. It is the percentage assigned over one week.
Conclusion
The first three steps in the 12 Steps to Planning and Scheduling Maturity focus on assigning work without planning work. Not all work is planned or scheduled, they may just be assigned, emergency and urgent work often falls into this case.
The first three steps, Ownership, Assignment and now Availability show that it is possible to assign work within the available hours of the resource without using Job Plans or the Plans tab of the Work Order Tracking application or any part of the Maximo Scheduler.
To assign work within the available hours of the Labor or Crew you do need to set up at least one calendar and one or more shifts, remembering that calendars/shifts are not individual, they are shared between multiple labor or crew. When you do progress through to using the Maximo Scheduler applications, they all require a calendar, and each schedule can only have one calendar, but multiple shifts. If a calendar, has multiple shifts so that the number of work hours in any one day exceeds 24 hours, this is OK, its allowed.
People and Crew should be assigned to a calendar AND shift. When adding a calendar to a record, you should always reference at least one shift.
Assigning a calendar and shift to a Labor or Crew defines a baseline availability, for example 8 hours/day, Monday through Friday. The true availability must consider periods of unavailability, holidays, sick, meetings, training, and periods when the Labor or Crew is available for extra hours. This is the step where I have seen some reluctance to tread, normally because holidays and sickness records must be entered into the HR department. But it isn’t just holidays and sickness, there are other types of unavailability which are unlikely to be entered in the HR system. It is partial double-entry, but you will miss-out on the accuracy of work assigning unless you do register modified availability in Maximo.
Using the Graphical Resource View application is very easy, and if there is a planner, scheduler or supervisor who can do this for the team, then it really doesn’t take much time in the week to keep on top of this. It could be done in the weekly planning meeting, but additional periods of modified availability do occur during the week, therefore you do need to find a way of keeping on top of this.
Using the People and Crews application for entering modified availability, is unlikely to be granted to someone who is using a Limited MAS license which is restricted to three modules, People and Crews is in the Administration module. Using the Graphical Resource View, a part of the Maximo Scheduler, will mean that a user needs at least a Base license, as Limited license does not entitle the user to use the Maximo Scheduler applications. There is a license implication for entering availability if you want individuals to record their own periods of unavailability.
However, you can use the Assignment Manager application, which is in the Work Order module and for technicians/engineers/crew leads restrict through work and labor/crew queries that they can only see their own work assignments and labor/crew records. This would allow them to use the Modify Availability button at the end of the Labor List or Crew List table windows. They are using the Assignment Manager application for viewing the assignments and not making or changing existing assignments. This will help you to overcome the license implications.
We have seen that the Select Owner dialog in the Work Order Tracking application is also dependent on a calendar/shift and with an Organizations setting also the availability of the person can be checked. The Available Labor or Available Crew actions on the Assignments tab of the Work Order Tracking application are also dependent on a calendar/shift and modified availability.
Finally, we saw that you can use the Assignment Manager application to make work assignments within available hours without planning or scheduling the work orders first. Of course, it is better to have planned the work first as this creates work assignments waiting to be assigned. However, additional assignments do occur after a work order is planned and approved, and you do not need to unapprove the work order, moving it back to WAPPR (Waiting Approval) status to make new work assignments.
While the Graphical Work Week application was designed to replace the Assignment Manager application, we will see this in the steps on Planning, I have known some clients who have opted to use Assignment Manager over Graphical Work Week although I think this would be a bit unusual. While it is unlikely that a user would use both Assignment Manager and Graphical Work Week, starting off with using Assignment Manager before moving to Graphical Work Week would give those users the knowledge to allow them to use which application is appropriate for the task they need to perform next. Clients who are dispatching work orders to a technician in real-time, may opt to use the Assignment Manager application.

