Reserve spares for maintenance without overstating availability
For Operating plant planning routine work and turnarounds
TL;DR — what you’ll learn
- Stop allowing multiple maintenance work orders to claim the same physical spare by checking `Total Physical Stock`; govern work-package material readiness using the strict four-tier stock equation: **`Free_To_Reserve = Physical_On_Hand − Quarantine_And_Preservation_Hold − Hard_Committed_Reservations`**.
- Separate **Soft Planning Reservations** (created when a work order is drafted or estimated, carrying an automatic expiry horizon) from **Hard Committed Allocations** (locked to an approved, scheduled work package within the kitting freeze window or physically staged in a job tote).
- Enforce two hygiene gates that prevent phantom stockouts and surprise day-of-job shortages: **automatic release of stale reservations** on cancelled, scope-reduced, or repeatedly deferred work orders, and a **logged Maintenance Authority Pre-Emption Workflow** whenever an urgent breakdown must reallocate a hard-reserved turnaround spare.
- In an illustrative conflict resolution on high-pressure Alloy 625 spiral-wound heat-exchanger gaskets (`Item GSK-SW-625-16`, `₹45,000/unit`, `5 units` physically on shelf), decomposing `1 unit` on [preservation/QA hold](O014-spare-preservation-records.md) and `3 units` hard-reserved for Turnaround Package `TAR-PKG-12` proves that **Free Stock is exactly `1 unit`** (`5 − 1 − 3 = 1`), blocking a routine PM order (`WO-PM-408`) from double-booking `2 units` and triggering an immediate `1-unit` expedited purchase requisition `18 days` before job execution.

