9.4 Maintenance Plans, Maintenance Requests, Work Order Scheduling, and Journal Consumption
Key Takeaways
- Preventive maintenance plans generate maintenance schedule lines using time-based recurrence rules, counter-based usage triggers, or combined 'whichever occurs first' logic.
- Maintenance rounds group repetitive, simple inspection or lubrication jobs across multiple assets and functional locations into a single consolidated execution round.
- Maintenance requests allow shop-floor operators to log equipment issues, which supervisors triage and convert into corrective work orders with bidirectional state synchronization.
- The work order scheduling engine dispatches maintenance jobs using finite or infinite capacity rules, matching worker group skills and calendar availability.
- Work order consumption journals post actual technician hours, spare parts issued from warehouse stock, and third-party contractor expenses into Project Management and Accounting and the General Ledger.
9.4 Maintenance Plans, Maintenance Requests, Work Order Scheduling, and Journal Consumption
Quick Answer: The operational execution engine in D365 SCM Asset Management transforms maintenance triggers into executed and financially settled records. Triggers originate either proactively via Preventive Maintenance Plans (time or counter-based) and Maintenance Rounds (multi-asset inspection routes), or reactively via Maintenance Requests submitted from the shop floor. Work orders are scheduled and dispatched by the Scheduling Engine against technician capacity calendars. During execution, technicians log actual costs through three Work Order Journals: Hours (labor), Items (spare parts from inventory), and Expenses (contractor fees), which post directly to Project Management and Accounting and the General Ledger.
Preventive Maintenance Plans and Triggers
A Maintenance Plan (Asset management > Setup > Preventive maintenance > Maintenance plans) defines preventive maintenance rules that automatically generate upcoming service lines based on calendar intervals, operating counters, or combined criteria.
1. Trigger Types
| Trigger Type | Parameter Logic | Recurrence & Calculation Options | Example Industrial Application |
|---|---|---|---|
| Time-based | Governed by elapsed calendar time. | - From start date: Fixed recurring schedule (e.g., every 30 days regardless of completion date).<br/>- From completion date: Floating schedule (e.g., next service due 30 days after previous work order completed). | Quarterly fire safety inspections, annual air filter replacements. |
| Counter-based | Governed by operating counter readings. | - Repeated from counter value: Recurring interval (e.g., service every 500 operating hours).<br/>- Once reached threshold: Non-recurring milestone (e.g., replace turbine rotor at 10,000 total hours). | Vehicle oil change every 10,000 km, packaging blade replacement every 50,000 cycles. |
| Combined (Time & Counter) | Evaluates both time and counter lines simultaneously. | Whichever occurs first: The system triggers maintenance as soon as either the calendar interval or counter threshold is reached, suppressing the other line. | Compressor servicing: Every 6 months OR every 1,000 operating hours, whichever occurs first. |
2. Generating Maintenance Schedule Lines
Maintenance plans do not create work orders directly. Instead, a periodic batch job (Asset management > Periodic > Preventive maintenance > Schedule maintenance plans) scans active plans, assets, and registered counter values to generate Maintenance Schedule Lines with a status of Created (Asset management > Preventive maintenance > All maintenance schedule). Planners review, group, or filter these schedule lines before clicking Create work order.
Maintenance Rounds: Multi-Asset and Multi-Location Routes
When maintenance involves brief, repetitive tasks performed across dozens of machines, creating individual work orders for every single machine introduces administrative overhead. Maintenance Rounds (Asset management > Setup > Preventive maintenance > Maintenance rounds) resolve this by grouping multiple assets or functional locations into a single unified route:
- Daily Lubrication Round: A technician walks Packaging Lines 1 through 6, greasing conveyor bearings on 24 individual conveyor assets.
- Weekly E-Stop Inspection: A safety coordinator tests emergency stop buttons across all machines in Building C.
When a maintenance round is executed, D365 SCM generates a single consolidated work order containing multiple work order job lines—one for each asset on the round.
Maintenance Requests: Shop Floor Triage and Conversion
When equipment malfunctions on the plant floor, machine operators or shift supervisors author a Maintenance Request (Asset management > Maintenance requests > All maintenance requests).
[Shop Floor Operator logs Request] ──> [Supervisor Triages & Sets Severity]
│
┌───────────────────────────────────────────────────┘
▼
[Click: Create Work Order] ──> Creates Corrective Work Order linked to Request
│
└──> Status Synchronization: When Work Order is 'Completed', Request auto-updates to 'Completed'
1. Request Intake and Service Level Agreements
The operator selects the affected asset or functional location, specifies the observed fault symptom, and assigns a preliminary severity. The system assigns a Service Level based on predefined rules, calculating a target response time and target completion milestone.
2. Triage and Work Order Conversion
The maintenance supervisor reviews pending requests:
- Reject / Invalidate: If the request is a false alarm or duplicate, the supervisor rejects the request with an explanatory reason code.
- Create Work Order: If maintenance is warranted, clicking Create work order opens a dialog to select the work order type (e.g.,
Corrective), trade requirement, and target scheduling window. The resulting work order maintains a bidirectional link to the original request, synchronizing status updates automatically.
Work Order Scheduling and Worker Dispatching
Once a work order is generated, it must be scheduled and dispatched (Asset management > Periodic > Work orders > Schedule work orders or directly from the work order Action Pane via Schedule).
1. The Scheduling Engine
The D365 SCM scheduling engine evaluates multiple constraints:
- Finite vs. Infinite Capacity: With finite capacity enabled, the engine verifies that the required maintenance worker group has unallocated hours in their working time calendar during the requested window. If fully booked, the job shifts to the next available slot.
- Worker Competence and Certifications: Matches required skills or safety certifications defined on the maintenance job type (e.g., High-Voltage Electrician Level 3) against the skills recorded on worker profiles.
- Resource Group Dependencies: If the maintenance job requires auxiliary plant equipment (e.g., an overhead crane or forklift), the engine schedules the tool resource concurrently.
2. Dispatching
Following scheduling, the work order job lines display scheduled start and end timestamps and assigned technicians. The work order lifecycle state advances to Scheduled. Dispatchers can manually override worker assignments or re-sequence jobs within work order pools.
Work Order Consumption: Hours, Items, and Expenses Journals
During and upon completion of physical maintenance, technicians log actual resource consumption against the work order (Asset management > Work orders > All work orders > Journals):
+-------------------------------------------------------------------------+
| WORK ORDER CONSUMPTION |
+------------------------------------+------------------------------------+
| 1. HOURS JOURNAL (Labor) | - Records technician worker ID |
| | - Hours worked & hourly cost rate |
| | - Project category (e.g., Labor) |
+------------------------------------+------------------------------------+
| 2. ITEM JOURNAL (Spare Parts) | - Issues parts from warehouse stock|
| | - Updates inventory physical/fin. |
| | - Reduces inventory on-hand qty |
+------------------------------------+------------------------------------+
| 3. EXPENSE JOURNAL (Miscellaneous) | - Outside contractor service fees |
| | - Specialized tool rental invoices |
| | - Project expense category |
+------------------------------------+------------------------------------+
1. Hours Journals
Technicians enter actual hours expended, selecting the maintenance worker ID and project category. The system calculates labor cost based on the cost price configured in Project Management and Accounting. Hours journals can also be populated automatically from mobile maintenance apps or production route card integrations.
2. Item Journals
Consumes spare parts, seals, filters, and lubricants from warehouse inventory. Technicians select the item number, warehouse, location, and quantity consumed. Posting the journal issues the item from inventory, relieving on-hand stock and posting inventory issue transactions at current cost valuation.
3. Expense Journals
Used to capture non-labor, non-inventory charges incurred during maintenance, such as certified calibration fees from external vendors, crane rental fees, or disposal fees for hazardous waste.
Financial Posting and Project Management Integration
Asset Management is tightly integrated with Project Management and Accounting. Every work order in D365 SCM is assigned a Project ID based on rules configured in Work order project setup (Asset management > Setup > Work orders > Project setup):
1. Work Order Project Setup Rules
The setup establishes parent project hierarchies and financial dimension inheritance by combination of:
- Work order type (e.g., Preventive vs. Corrective vs. Capital Overhaul)
- Asset type or individual asset
- Functional location
2. General Ledger Cost Posting Flow
When work order consumption journals post, financial transactions flow through the project posting profiles to General Ledger accounts:
- Hours: Credits Payroll Allocation / Labor Absorption account; debits Maintenance Labor Expense.
- Items: Credits Inventory Issue account; debits Maintenance Spare Parts Expense.
- Expenses: Credits Accounts Payable / Accrued Expense account; debits Outside Service Expense.
3. Capitalization to Fixed Assets
When executing major rebuilds, plant modifications, or overhauls that extend the useful life or capacity of an asset, maintenance costs must be capitalized rather than expensed. In this scenario, the work order project is configured as an Investment Project. Accumulated maintenance labor, parts, and contractor expenses are capitalized onto the balance sheet by running Project elimination to transfer the total accumulated cost to the associated record in the Fixed Assets module.
Implementation Scenarios and Common Exam Traps
[!TIP] Exam Tip — Combined Maintenance Triggers: If an organization requires maintenance every 90 days or 500 operating hours, create a single maintenance plan with two lines (one time-based, one counter-based) configured with Whichever occurs first. Do not create two separate unlinked plans, as unlinked plans will trigger duplicate work orders without suppressing the alternate threshold.
[!IMPORTANT] Exam Tip — Automatic Work Order Creation: The batch job Schedule maintenance plans only generates maintenance schedule lines. To automatically convert these schedule lines into work orders without human intervention, the planner must configure an Auto-create work orders batch job or enable the Auto-create toggle on the maintenance plan line.
[!WARNING] Exam Trap — Closed Work Order Reversal: Once a work order transitions to a lifecycle state configured with Close work order, the record is permanently locked. No additional journal lines (hours, items, expenses) can be posted, edited, or reversed. If cost corrections are required, an adjustment journal must be posted in the Project Management and Accounting module referencing the underlying project ID.
A food processing facility requires changing the sanitary seals on a high-temperature pasteurizer either every 90 days or every 1,200 operating hours, whichever threshold is reached first. How should the functional consultant configure the maintenance plan in Dynamics 365 Supply Chain Management?
A packaging machine operator spots hydraulic oil pooling beneath a cartoner conveyor. The operator immediately logs a maintenance request from a shop floor terminal. A maintenance supervisor reviews the request and determines that immediate repair is required before the next production shift. What is the standard system process in Dynamics 365 Supply Chain Management to execute this repair?
A senior maintenance technician completes a 6-hour emergency overhaul of an industrial extruder. During the repair, the technician replaced two roller bearings taken from warehouse spare parts inventory and incurred an approved fee from an external laser-alignment specialist. How should the technician or maintenance clerk record these operational maintenance costs against the work order in Dynamics 365 Supply Chain Management?