SAP tableObjectMCHAModuleMM_P2P

MCHA table — Batch Master Data at Plant Level

MCHA stores the plant-level master data for a batch: the combination of material, plant and batch number, along with attributes such as the batch usage/restriction indicator and the deletion flag. It does not hold stock quantities. Quantities live in MCHB. MCHA is the plant extension of a batch that already exists client-wide in MCH1.

This page covers what a row in MCHA represents, the fields a consultant actually queries, how it joins to material master and stock tables, and the recurring mistake of treating it as a quantity table. It also covers how batch restriction status gets misread during incident triage.

Published 15 Sept 2026· 966 words

What it stores

One row in MCHA represents the plant-level master data for a single batch of a single material in a single plant. It exists because batch numbers are created once at client level in MCH1, but each plant that uses the material can hold its own attributes for that same batch, such as whether the batch is currently usable (restricted or unrestricted) and whether it has been flagged for deletion at that plant. MCHA does not carry any stock quantity. It is pure master data describing the batch's status and administrative history at a given plant, and it must exist before movements against that material/plant/batch combination can post cleanly.

Key fields

  • MANDT - client
  • MATNR - material number
  • WERKS - plant, the extension key that distinguishes MCHA from the client-level MCH1
  • CHARG - batch number
  • LVORM - deletion flag for this batch at this plant, set through batch maintenance, not a physical stock indicator
  • CADKZ - restricted-use / batch status indicator, marks whether the batch is currently blocked from unrestricted use
  • ERSDA - date the plant-level batch record was created
  • ERNAM - user who created the plant-level batch record

How it joins the data model

  • MCHA-MATNR = MARA-MATNR, general material master
  • MCHA-MATNR AND MCHA-WERKS = MARC-MATNR AND MARC-WERKS, plant-level material data
  • MCHA-MATNR AND MCHA-WERKS AND MCHA-CHARG = MCHB-MATNR AND MCHB-WERKS AND MCHB-CHARG, adds storage location and batch quantities
  • MCH1-MATNR AND MCH1-CHARG = MCHA-MATNR AND MCHA-CHARG, client-level batch header to plant-level extension
  • MCHA-MATNR AND MCHA-WERKS = MBEW-MATNR AND MBEW-BWKEY, batch valuation data where batch-specific valuation is active

How to read it safely

Always restrict on MANDT, MATNR, WERKS and CHARG together; each of these fields individually has poor selectivity on its own, and MATNR alone can return thousands of rows across all plants and batches. WERKS plus MATNR narrows the set to a manageable range before adding CHARG for a single batch. Do not attempt a full table scan in a productive system, MCHA can carry every batch ever created for every batch-managed material. When investigating a specific incident, start from the material and plant named in the error message, not from the batch number alone, since batch numbers are frequently reused or look similar across materials.

How to prove it in the data

Symptom: a goods movement fails with the batch reported as blocked or restricted for use. Select MCHA with MATNR, WERKS and CHARG from the failing document. Check CADKZ: a value indicating restricted use confirms the batch is genuinely blocked at that plant, independent of quantity. Cross-check LVORM to rule out the batch being flagged for deletion rather than restricted, since both produce similar posting failures but require different fixes.

ECC vs S/4HANA

MCHA continues to exist as a database table in S/4HANA and can still be read directly for diagnostic purposes. Batch master maintenance transactions and the underlying data model for plant-level batch attributes are essentially unchanged from ECC. Newer Fiori batch master applications and reporting typically read through compatibility views layered on top of the classic tables rather than querying MCHA directly, but the table itself has not been withdrawn or restructured in a way that changes its key or its role.

Common pitfalls

  • Treating MCHA as a stock table. It has no quantity fields at all, quantities and storage location detail live in MCHB, and pulling MCHA expecting available stock returns nothing useful.
  • Reading LVORM as evidence the batch has no remaining stock. The deletion flag only marks the plant-level batch record for deletion in a housekeeping run, it does not check or clear open quantities first, and a batch can carry LVORM with stock still sitting in MCHB.
  • Misreading CADKZ as a permanent block. Restricted-use status is a working status set and cleared through quality or inventory processes, not a hard master data lock, and it can flip during the same day a document is being investigated.
  • Assuming a batch missing from MCHA means the batch does not exist. It may exist client-wide in MCH1 but never have been extended to the plant in question, which produces a distinct 'batch not found for this plant' error rather than 'batch does not exist'.
  • Expecting shelf-life dates or classification characteristics to sit in MCHA. Those live in classification tables tied to the batch object, not in MCHA's own fields, so a query limited to MCHA cannot answer expiry or characteristic-value questions.
  • Confusing plant-level batch attributes with valuation-level batch attributes when batch-specific valuation is active. MCHA governs usability status, MBEW governs the value, and a batch can be fully usable but valued incorrectly, or vice versa.

Whose problem this is

Batch master data quality is an MM master data ownership question, usually the same team that owns material master extension to plants. Restricted-use status changes are frequently a QM process outcome, so a batch stuck in restricted use is a QM inspection lot question before it is an MM data question. Deletion flag handling is governed by whoever runs periodic batch cleanup.

Related SAP objects

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

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