Contract, MMBE and PPV Reports in SAP MM
contract report in sap mm
Also searched as
- sap mm custom reports
- sap mmbe report usage
- sap ppv report
- purchase price variance report sap
Short answer
Use ME2M or ME2N with a contract document type to list outline agreements, MMBE for the stock overview of a material, and a report on the price difference account for purchase price variance. For anything beyond these, build a custom report with SQ01, SE16N or a CDS view.
Applies to: SAP ECC 6.0 and S/4HANA, MM purchasing contracts (WK value contract, MK quantity contract)
How to run the common MM reports
- 1For contracts by material run ME2M. Set the document type to MK or WK, or choose the scope of list that covers contracts, then execute.
- 2For contracts by document number or vendor use ME2N or ME2L. Add columns for target quantity, released quantity and validity dates from the layout.
- 3For stock use MMBE: enter material and plant and read the stock by plant, storage location, batch and special stock.
- 4For purchase price variance, report postings on the price difference account (OBYC key PRD) with FBL3N, or compare PO price with invoice price in ME80FN or ME81N.
- 5Save each layout and variant so the report can be rerun, and schedule it in SM36 where a periodic output is needed.
- 6If standard lists do not fit, use SQ01 with an InfoSet over EKKO, EKPO and EKAB, or a CDS-based custom analytical query on S/4HANA.
Contract reports: where the data is
Contracts are purchasing documents in EKKO and EKPO. Contract type is the document category K. Value contracts use document type WK, quantity contracts MK. Validity dates are EKKO-KDATB and EKKO-KDATE, and the target value is EKKO-KTWRT.
Release orders against a contract are recorded in EKAB, so the consumed value or quantity can be reported. ME2N and ME2M show this directly when the right selection scope is used.
On S/4HANA, the Fiori app Monitor Purchase Contract Items is the supported analytical entry for the same question, with filters for expiring contracts and low release rates.
MMBE and how to read it
MMBE is the stock overview. It shows unrestricted stock, quality inspection, blocked stock, stock in transfer and special stocks, in a tree by company code, plant, storage location and batch.
It does not show planned receipts. For those use MD04, the stock and requirements list. For stock valuation use MB52 or MBEW, since MMBE focuses on quantities.
In S/4HANA, MMBE is still available, and the Fiori app Stock - Multiple Materials gives a list view for many materials at once.
Purchase price variance and custom reports
PPV arises when the invoice or PO price differs from the standard price of a material valued at standard price. At goods receipt the difference posts to the price difference account (key PRD), and at invoice verification the difference between the invoice and the PO posts there as well.
FBL3N on that account, filtered by period, gives line items you can drill into by material and PO. For summarised reports, export to a spreadsheet or use SQ01 with an InfoSet joining BSEG or ACDOCA to EKBE.
For custom MM reports prefer a query built from supported views. SE16N is for display only and is not advised for production use, and ABAP reports need development and a transport.
-- Open contract value consumed (illustrative) SELECT k.ebeln, k.lifnr, k.kdatb, k.kdate, k.ktwrt FROM ekko k WHERE k.bstyp = 'K' AND k.kdate >= CURRENT_DATE
Try it here, free
SAP MM Standard Reports and Report T-Codes
Search SAP MM standard report t-codes for POs, RFQs, stock, GR/IR and audit, with the use case for each.
Common pitfalls
- !ME2M defaults to purchase orders. Contracts only appear when the document type or scope is set to include them.
- !Expired contracts still show unless you filter on validity end.
- !MMBE shows current stock only. For history use MB5B.
- !PPV on materials with moving average price is spread through the price, so the PRD account stays small by design.
- !SE16N access in production is often locked down. Do not rely on it for business users.
How an ERP-grounded AI assistant handles this
An assistant over your SAP data can combine contract, release and invoice data to answer 'which contracts expire in 90 days with less than half the value used' or 'which materials created the largest PPV last quarter', showing the query it ran. It reads only and respects SAP roles, and in an on-prem deployment the data stays inside your network.
Frequently asked questions
Which transaction shows purchase contracts?
ME2M for contracts by material, ME2N for contracts by document number, and ME2L for contracts by vendor. Set the document type or scope so that contracts are included.
What does MMBE show?
It shows current stock quantities for a material by plant, storage location and batch, including quality inspection and blocked stock. It does not show planned receipts.
How do I report purchase price variance?
Report line items on the price difference account (OBYC key PRD) in FBL3N, then drill down to the PO and material. The cause is a difference between standard price and PO or invoice price.
Can I build my own MM report without ABAP?
Yes, with SQ01 and an InfoSet from SQ02, or with SQVI for personal use. On S/4HANA you can also build custom analytical queries in Fiori.
Related
Pricing Procedure in SAP MM, with a Worked PO Example
In SAP MM the pricing procedure is a calculation schema (standard RM0000) that lists condition types such as PB00 (gross price), discounts and freight in order, with a calculation base for each line. The schema is found from the vendor's schema group and the purchasing organization's schema group, and condition records come from the info record or from MEK1. Delivery costs are conditions on the PO item or entered in MIRO as unplanned delivery cost.
How-toSAP MM price determination: pricing procedure, condition types and fixing wrong PO prices
In SAP MM the purchase price comes from condition records, read in the order set by the calculation schema (standard RM0000), which the system assigns using the purchasing organization, vendor schema group and plant. PB00 is the gross price condition type. A wrong price in ME21N is usually a missing or outdated info record or condition, or the wrong schema.
How-toLanded cost in SAP MM: planned and unplanned delivery costs
SAP MM handles landed cost through delivery cost conditions. Planned delivery costs are conditions on the purchase order (flagged as delivery costs) that are accrued at goods receipt and settled with the freight invoice. Unplanned delivery costs are entered in MIRO when the invoice arrives. How they hit inventory value depends on the price control of the material.
How-toSAP SE16N vs SQVI: Table Browser vs Ad Hoc Query
SE16N is a single-table browser: fast filtering, formatted display, and export from one table at a time, with an optional edit function for authorized users. SQVI (Quick Viewer) builds ad hoc queries that join multiple tables without writing ABAP, and can be saved as a reusable report. Use SE16N for a quick look at one table; use SQVI when you need data joined across two or more tables.
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.
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.
AI for ERPGet AI Value From SAP ECC Now, and Use It to De-Risk the Move to S/4HANA
SAP ECC 6.0 mainstream maintenance ends in 2027. Add AI value on ECC now, using its existing BAPIs and IDocs, and use it to de-risk the S/4HANA migration.
Stuck on SAP ERP / S/4HANA?
Talk to engineers who work inside SAP ERP / S/4HANA every week, and who build private AI that answers these questions from your own ERP data.
Keep exploring
Free tools
- SAP MM Standard Reports and Report T-CodesSearch SAP MM standard report t-codes for POs, RFQs, stock, GR/IR and audit, with the use case for each.
- Purchase Price Variance (PPV) WorksheetCalculate purchase price variance line by line from quantity, standard price and actual price, with totals and percent of spend.
- SAP Outline Agreement Expiry ABAP SELECT GeneratorGenerate an ABAP report that lists purchasing contracts and scheduling agreements expiring in a window, from EKKO and EKPO.
ERP fixes and how-tos
- SAP open purchase orders report: ME2N, ME2M, ME2L and the underlying tablesHow to list open purchase order quantities in SAP with ME2N, ME2M and ME2L, which tables hold the data, and how to calculate open quantity from EKBE.
- SAP Purchase Price Variance (PPV) Report: T-Codes, Accounts and AnalysisHow purchase price variance arises in SAP, the PRD price difference account, and the tcodes and tables to report and analyze PPV by material and vendor.
- SAP MMBE Stock Overview: How to Run It, Read It and When to Use MB52 or MD04SAP MMBE explained: how to run the stock overview by plant, storage location and batch, what each stock column means, the tables behind it, and MB52 or MD04.
AI on your ERP
- AI for SAP S/4HANA Procurement (MM) That Reads POs, Receipts and Invoices TogetherAI for SAP S/4HANA procurement: query purchase orders, goods receipts and invoice matching in plain English, on-prem if needed, read-only by default.
- AI for Cost Accounting and Variance Analysis: Explain Why Standard and Actual Cost DivergedAI that explains purchase price, usage, efficiency and rate variances from ERP cost data, flags rollup problems and drafts variance commentary. Private and on-prem.