The Graphical Resource View application has been designed to allow you to graphically enter and modify availability records for labor and crews. This is a graphical method of handling similar functionality to the two actions Modify Person Availability and Modify Crew Availability in the People and Crews applications respectively. This article will focus on Crews, as Labor was the focus in the introduction article. The Graphical Resource View application was new in Maximo Scheduler 7.6.8.
This article will follow similar areas to that performed for Labor, but different points emerge in this article. This article covers:
- Restrict Resource Availability
- View Dialogs for Crews
- Adding whole periods of unavailability
- Adding partial periods of unavailability
It is worth reviewing the first article on Graphical Resource View which you can find here: https://maximosecrets.com/2020/10/20/graphical-resource-view-1-labor/ .
Restrict Resource Availability
In the Crews application the supervisor can make a query for the crews that they supervise and save this, as I have done for Crew Work Group 1037.
In the Graphical Resource View application, we have created a new Resource List RVBOSOHL – Overhead Line Crews, selected the calendar/shift as OFFICE/OFFICE and selected the field “Show Crews in Resource Chart?” and deselected “Show Labor in Resource Chart?”. This will show crews but not labor.
This would show all crews in organization EAGLENA working on the OFFICE/OFFICE calendar and shift, if there were no crews on that calendar/shift then when you go to the Graphical View tab there would be no records. We now want to restrict the crews to those associated with crew work group 1037.
The advantage of using the Copy Query button as I have done here to select CWG1037 – Crew Work Group 1037, is that you can test the query in the native application, Crews in this case, to ensure they fetch the right records. The Where Condition in the query is “(crewworkgroup = ‘1037’ and status = ‘ACTIVE’ and orgid = ‘EAGLENA’)”. When saving a query, you should always ensure the Where clause is efficient. The Where clause in this case might easily have been “(status = ‘ACTIVE’ and crewworkgroup like ‘%1037%’ and orgid = ‘EAGLENA’)” because the default Search Type on the CREWWORKGROUP attribute is set to WILDCARD. This will be slower, than an exact search, although marginal for the number of crew records that Maximo is likely to contain. Note. There is no index on attribute CREWWORKGROUP, and the default indexes on the AMCREW object is likely to result in a full table scan anyway.
There are two additional options for building a query. The first is the Quick Query Builder which you can get to from the button (>) to the right of the Where Condition field. This is like the Advanced Search dialog that you can find in the Crews application. I have used the select values to select a Crew Work Group of =1037 and a status of =ACTIVE.
When this is returned to the Where Condition field it overwrites what was there previously, it has not changed the saved query found in the Crews application. It is now “(status = ‘ACTIVE’ and crewworkgroup = ‘1037’)”.
A Query Name that you provide is only available on the Resource List where it is created. It may be called the same as the query in the native Crews application, but they are two different records held in different tables. Equally, the Where clause associated with a Query Name of CWG1037 on the Resource List RVBOSOHL can be different to that for the query of the same name, CWG1037, on a different Resource List.
The SQL Expression Builder allows you to compile a more complex SQL expression and test its validity. Probably not required, in this case, the Quick Query Builder will be far easier to use. However, the SQL Expression Builder will be found in the other Graphical applications of Maximo Scheduler and might be more useful elsewhere.
Note. You can have multiple records in the Restrict Resource Availability table window, if you do Maximo Scheduler is going to assume a logical OR between each query.
View Dialogs for Crews
In the Graphical View tab, I can see that there is only one period of unavailability in November, for the “Overhead Line Crew – North West” on 20th November 2020. It is a green triangle, a partial day of unavailability, but of what type?
If you hover over the cell for half a second a tool tip will show TRAIN / 13:00-17:00, the crew is on training on Friday afternoon.
There is a right-click menu in the Description field with three options.
The “View Crew Type/Crew Work Group/Work Zone” is showing the Work Zones associated with the crew, and the two other fields for reference. We have not set up work zones for our crews, not yet anyway.
The View Assigned Work dialog shows the work orders which the crew has been assigned over a period of time. You can adjust the date range and use the Refresh button to see a different set of assignments. There is no navigation to the Work Order applications, which is a pity, perhaps in the next release. The records that appear here are those where the crew is referenced on an Assignment record, and not in the Crew field in the Responsibility section of the work order.
The View Availability dialog shows any modified availability records for the crew. It opens with the Start Date and End Date being the current calendar year, which is useful. You can adjust the date range and use the Refresh button to see unavailability for next year, or other periods. This shows the training which crew BOSOHLNW will undertake on Friday afternoon, 20-November-2020.
Adding whole periods of unavailability
Today is 19th November 2020 and it was a struggle making up the crews this morning, too many crew members being sick. We have selected SICK and Full Day in the toolbar and by double-clicking the cell for 20th November and crew “Overhead Line Crew – West” we can add a day of unavailability. This doesn’t mean the whole crew is sick, it’s just the LEADER position that is sick. This crew will not go out tomorrow because of general sickness across all the crew members of the crew work group, the other members of the crew will be reallocated to other crews or reassigned to depot duties.
There are two buttons in the toolbar Next Period and Previous Period which advance the calendar month by month. Moving to December which has 31 days in the month introduces a horizontal scroll bar.
In the period between Christmas and New Year the Leader of “Overhead Line Crew – West” will be taking vacation and so the whole crew will be unavailable for that period. I have selected VAC and Full Week in the toolbar and by double-clicking the cell for 29th December and crew “Overhead Line Crew – West” we can add a whole week of unavailability. It doesn’t matter where in the week you double-click. We can see that the 28th, 29th and 30th have been coloured purple and using the horizontal scroll we can also see that 31st December 2020 is marked for Vacation. How about Friday, 1st January 2021?
It is shown as partial unavailability, a small purple triangle on the day, why is this?
By using the action View Availability and changing the date range to include 01-January 2021 we can see that the number of work hours on 1st January was 0:00. This is because the calendar itself is marked with Non-Working Time.
A period of unavailability can be removed by selecting Remove in the tool bar, in this case we have selected Full Day as well. Double-clicking 1st January 2021 removes the day marked for Vacation (VAC).
In case you were wondering, marking the crew as unavailable does not make the people who are assigned as labor to the crew as unavailable, these need to be separate actions.
Adding partial periods of unavailability
We can set up partial days of unavailability by selecting a reason code, in this case, MEET – Meeting, and Partial Day in the tool bar. You can apply a period of unavailability to multiple crews by using the selection box on the left-hand side. I will add a meeting for all crews on Friday the 4th December in the afternoon. I used the selection box in the column titles/date ribbon row.
As it is a partial day the Modify Availability dialog opens and you can modify the Start Time or End Time as required, unfortunately you have no ability to do this once and apply the result to all crews. The Hours are recalculated as the difference between the Start Time and End Time.
Having applied the change each of the crews now shows partial availability on 4th December 2020. The number of crew work hours on the Overhead Line Crew row has reduced from 24 to 12. The crew work hours are the number of hours of the crew and not the total work hours of the members of the crew. For example, if there were three positions in each crew, the total work hours of the members of the crew would have reduced from 72 to 36.
Additional hours can be applied during periods that are outside of the shift hours, either at the beginning or end of the day or on a non-working day. The EXTRA TIME reason code is selected with Partial Day and just two of the crews selected. When you use the double-click on one of those crews the Modify Availability dialog opens and you can say when each crew will be working extra hours, I chose a different start and end time for each.
The EXTRA TIME has been applied for Saturday 5th December with a total of 8 crew work hours. Notice the background colour has changed. I also applied EXTRA TIME for crew “Overhead Line Crew – North West” on Sunday morning of the 13th December, 4 crew work hours.
If you want to change existing periods of modified availability you simply double-click the cell, in this case the entry I just made on 13th December 2020 for “Overhead Line Crew – North West” (BOSOHLNW). I can change the time or even the reason code, but I cannot change the Work Date, so you could not move this EXTRA TIME to Saturday 12th December 2020. Instead, you need to use the Delete Row (trash can), and then create a new partial availability record.
Incidentally, if you select the two crews with modified availability on Saturday 5th December 2020, then both records will appear in the Modify Availability dialog, so you can change the times for both records, or delete both Modified Availability records if you were moving those records to a different day.
If there is already Modified Availability on a day and you had a different reason code set on the tool bar, SICK in this case, then it will assume that you aim to add another Modified Availability record.
You cannot exceed the total number of work hours in a shift, you will receive the error message “BMXAT1095E – The unavailable hours that you entered exceeds the expected work hours for the selected date.”. You can also not overlap two periods of unavailability, or two periods of additional time, you will receive the error message “BMXAT1116E – Cannot add modified availability that conflicts with existing records.”
If the modified availability with reason code of SICK was 08:00 to 12:00 on Friday 4th December 2020 then as the total availability has reduced to zero for crew “Overhead Line Crew – North West” then the background colour is changed. I’m not sure how it determines which colour to display, the one for SICK or the one for MEET, it isn’t by the colour of the first period of unavailability, I tried that, it may just be arbitrary. The other colour change is that you get a Deep Purple triangle to indicate Multiple Modified Availability (this is the tool tip), I’d call the colour magenta.
Incidentally, if the two periods of unavailability did not equal the number of work hours, so that availability was > 0, then the background colour would be light green indicating some availability, and you would just have the deep purple triangle.
If you do not have a reason code listed in the toolbar which is the case when you first launch the Graphical View tab for a Resource List then you will receive the message “There is no reason code specified.” Once a reason code is selected then Maximo Scheduler assumes that a double click will be adding a record of modified availability. If multiple records are selected where modified availability already exists, then a record will be added for each of the selected crews.