Archibus SaaS / Maintenance / Preventive Maintenance
Maintenance / Preventive Maintenance / Maintenance Manager
Understanding the PM Scheduling Routine
To determine the dates when the next PM procedure is due, run the Define PM Schedule Dates by PM Schedules task or the Generate PM Work Orders task. These tasks include an option that executes the program's scheduling routine, which does the following:
- Prompts you for a date range for which to determine upcoming work. You can choose date ranges that are no more than 90 days in length.
- Determines the upcoming schedule dates for the period you specify and generates a record for each date in the PM Schedule Dates table.
- Updates the Calc. Date for Next PM field of the PM Schedules record with the next due date.
- Completes the Date of Last PM field of the PM Schedules record with the value of the Date Work Completed field of the most recently completed work request generated for this schedule.
The following outlines how upcoming due dates are determined.
- For fixed scheduling, dates for future PM are calculated by adding the specified interval to the Date for First PM field value until the program finds the dates that fall within the specified period.
- For floating scheduling, dates for future PM are calculated by adding the specified interval to the Date of Last PM field value until the program finds the first date that falls within the specified period.
- If you have completed the PM Schedules table's Manual Date for Next PM field, the program uses this date as the Calc. Date for Next PM field value. No schedule date will be generated for this PM schedule prior to the date specified in the Manual Date for Next PM field.
- If the Interval Type field has a value of Manual, instead of calculating dates for executing future PM work, the program checks the dates entered for the particular schedule in the PM Schedule Dates table, ignoring the values entered in the Current Frequency and Freq. Interval fields.
- If the Interval Type field is set to Meter and the schedule is assigned to an equipment item, the scheduling action sets the Calc. Date for Next PM value to the current date if the current equipment meter reading (as entered in the Equipment table) is greater than the PM schedule interval plus the maximum meter reading from any completed or closed work request for that PM schedule, and there are no uncompleted work requests for this PM schedule. Otherwise, the program calculates an interval of days by dividing the PM schedule interval by the Avg. Metered Usage/Day field value of the Equipment table (if this value is not zero). The program determines the next day to execute the work by adding the interval of days to the value for Date of Last PM (if floating scheduling). For fixed scheduling, the system add the interval days to the schedule's Date of First PM value.
The routine works with the following date fields:
Field Title | Field Name | Table | Explanation |
---|---|---|---|
Due Date From? | due_date_from | PM Schedules | Determines whether the scheduling routine uses dates from the SLA or the PM Schedule record. |
Date of Last PM | date_last_completed | PM Schedules |
The scheduling routine completes this field with the value of the Date Work Completed field of the most recently completed work request generated for this schedule. For floating scheduling, the routine uses this field to determine future PM dates. The system updates this value whenever PM work is planned, generated, completed, moved, or cancelled. |
Date for First PM | date_first_todo | PM Schedules | For fixed scheduling, the scheduling routine determines future PM dates by working from this date. |
Calc. Date for Next PM | PM Schedules |
The system updates this value whenever when you (or the system) generates a PM work order, generates PM Schedule dates, completes a PM work order, or modifies/cancels/deletes a PM Schedule Dates record. This value can represent either a planned PM Date or an open work order, and it may be a date in the past if it represents an open work order that is late or missed. It can be blank if there are no more work orders or planned dates after the last work order is completed (this will be common for Floating schedules). The system updates this value based on this logic:
|
|
Manual Date for Next PM | PM Schedules | If you complete this field, the scheduling routine completes Calc. Date for Next PM with this value and ignores the schedule definition. | |
Days Late Boundary | days_late | PM Schedules |
When you generate PM Schedule Dates, contributes to the value of PM Date – Latest. Specifies the number of days after the scheduled date that the work can be executed without causing a problem. |
Days Early Boundary | days_early | PM Schedules |
When you generate PM Schedule Dates, contributes to the value of PM Date – Earliest. Specifies the number of days before the scheduled date that the work can be executed without causing a problem. |
PM Date - Latest | date_latest | PM Schedule Dates |
The scheduling routine calculates this based on the Days Late Boundary value. A NULL value means that the routine can move this job back until the next date for this PM Schedule. pmsd.date_latest = pmsd.date_todo + pms.days_late
On the PM Planner's calendar, the PM Date Latest and the PM Date Earliest dates appear as brackets surrounding the PM Date rectangle . They are informational only, meaning you can still move a PM Date beyond these dates. If you set Due Date From? to be SLA, the scheduling routine uses the value of PM Date – Latest as the due date of the work request . |
PM Date - Earliest | date_earliest | PM Schedule Dates |
The scheduling routine calculates this based on the Days Early Boundary value. A NULL value means that the routine can move this job back until the prior date for this PM Schedule.
On the PM Planner's calendar, the PM Date Latest and the PM Date Earliest dates appear as brackets surrounding the PM Date rectangle. They are informational only, meaning you can still move a PM Date beyond these dates. |
PM Date - Original | date_orig_todo | PM Schedule Dates | The scheduling routine completes this field with the same values as PM Date (pmsd.date_todo). This "original" date serves as a means of preserving information about a PM Schedule date if a maintenance manager changes the PM Date. |
PM Date | date_todo | PM Schedule Dates | The scheduling routine completes this field based on the schedule you defined. It copies this value to PM Date Original. |
PM Date Status | vf_pmsd_status | PM Schedule Dates |
The PM Date Status is a virtual field that the scheduling routine completes by examining fields in the PMSD record. The values are:
|