SAP tableObjectMARDModuleMM_P2P

MARD table — MARD Storage Location Stock Table

MARD holds the stock quantities for a material at storage location level within a plant: unrestricted, quality inspection, blocked, and stock-in-transfer quantities. It does not hold value (that is MBEW), does not hold batch-specific quantities (that is MCHB), and a missing row does not prove zero stock across the material.

MARD is the storage location extension of material master data, carrying quantity buckets per plant and storage location. This page covers the quantity fields actually available, how the table joins into the wider inventory and movement model, and the recurring mistake of treating MARD as the single source of truth for stock quantity, value, or batch detail.

Published 15 Sept 2026· 1,006 words

What it stores

One row in MARD represents the stock situation for one material in one storage location within one plant. It is created when the material is extended to that storage location, either explicitly through master data maintenance or implicitly the first time a goods movement posts stock into it. The row carries quantity fields split by stock category: unrestricted-use, quality inspection, blocked, stock in transfer between plants, and restricted-use stock. All quantities are in the base unit of measure of the material, not in any alternate unit. MARD does not carry value; the same material at the same plant has a single value bucket in MBEW regardless of how many storage locations its quantity is spread across. MARD is a quantity ledger at the storage location grain, nothing more.

Key fields

  • MANDT - client
  • MATNR - material number
  • WERKS - plant
  • LGORT - storage location
  • LABST - unrestricted-use stock quantity
  • UMLME - stock in transfer, plant to plant
  • INSME - stock in quality inspection
  • EINME - restricted-use stock
  • SPEME - blocked stock
  • RETME - blocked stock returns
  • LGPBE - storage bin, only relevant where a fixed bin is assigned outside WM/EWM

How it joins the data model

  • MARD-MATNR = MARA-MATNR for material-wide attributes
  • MARD-MATNR = MARC-MATNR and MARD-WERKS = MARC-WERKS for plant-level material data such as MRP and procurement type
  • MARD-WERKS = MARC-WERKS = MBEW-BWKEY (via valuation area) to bring in stock value, since MARD itself carries no value
  • MARD-WERKS = T001L-WERKS and MARD-LGORT = T001L-LGORT for storage location master data such as description and warehouse number assignment
  • MARD-MATNR/WERKS/LGORT matched against MSEG-MATNR/WERKS/LGORT to trace which movements built up the current LABST balance

How to read it safely

MARD is client-dependent and reasonably narrow per material, so a selection on MATNR plus WERKS plus LGORT is fully selective and returns at most one row. Never select on MATNR alone across a large material master when the intent is a single plant or location; restrict WERKS first if the plant is known, since that alone cuts the table down enormously compared to scanning by material. Do not filter on LABST equal to zero expecting to find dead stock reliably, because a row with all quantity fields at zero can legitimately exist after the location was extended but never received stock, and conversely a location with real stock elsewhere is not visible from a zero row here.

How to prove it in the data

To confirm that a reported stock shortage is a storage location issue rather than a plant-wide shortage, select MARD by MATNR and WERKS with no LGORT restriction and compare LABST across all returned storage locations. If total quantity across locations matches what MRP or the stock overview expects but is concentrated in one LGORT while the transaction being executed points at another, the problem is a storage location split, not missing stock. Cross-check the same MATNR/WERKS against MBEW to confirm the value side is unaffected.

ECC vs S/4HANA

MARD continues to exist as a database table in S/4HANA and is still readable directly, but the underlying source of truth for quantities moved to the material document line item data model. Stock quantities are derived from that document-based model and MARD is kept consistent through the compatibility layer, so reads against MARD return correct current values without any application change required. Custom code that reads MARD directly still works; code that expected to insert or update MARD directly needs review, since direct writes bypass the document-based update logic.

Common pitfalls

  • Reading LABST as the total available stock for the material in the plant. It is only the unrestricted quantity at that one storage location; the plant total requires summing MARD across all its storage locations, and even that omits batch-managed quantities held only in MCHB and special stock in MSKA or MKOL.
  • Assuming a missing MARD row means the material was never received at that location. It can also mean the storage location was never extended for that material, which blocks receipt entirely and is a completely different root cause with a different fix.
  • Treating MARD as the value source. Two storage locations with very different quantities still share one valuation record in MBEW at the valuation area level; do not attempt to derive stock value by multiplying a MARD quantity by a standard price pulled from a different context.
  • Ignoring that batch-managed materials keep their quantity detail in MCHB, with MARD holding only the storage-location-level aggregate. Reconciling MARD against MCHB after a batch split or batch determination change is a common and necessary check that gets skipped.
  • Forgetting UMLME represents stock in transfer between plants, not between storage locations within the same plant. Confusing the two leads to wrongly concluding a transfer posting is stuck when it has actually already completed.

Whose problem this is

Inventory management or warehouse operations within the MM team owns discrepancies in MARD quantities, since they trace back to goods movements and storage location master data extension. Finance gets involved only when the value side in MBEW is in question, which MARD alone cannot answer.

Related SAP objects

Reviewed pages this object connects to in the ERPClimb knowledge graph.

Source: ERPClimb — https://erpclimb.com/sap-tables/mardERPClimb is an independent platform and is not affiliated with SAP SE. Reference pages are written and reviewed by SAP consultants for learning and troubleshooting.