Lesson 3 of 5
The inventory data model and what it changes
9 min
The inventory change explains a surprising amount of conversion work: in SAP S/4HANA, material documents are stored in a single table, MATDOC, which holds what ECC kept in the header table MKPF and the item table MSEG. Stock quantities are no longer stored as running totals in aggregate tables; they are calculated from material documents when someone asks. The course on goods receipt and inventory management introduces this; here we look at what it means for a conversion.
| Topic | SAP ECC | SAP S/4HANA |
|---|---|---|
| Material document storage | MKPF (header) and MSEG (items) | MATDOC (header and item data together) |
| Stock quantities | Stored in aggregate tables per plant, storage location, batch and special stock, updated with each posting | Calculated from MATDOC on the fly |
| Reading the old tables | Direct | Compatibility views return the old structures for reads |
| Posting transactions | MIGO plus MB01, MB1A, MB1B, MB1C, MB31 and others | MIGO and Fiori apps; the MB posting transactions are no longer available |
| History after conversion | In MKPF/MSEG | Migrated into MATDOC during the conversion |
Why SAP changed it
In ECC every goods movement inserted document rows and then updated several aggregate rows, which had to be locked. High-volume postings to the same material competed for those locks. With MATDOC, a goods movement inserts rows and stock is derived when needed. SAP positions this as simpler and better for posting throughput and real-time stock visibility.
What it means for users
Warehouse and purchasing users mostly see continuity: MIGO, MMBE and the stock apps work, and material document numbers keep their format. The visible change is that the old MB posting transactions are gone. Contoso's Chicago warehouse still used MB1B for transfers and MB1A for issues; those users need MIGO or the Fiori apps, and any batch input recordings built on MB transactions must be rebuilt, for example with the standard goods movement BAPI.
- ECC usage analysisWhich MB transactions are still used, by whom, how often
- Map to replacementsMB1A → MIGO goods issue; MB1B → MIGO transfer posting; MB1C → MIGO other receipts
- Rebuild automationBatch inputs on MB transactions replaced by BAPI-based or standard app processes
- TrainWarehouse users at 1710 and 1720 trained on MIGO and stock apps
- Regression testEvery movement type in use posted through the new entry point
What it means for the conversion
- Data migration runtime: the conversion moves historical material documents into MATDOC. Many years of movements mean a long runtime; archiving old material documents before conversion reduces it.
- Stock reconciliation: stock quantities and values per material, plant, storage location and stock type must match before and after conversion.
- Custom code: reads usually keep working through compatibility views; direct writes to inventory tables must be redesigned; heavy reads through compatibility views may need tuning.
- Material ledger: in SAP S/4HANA the material ledger is active for inventory valuation; actual costing remains optional. Conversion teams reconcile inventory values in the ledger with the pre-conversion values.
Reconciling stock across the conversion
Plan the stock reconciliation before the first conversion trial. Just before the conversion, extract stock quantities and values per material, plant, storage location and stock type from ECC (for example with MB52 and MB5B at the key date). After the conversion, run the same selections in SAP S/4HANA, before anyone posts. Compare at line level, not only in total, and explain every difference. Contoso also compares the count of material documents per year for a sample of materials, so that missing history is caught early rather than discovered by an auditor months later.
What would you do?
After a test conversion, total stock value for plant 1720 matches ECC, but a custom Z-report of stock by storage location shows 312 fewer rotors in 172A than MMBE. What should the team do?
- MATDOC replaces MKPF and MSEG; stock is calculated from material documents.
- MB posting transactions are replaced by MIGO and Fiori apps; rebuild automation that used them.
- Conversion moves material document history into MATDOC; archiving reduces runtime.
- Reconcile stock quantities and values across the conversion and compare custom stock reports with standard ones.
Check your understanding · not graded
Lesson check
1. Where are material document data stored in SAP S/4HANA?
2. Which transaction replaces MB1A, MB1B and MB1C for goods movements?
3. How can the MATDOC migration runtime in a conversion be reduced?
4. Why do most read-only custom inventory reports keep running after conversion?