MPS in SAP PP: PIRs (MD61), MPS Items and the MD40 Run
mps in sap pp
Also searched as
- sap pp pir
- master production schedule SAP MD40
- planned independent requirements MD61
- MPS item SAP material master
Short answer
Master production scheduling in SAP PP plans critical end items separately from the rest of MRP. Mark the material as an MPS item through its MRP type, enter planned independent requirements (PIRs) in MD61, run the MPS in MD40, review and firm the planned orders, then run MRP for the lower levels. It lets planners control the items that drive capacity and cost.
Applies to: SAP ECC 6.0 and S/4HANA on-premise, classic MRP-based PP. S/4HANA also offers MRP Live and Demand-Driven MRP, which behave differently.
How to set up and run MPS
- 1In the material master (MM02), MRP 1 tab, set an MRP type that carries the master schedule item setting. Your configuration lists the MRP types that flag MPS items; check them in Customizing rather than assuming a code.
- 2On the MRP 3 tab, set the strategy group and planning time fence if you want orders to freeze inside a horizon. A strategy such as make-to-stock (10) or planning with final assembly (40) is typical for finished goods.
- 3Create planned independent requirements in MD61 (display MD63, change MD62) for the version, the material, the plant and the quantity per period, such as weekly buckets.
- 4Run the MPS with MD40 (total planning for MPS items) or MD41 / MD43 for single-item, interactive planning. Set the creation indicator, MRP list and scheduling.
- 5Review results in MD04 (stock/requirements list), MD05 (MRP list) and MD07 for the MPS item. Check the planned orders match the PIR and the lot size.
- 6Firm or adjust planned orders (convert to production orders in CO40 / MD14 as needed) and, when satisfied, run MRP (MD01N / MD01) for the non-MPS levels.
- 7Check capacity with CM01 / CM21 for the work centres loaded by the MPS orders.
What makes an item an MPS item
SAP does not use a field on its own for this. The material is an MPS item because its MRP type is configured as one, and the planning file entry of that material is then handled by the MPS run and not by normal MRP. That is why it is easy to plan the same item twice if the MRP type was changed halfway through the project.
Choose MPS items sparingly: the end products, key assemblies and bottleneck parts. Every MPS item is something a planner must review, so the point is fewer, more controlled decisions.
PIRs in MD61
A planned independent requirement is the forecast or production plan that drives MPS. MD61 creates it by version, with quantities by month, week or day. The PIR sits in tables PBIM (header) and PBED (period quantities). The strategy decides how sales orders consume it: with strategy 40, sales orders consume the PIR and the unconsumed part stays as planned demand.
If MD04 shows no PIR, check the version is active for MRP (version 00 is active by default) and that the requirements type matches the strategy.
MD61 Create planned independent requirements MD62 Change MD63 Display MD40 MPS total planning MD41 MPS single item MD43 interactive MD04 Stock/requirements list (check PIR and planned orders)
Running and reviewing the MPS
MD40 plans all MPS items and their direct dependent requirements, so planners can validate the production plan before the components are exploded. MD43 lets the planner change the result interactively and save. The usual loop is run, review, adjust PIR or lot size, run again, then release to MRP.
The planning time fence (MARC-FXHOR) is what keeps the MPS from rescheduling orders in the near term. Without it, a new run may reshuffle orders production already started preparing.
MPS versus normal MRP
Normal MRP explodes everything in one pass. MPS keeps the master items, especially those that drive cost and capacity, under planner control. For simple make-to-order shops this is overkill. For repetitive or high-value configurations it avoids unwelcome surprises in component demand.
Try it here, free
SAP PP Tables Map: Orders, Routings, Resources and PIR
A table list for SAP PP grouped by production order, routing, work center, PIR and BOM, with the key fields to join on.
Common pitfalls
- !Putting every material on an MPS MRP type so no one can review them all.
- !Entering PIRs in an inactive version so MRP never sees them.
- !Running normal MRP before MPS, which plans the MPS items too and duplicates orders.
- !No planning time fence, so firm orders move when quantities change.
- !Forgetting to check capacity after the MPS creates large planned orders.
How an ERP-grounded AI assistant handles this
A grounded assistant on SAP can read PBIM, PBED and the planned orders and explain a mismatch, for example why an MPS item shows no demand or which PIR version is feeding MD04. It summarises what changed between runs. On-prem, Netray runs it against your own system with read-only access; planning changes stay with the planner.
Frequently asked questions
What is MPS in SAP PP?
Master production scheduling is the planning of the main end items and key assemblies before the rest of MRP runs. Planners enter PIRs, run MD40, review results and then trigger MRP for components. It gives tighter control over the items that drive capacity and cost.
What is a PIR in SAP PP?
A planned independent requirement is a forecast or production plan quantity for a material, entered in MD61 by version and period. It is stored in tables PBIM and PBED, and the planning strategy decides how sales orders consume it.
What is the MPS transaction in SAP?
MD40 is the total planning run for MPS items. MD41 plans a single item and MD43 gives an interactive single-item run. Review results in MD04 or MD05 afterwards.
Do I need MPS if I already run MRP?
Not always. MPS adds a planner review step for critical items. If your products are simple, standard MRP is usually enough. It earns its keep where capacity is tight or end-item decisions are costly.
Related
SAP MD01N (MRP Live) vs MD01: How to Run MRP Correctly
MD01N is MRP Live: the same planning logic as classic MD01, but executed inside the SAP HANA database instead of looping through materials in ABAP. Run it from MD01N by entering the plant, choosing a processing key (net change or regeneration), setting the purchase requisition and scheduling parameters, and executing in the background for large scopes.
How-toPhantom Assembly in SAP PP: Setup, Example and MRP Behaviour
A phantom assembly is a sub-assembly that exists in the BOM but is never stocked or produced as its own order. In SAP set special procurement key 50 on the phantom's MRP 2 tab and give it a BOM. MRP passes the requirement straight through to the phantom's components and the parent production order picks up those components directly.
How-toSAP PP, PM and MM API: Production Orders, Maintenance Orders and Material Master
S/4HANA exposes production orders, maintenance orders and material master through OData services published in the SAP Business Accelerator Hub, for example API_PRODUCTION_ORDER_2_SRV, API_MAINTENANCEORDER and API_PRODUCT_SRV. On ECC or older releases, use BAPIs and RFC such as BAPI_PRODORD_CREATE, BAPI_ALM_ORDER_MAINTAIN and BAPI_MATERIAL_SAVEDATA. Direct M-table access is not an API and is best avoided.
Error fixSAP M7 021: Deficit of SL Stock Quantity
M7 021 fires during a goods issue, delivery, or confirmation when SAP checks the unrestricted-use (SL) stock for the exact plant, storage location and batch combination and finds less than what you are trying to post out. Fix the entry (batch, storage location, quantity) first; only enable negative stock or downgrade the message to a warning if the business genuinely needs to post ahead of a receipt.
Error fixSAP IDoc Status 51: Application Document Not Posted
Status 51 tells you the IDoc reached the application layer and failed to post, but the status text itself is not the error - the real cause sits in the status record's long text or the linked application log. Fix the underlying data or configuration, then reprocess the IDoc through BD87 rather than editing the status.
Error fixSAP Short Dump TIME_OUT: Maximum Runtime Exceeded
A TIME_OUT runtime error means a dialog (or RFC) work process ran longer than the maximum allowed runtime, controlled by profile parameter rdisp/max_wprun_time (600 seconds by default). The fix is almost always to move the long-running work to background processing or tune the underlying program, not to raise the timeout.
AI for ERPAI Agents for SAP Production Planning, MRP, and Exception Triage
AI agents that triage SAP MD04 exceptions, explain predictive MRP shortages, and draft planned-order actions, grounded on your own SAP data, deployed on-prem.
AI for ERPAI for SAP S/4HANA, Running On-Prem or in Your Private Cloud
Run AI on SAP S/4HANA without sending ERP data to a public API. On-prem and private-cloud architecture, CDS views, OData, and honest deployment trade-offs.
Stuck on SAP ECC / S/4HANA?
Talk to engineers who work inside SAP ECC / S/4HANA every week, and who build private AI that answers these questions from your own ERP data.
Keep exploring
Free tools
- SAP PP Tables Map: Orders, Routings, Resources and PIRA table list for SAP PP grouped by production order, routing, work center, PIR and BOM, with the key fields to join on.
- SAP PP Go-Live Master Data and Cutover ChecklistA tick-box readiness check for production planning go-live, covering master data, configuration, cutover and support.
- Master Production Schedule TemplateA weekly MPS grid with forecast, customer orders, projected on hand and planned production quantity for a single product.
ERP fixes and how-tos
- Planning Strategy 40 in SAP PP, with a Worked ExamplePlanning strategy 40 (planning with final assembly) with a worked MTS example: PIR consumption, MRP results in MD04, setup and common mistakes in SAP PP.
- SAP PP End to End Configuration: Steps, IMG Paths and Process FlowSAP PP end to end configuration in order: organizational structure, master data, MRP, order types, confirmation, costing and settlement, with IMG paths and tcodes.
- SAP PP, PM and MM API: Production Orders, Maintenance Orders and Material MasterWhich SAP APIs cover production orders, maintenance orders and material master (MM02)? OData service names, BAPI alternatives and a sample GET call.