Skip to main content
Question

MRP: Can actual sales-order demand be prioritised over rebuilding to the reorder point?

  • August 6, 2026
  • 1 reply
  • 46 views

PeterNicholson
Jr Varsity II
Forum|alt.badge.img

We are using MRP as the Planning Method and Inventory Planning Exceptions (AM403000) as the purchaser’s daily exception screen.

Our system-wide Stocking Method on AM100000 is Reorder Point.

Here is a representative purchased item:

  • Quantity on hand/available for shipment: 4,250
  • Open sales-order demand: 17,000
  • Open purchase-order supply: 23,500
  • Reorder Point: 10,750
  • Safety Stock: 0
  • Min. Order Qty.: 250
  • Lot Size: 250
  • Max. Order Qty.: 0

 

By quantity and date, the existing supply covers the customer demand. The lowest projected balance is approximately 2,500, and the ending projected balance is exactly 10,750.  However, AM403000 produces Expedite exceptions against nine PO lines totalling 18,500 units. It appears that MRP is trying to restore the full reorder-point quantity as early as possible, rather than distinguishing between:

  1. Supply that must be expedited to fulfil an actual customer order on time.
  2. Supply that is only rebuilding inventory toward the longer-term target.

 

This makes AM403000 difficult for the purchaser to use: virtually every PO says Expedite, even though the customer orders are already covered and the additional urgency relates to rebuilding the reorder-point balance.

Our desired behaviour is:

  1. Prioritise actual sales-order demand and identify any PO lines genuinely required to prevent a customer stockout.
  2. Build inventory gradually toward the target quantity of 10,750.
  3. Do not tell the purchaser to expedite stock-building supply merely because the current balance is below 10,750.
  4. Retain the time-phased visibility and useful exceptions provided by AM403000.

 

We considered changing the item’s Planning Method to Inventory Replenishment and using Min./Max. replenishment. However, our understanding is that the item would then stop participating in MRP regeneration and would no longer produce Expedite/Late/Defer exceptions on AM403000. Prepare Replenishment (IN508000) also appears to be quantity-based rather than a time-phased customer-stockout screen.

We are now wondering whether the intended MRP solution is:

  • Keep Planning Method = MRP.
  • Set Reorder Point to zero or to a much smaller genuine emergency threshold.
  • Use Generate Forecasts (AM502000) or Forecast (AM202000) to represent anticipated future demand.
  • Use dependent forecasts so actual sales orders consume the forecast rather than being added to it.
  • Use the Demand Time Fence so near-term planning is driven only by actual customer orders.

 

  Questions:

  1. Is there any native way in MRP to make reorder-point or safety-stock recovery lower priority than actual sales-order demand?
  2. Is a dependent forecast the intended method for phasing future purchases while prioritising actual orders?
  3. Can AM502000-generated forecasts be used effectively as dependent forecasts?
  4. Is using forecasts to build gradually toward a desired stockholding level appropriate, or is that an incorrect use because forecasts represent future consumption rather than a target ending balance?
  5. Is there any way for an item using Inventory Replenishment to retain genuine customer-stockout or late-supply exceptions on AM403000?
  6. How are other companies handling this requirement without building a separate Generic Inquiry or customization?

 

  Any guidance or examples of working configurations would be greatly appreciated.

(Note: We do not currently use sales forecasts; target stock levels are recalculated as 1.6 times average monthly sales over the rolling previous 24 months, although AM502000 may be worth exploring.)

1 reply

Forum|alt.badge.img+5
  • Jr Varsity II
  • August 6, 2026

1. Is there any native way to make reorder-point recovery lower priority than SO demand?
No. The MRP engine (MRPEngine.cs, MRPEngineFirstPass.cs) treats reorder point demand identically to all other demand types in the matching algorithm. The only implicit ordering is by PlanDate, and reorder point demand is always dated today. There is no configuration to deprioritize it. The code comment in MRPPlanningType.cs:86 is explicit: ReorderPoint type "41" is "treated same as SafetyStock but just for difference in display."
2. Is a dependent forecast the intended method for phasing future purchases while prioritizing actual orders?
Yes — this is the correct architectural pattern. Here's how it works:
- Set the forecast's Dependent flag to true on AM202000.
- In MRPEngineFirstPass.LoadForecasts() (line 1233–1238), dependent forecasts have their quantity reduced by actual open SO quantities for the same item/site/period:
    row.Qty -= row.OrderQtyConsumed
  - The Demand Time Fence (AMRPSetup.ForecastPlanHorizon) excludes forecast demand inside the fence. Within the fence, only actual SOs drive planning. Beyond the fence, the unconsumed portion of the forecast creates demand.
This gives you exactly what you described: near-term planning driven by actual customer orders, with forecast-driven replenishment phased into the future.
3. Can AM502000-generated forecasts be used as dependent forecasts?
Partially. AM502000 generates AMForecast records from historical INTran shipping data. However, generated forecasts default to Interval = OneTime. After generation, you would need to:
1. Review the staging records on AM502000
2. After they become AMForecast records on AM202000, manually set Dependent = true on each forecast line
3. Adjust the intervals and date ranges to create proper forward-looking periods
AM502000 is useful as a starting point for quantities, but it doesn't automatically set the Dependent flag or create recurring interval-based forecasts. You'd likely want to create monthly dependent forecasts on AM202000 directly, using AM502000's output as a reference for quantities.
4. Is using forecasts to represent a target stockholding level appropriate?
No — this would be an incorrect use. Forecasts in MRP represent expected future consumption (demand), not a target ending balance. A forecast of 1,000/month means MRP expects 1,000 units to be consumed each month and plans supply accordingly.
However, this actually aligns with what you want. Your current reorder point of 10,750 = 1.6 × average monthly sales. Instead of expressing this as a static inventory target, express it as forecasted monthly demand:
- If average monthly sales = ~6,719 units (10,750 / 1.6), create monthly dependent forecasts of ~6,719 units
- Actual SOs consume the forecast, so MRP only creates additional supply for the unconsumed portion
- The Demand Time Fence ensures near-term planning uses only real SOs
- Supply to cover future forecast periods will have future required dates, so POs won't generate false Expedite exceptions
This reframes the problem correctly: you're not targeting an ending balance, you're planning for anticipated demand — which is what forecasts are for.
5. Can an Inventory Replenishment item retain exceptions on AM403000?
No. The MRP engine filters on PlanningMethod IN (MRP, DRP) in every query — LoadForecasts(), LoadInventory(), supply/demand loading, and exception generation. Items set to Inventory Replenishment are completely invisible to the MRP engine and will never appear on AM403000. The INItemSiteMaintAMExtension (line 165–167) confirms the UI also enforces this separation.
6. How are other companies handling this?
The standard Acumatica approach for your scenario is exactly the configuration you proposed:

Setting Value Rationale
Planning Method MRP Retains AM403000 exceptions
Reorder Point 0 (or small emergency buffer) Eliminates false Expedite noise
Safety Stock 0 Same reason
Dependent Forecasts Monthly on AM202000 Phases future demand, consumed by actual SOs
Demand Time Fence 30–45 days (tune to your lead times) Near-term = actual orders only
Min Order Qty / Lot S Keep at 250 Still applied to planned orders