Topics: maintenance spare parts reservation, turnaround material reservation, work order spare allocation, reserved versus available stock
Every maintenance planner and turnaround coordinator in a refinery or gas plant has experienced the "phantom availability" trap: when planning Work Package A and Work Package B two weeks before execution, both planners check the ERP stock screen, see 5 units on hand against their 3-unit and 2-unit requirements, and mark both work orders Material Ready — Green. Then, on the morning of the shutdown, the warehouse issues 3 units to Crew A, discovers 1 unit on the shelf has a bent sealing ring in QA quarantine, and tells Crew B that only 1 good unit remains for their 2-unit heat-exchanger re-gasketing job. Both planners saw "enough stock," yet the plant suffered a critical-path delay because the system failed to separate physical count, usable accepted stock, reserved commitments, and uncommitted free availability.
The core operational decision for materials managers, maintenance planners, and turnaround leads is to enforce a deterministic four-tier inventory state model (Physical, Usable_Accepted, Reserved_Allocated, and Free_Available) paired with stale-reservation expiry rules and an auditable reprioritisation path. Equipment reliability standards such as ISO 14224:2016 and enterprise asset-management architectures documented in IBM Maximo establish that work-order material availability must be evaluated against net uncommitted, quality-cleared stock rather than gross bin balances.
The four stock quantities every planner must distinguish
To prevent two work packages from claiming the same physical item—or the opposite problem, where dozens of abandoned draft work orders lock up warehouse stock that sits idle for months—the EAM/ERP integration must calculate and display four non-overlapping stock tiers:
- Gross Physical Stock (
Q_physical): Total units physically present inside the warehouse fence across all bins, including receiving docks, quarantine cages, and kitting bays. - Blocked / Non-Issuable Hold Stock (
Q_hold): Units physically present that cannot be issued to maintenance because they are in incoming inspection quarantine (O016), overdue or failed on warehouse preservation checks, or awaiting return condition disposition.- Net Usable Accepted Stock (
Q_accepted):Q_accepted = Q_physical - Q_hold
- Net Usable Accepted Stock (
- Reserved / Allocated Stock (
Q_reserved = Q_hard + Q_soft):- Hard Committed Reservation (
Q_hard): Stock locked to an approved, scheduled work order inside the firm execution horizon (e.g.,Need_Date <= Today + 21 daysor locked to a frozen Turnaround Package) or physically picked into a job kitting bin. Hard reservations deduct 1:1 from free stock and cannot be consumed by another work order without formal pre-emption approval. - Soft Planning Reservation (
Q_soft): Demand registered by a draft or long-horizon work order (Need_Date > Today + 21 days). Soft reservations trigger MRP replenishment signals (Purchase Requisitions) if total demand exceedsQ_accepted + On_Order, but they do not physically lock shelf units away from near-term scheduled jobs.
- Hard Committed Reservation (
- Free Available-to-Reserve Stock (
Q_free):Q_free = Q_accepted - Q_hard = (Q_physical - Q_hold) - Q_hard
Scroll horizontally to see all columns.
| Reservation state / horizon | When is it created? | Does it deduct from Q_free shelf availability? |
Automatic expiry / release rule (Stale Hygiene) |
Who can override or reallocate? |
|---|---|---|---|---|
Soft Planning Demand (Q_soft) |
Work order in WAPPR / Draft or Need_Date > 21 days out |
No (triggers MRP purchase signal against lead time, leaves shelf free for near-term work) | Auto-cancelled immediately if WO is cancelled/closed; flagged if WO stays in Draft > 60 days |
Maintenance Planner (routine planning adjustment) |
Hard Committed Allocation (Q_hard) |
Work order Approved + Scheduled within 21-day freeze window (or Turnaround freeze) |
Yes (1:1 deduction from Q_free) |
If Scheduled_Start_Date passes by > 14 days without issue or formal reschedule reason, downgrades to Soft_Expired_Hold and alerts Planner |
Maintenance Authority / Turnaround Manager (via logged Pre-Emption Order) |
Physically Kitted / Staged (Q_kitted ⊂ Q_hard) |
Warehouse picks item into dedicated Job Tote (Bin = KIT-BAY-XX) |
Yes (physically segregated in kitting bay) | If job is deferred > 7 days, warehouse must return tote to rack (Un-kit) so preservation & bin accuracy stay intact |
Warehouse Lead + Maintenance Superintendent |
- 1. Compute Net Usable Accepted Stock (Q_accepted)Subtract incoming QA quarantine, damaged returns, and overdue preservation holds (
Q_hold) from gross physical shelf stock (Q_physical). - 2. Deduct Active Hard Reservations (Q_hard)Subtract approved, freeze-window work-order allocations (
Q_hard) to publish the trueFree_Available (Q_free)balance. - 3. Purge Stale Reservations Before Declaring a ShortageAutomatically release lingering reservations on closed/cancelled WOs and challenge unissued allocations past their
+14-daygrace window. - 4. Route Deficit to Expedited PR or Logged Priority Pre-EmptionIf a new job exceeds
Q_free, either trigger an immediate Shortage Purchase Requisition (Shortage_Qty = Req_Qty - Q_free) or—for emergency Priority-1 breakdowns—execute a logged Maintenance Authority Pre-Emption that backfills the pre-empted donor job.
Control rule: Never allow two work orders inside the firm scheduling window to show "Material Committed" against the same physical unit (Sum of Q_hard <= Q_accepted at all times; see [O014](O014-spare-preservation-records.md), [O033](O033-maintenance-backlog-triage.md)).
Worked example: Resolving a 5-unit gasket conflict (GSK-SW-625-16) and purging stale reservations across 60 MRO SKUs
All item numbers, work orders, quantities, and rupee values below are illustrative examples constructed to verify the four-tier stock equation and reservation conflict workflow.
1. Single-item conflict trace on GSK-SW-625-16 (5 physical units on shelf, ₹45,000/unit)
Consider a 16-inch ASME Class 600 Alloy 625 / PTFE spiral-wound heat-exchanger girth-flange gasket (Item GSK-SW-625-16, unit cost ₹45,000.00, total physical shelf value ₹2,25,000.00 for 5 physical units in Bin WH-01-G14).
On 2026-10-20, two different maintenance planners evaluate GSK-SW-625-16 for jobs scheduled in early November:
- Work Package 1 (
TAR-PKG-12, High-Pressure Feed/Effluent ExchangerE-201AOverhaul, Need Date2026-11-05): Approved Priority-A turnaround package requiring3 units(₹1,35,000.00). - Work Order 2 (
WO-PM-408, Auxiliary Trim CoolerE-209Preventive Clean & Re-gasket, Need Date2026-11-07): Routine Priority-C preventive work order requiring2 units(₹90,000.00).
Why the naive physical-balance check fails
A planner looking only at Physical Stock = 5 units vs Total Demand = 3 + 2 = 5 units assumes both jobs are 100% covered (5 - 5 = 0 shortage).
What the Four-Tier State Equation reveals
- Gross Physical Stock (
Q_physical):5 units(₹2,25,000.00). - Less Blocked Hold Stock (
Q_hold = 1 unit): Serial/BatchGSK-LOT-24-05(1 unit,₹45,000.00) was flagged during cycle inspection with a creased inner winding ring and is locked inQA_Quarantine_Hold(NCR-GSK-19).Net Usable Accepted Stock (Q_accepted) = 5 (Physical) - 1 (Hold) = 4 usable units (₹1,80,000.00) - Less Existing Hard Reservation (
Q_hard = 3 units): Turnaround PackageTAR-PKG-12(Need Date 2026-11-05, inside the21-dayfreeze window) holds a confirmed hard reservation (RES-8801) for3 units(₹1,35,000.00). - True Free Available Stock (
Q_free) whenWO-PM-408requests2 units:Q_free = Q_accepted (4 units) - Q_hard (3 units) = 1 free unit (₹45,000.00) - Deterministic Shortage Calculation for
WO-PM-408(Requesting 2 units):Allocated_Hard_To_WO_PM_408 = min(Requested 2, Q_free 1) = 1 unit (₹45,000.00)Net_Material_Deficit = Requested (2 units) - Q_free (1 unit) = 1 unit shortage (₹45,000.00)- System action (
18 daysbefore2026-11-07): MarksWO-PM-408asPartially Reserved (1 of 2 units) — Shortage_Reason: 1_Unit_Short_After_Hard_Allocations_And_1_QA_Holdand automatically generates Purchase RequisitionPR-2026-9914for1 replacement unit(10-dayvendor lead time, arriving2026-10-31,7 daysahead of the7 Novjob).
Scroll horizontally to see all columns.
Stock tier / allocation bucket for GSK-SW-625-16 |
Naive ERP Physical View | Four-Tier Reservation Ledger | Financial Value (@ ₹45,000/unit) |
Operational Status |
|---|---|---|---|---|
Gross Physical Stock (Q_physical) |
5 units |
5 units |
₹2,25,000.00 |
Present in Warehouse WH-01 |
Blocked / Quarantine Hold (Q_hold) |
Hidden in total (0 deducted) |
-1 unit (NCR-GSK-19) |
-₹45,000.00 |
Creased inner ring; non-issuable |
Net Usable Accepted Stock (Q_accepted) |
Falsely assumed 5 units |
4 units (5 - 1) |
₹1,80,000.00 |
True technical ceiling for allocation |
Hard Committed to TAR-PKG-12 (RES-8801) |
Unreconciled (3 units) |
-3 units |
-₹1,35,000.00 |
Locked for 5 Nov Turnaround Exchanger E-201A |
Free Available before WO-PM-408 (Q_free) |
Falsely assumed 2 units |
1 unit (4 - 3) |
₹45,000.00 |
Allocated to WO-PM-408 (1 of 2 needed) |
Net Shortage Exposed for WO-PM-408 |
0 units (Surprise on 7 Nov) |
1 unit deficit (2 - 1) |
₹45,000.00 (PR-2026-9914) |
Ordered 20 Oct; arrives 31 Oct (7 d early) |
2. Plant-wide stale-reservation hygiene audit across 60 critical MRO SKUs
In the same plant, a pre-turnaround hygiene sweep audits 60 critical mechanical/instrument spare SKUs (total physical stock 420 units valued at ₹3,36,00,000) where planners complained that Free_Available appeared artificially zero:
- Gross Physical Stock (
Q_physical):420 units(₹3,36,00,000) - Blocked Hold Stock (
Q_hold):24 units(₹19,20,000) →Q_accepted = 420 - 24 = 396 usable units(₹3,16,80,000) - Unpurged Legacy Reservations (
Q_reserved_before):340 units(₹2,72,00,000), leaving only396 - 340 = 56 free units(14.14%of usable stock). - Automated Stale-Reservation Purge Results (
92 phantom reservations released):38 units(₹30,40,000) remained reserved on19work orders already markedTECO / ClosedorCancelledin EAM where the ERP reservation flag was never cleared.54 units(₹43,20,000) were locked on27routine work orders whose scheduled dates had passed by30 to 180 dayswithout material issue or active rescheduling.
- Post-Purge Active Hard Reservations (
Q_hard_after):340 - (38 + 54) = 340 - 92 = 248 genuine active reservations(₹1,98,40,000). - Restored Free Available Stock (
Q_free_after):396 (Q_accepted) - 248 (Active Q_hard) = 148 free units(₹1,18,40,000—an immediate+92 unit/+₹73,60,000increase in usable free stock without buying a single unnecessary duplicate part!).
Arithmetic check: GSK-SW-625-16: 5 physical - 1 hold - 3 hard reserved = 1 free unit; 2 requested - 1 free = 1 shortage. Plant audit: 396 accepted - (340 - 92 stale) = 148 free units (+92 units / Rs 73.60L unlocked).
Acceptance criteria and verification tests
Run these three acceptance tests in your EAM/ERP reservation configuration:
ACT-O018-01(Strict exclusion ofQ_holdand existingQ_hardfrom new hard reservation checks): WithQ_physical = 5,Q_hold = 1, andQ_hard = 3on a test item, submit a new approved work order inside the firm window requesting2 units. Pass condition: The system allocates at most1 unit(Q_free = 5 - 1 - 3 = 1), sets the work-order material status toPartial_Shortage (1 unit missing), and blocks a secondHard_Committedreservation from exceedingQ_accepted (4 units).ACT-O018-02(Automatic release of reservations upon work-order cancellation, scope reduction, or+14-dayexpiry): Cancel an open work order (or reduce its required quantity from 4 to 2) in EAM. Pass condition: Within the synchronous interface cycle, the corresponding ERP reservation (RESB) reducesQ_hardby the exact cancelled quantity (4or2 units) and incrementsQ_freeimmediately.ACT-O018-03(Mandatory Maintenance Authority approval and donor-job backfill when pre-empting a hard reservation): Attempt to issue a hard-reserved turnaround spare (RES-8801forTAR-PKG-12) to an unreserved emergency breakdown work order (WO-EMERG-99). Pass condition: The warehouse screen blocks standard issue until the Maintenance Superintendent / Turnaround Authority signs digital Pre-Emption RecordPRE-2026-04, which simultaneously logs the pre-emption reason, flagsTAR-PKG-12asMaterial_Pre-Empted_Action_Required, and triggers an expedited replacement requisition for the donor package.
Summary and next actions
Eliminate double-booked spares and phantom stockouts across routine maintenance and turnarounds:
- Publish
Free_Available = Physical − Hold − Hard_Reservedon all planner screens: Never display raw physical bin balances as available-to-schedule stock. - Synchronize EAM work-order closures and scope edits with ERP reservation tables daily: Purge orphaned reservations on closed, cancelled, or long-expired work orders before running MRP replenishment.
- Separate soft long-range planning demand from firm-window hard allocations: Prevent unscheduled draft work orders from locking physical shelf stock needed by approved next-week jobs.
- Require a logged Maintenance Authority pre-emption workflow with automatic donor backfill: Whenever an emergency breakdown takes a reserved spare, ensure the donor work package immediately receives an expedited replacement order (O006, O007).
Evaluate the next handover
Critical spares: what should be stocked before demand history exists?
References
Sources checked 15 October 2026. Vendor examples retain their stated release scope. Catalogue entries do not replace the full applicable standards.
- International Organization for Standardization — ISO 14224:2016 Petroleum, petrochemical and natural gas industries — Collection and exchange of reliability and maintenance data for equipment — Standard framework for maintenance work-order lifecycle states, spare parts planning, and resource readiness; accessed 20 October 2026.
- IBM Documentation — Maximo Manage: Rotating Assets and Non-Rotating Assets Overview — Inventory reservation types, hard/soft allocation logic, and storeroom availability calculations; accessed 20 October 2026.

