# SAP ECC MM and SD Tables Replaced in S/4HANA

> Source: https://netray.co/tools/sap-ecc-mm-sd-tables-replaced-in-s4hana-reference
> Publisher: Netray (netray.co), AI and integration engineering for ERP and manufacturing systems.
> Section: Free Tools

## Short answer

Look up which ECC 6.0 logistics tables (MM inventory, SD, credit, rebates, PP planning file) were replaced or turned into compatibility views in S/4HANA, and what that means for custom code.

## Category

sap

## Erp

SAP ECC 6.0

## Audience

- ABAP developer
- SAP functional consultant
- S/4HANA conversion lead
- Basis administrator

## Tool

**Kind:** worksheet

**Mode:** reference

**Columns:**

#### ECC table

**Key:** ecc

**Type:** text

#### ECC purpose

**Key:** purpose

**Type:** text

#### S/4HANA successor

**Key:** s4

**Type:** text

#### Compatibility view

**Key:** compat

**Type:** text

#### Impact on custom code

**Key:** impact

**Type:** text

#### Simplification item / note

**Key:** item

**Type:** text

**Rows:**

**Ecc:** MKPF

**Purpose:** Material document header

**S4:** MATDOC (header fields are columns of each MATDOC line)

**Compat:** NSDM_V_MKPF

**Impact:** SELECT still works through the redirect view; INSERT/UPDATE/DELETE on MKPF is not supported. Read MATDOC directly in new code.

**Item:** Inventory Management data model, SAP Note 2206980

**Ecc:** MSEG

**Purpose:** Material document item

**S4:** MATDOC

**Compat:** NSDM_V_MSEG

**Impact:** Reads are redirected; heavy MSEG selects without key fields get slower, not faster, through the view. Rewrite hot paths against MATDOC or released CDS views.

**Item:** SAP Note 2206980

**Ecc:** MARD

**Purpose:** Storage location data incl. stock quantities

**S4:** Master data stays in MARD; stock quantities calculated on the fly from MATDOC

**Compat:** NSDM_V_MARD

**Impact:** Stock fields (LABST, INSME, SPEME ...) are computed at read time. Do not write stock fields; select only the columns you need.

**Item:** SAP Note 2206980

**Ecc:** MCHB

**Purpose:** Batch stocks

**S4:** Quantities calculated from MATDOC

**Compat:** NSDM_V_MCHB

**Impact:** Same rule as MARD: read-only stock fields, avoid SELECT *.

**Item:** SAP Note 2206980

**Ecc:** MKOL

**Purpose:** Special stocks from vendor (consignment)

**S4:** Quantities calculated from MATDOC

**Compat:** NSDM_V_MKOL

**Impact:** Reads redirected; direct updates not supported.

**Item:** SAP Note 2206980

**Ecc:** MSLB

**Purpose:** Special stocks with vendor (subcontracting)

**S4:** Quantities calculated from MATDOC

**Compat:** NSDM_V_MSLB

**Impact:** Reads redirected; direct updates not supported.

**Item:** SAP Note 2206980

**Ecc:** MSKA

**Purpose:** Sales order stock

**S4:** Quantities calculated from MATDOC

**Compat:** NSDM_V_MSKA

**Impact:** Reads redirected; MTO stock reports with large WHERE ranges need a performance test.

**Item:** SAP Note 2206980

**Ecc:** MSPR

**Purpose:** Project stock

**S4:** Quantities calculated from MATDOC

**Compat:** NSDM_V_MSPR

**Impact:** Reads redirected; direct updates not supported.

**Item:** SAP Note 2206980

**Ecc:** MSKU

**Purpose:** Special stocks with customer (consignment at customer)

**S4:** Quantities calculated from MATDOC

**Compat:** NSDM_V_MSKU

**Impact:** Reads redirected; direct updates not supported.

**Item:** SAP Note 2206980

**Ecc:** MARC (stock fields)

**Purpose:** Plant data, including plant-level stock fields

**S4:** Plant master data stays in MARC; stock-type fields calculated from MATDOC

**Compat:** NSDM_V_MARC

**Impact:** Master data reads are unaffected; any code that reads or writes MARC stock fields goes through the calculated view.

**Item:** SAP Note 2206980

**Ecc:** MARDH, MCHBH, MKOLH, MSLBH, MSKAH, MSPRH, MSKUH, MARCH

**Purpose:** Stock history (previous period) tables

**S4:** Period stock derived from MATDOC

**Compat:** Redirect view per table; check the proxy object shown in SE11

**Impact:** Period-end stock reports still run but the H tables are no longer filled the ECC way. Retest any Z period-stock report.

**Item:** SAP Note 2206980

**Ecc:** MBEW (quantity and value fields)

**Purpose:** Material valuation

**S4:** Valuation in the Universal Journal (ACDOCA) and material ledger tables

**Compat:** MBV_MBEW

**Impact:** Material ledger is mandatory in S/4HANA. Code that reads MBEW-LBKUM/SALK3 gets values from the view; writing them is not supported.

**Item:** Material valuation / material ledger simplification

**Ecc:** VBUK

**Purpose:** SD document header status

**S4:** Status fields moved into the header tables VBAK, LIKP and VBRK

**Compat:** None to rely on; read the header table

**Impact:** Replace SELECT FROM VBUK with the status fields of the matching header table. A join VBAK-VBUK must become a single VBAK read.

**Item:** SD data model, SAP Note 2198647

**Ecc:** VBUP

**Purpose:** SD document item status

**S4:** Status fields moved into the item tables VBAP and LIPS

**Compat:** None to rely on; read the item table

**Impact:** Replace VBUP reads with the status fields of VBAP or LIPS. Check every Z report filtering on GBSTA, LFSTA, FKSTA.

**Item:** SAP Note 2198647

**Ecc:** KONV

**Purpose:** Pricing conditions of SD documents (transaction data)

**S4:** PRCD_ELEMENTS

**Compat:** V_KONV (read view)

**Impact:** KONV is no longer filled. Change SELECT FROM KONV to PRCD_ELEMENTS or the view; in ECC KONV was stored in table cluster KOCLU, PRCD_ELEMENTS is a transparent table.

**Item:** Pricing data model, SAP Note 2220005

**Ecc:** VAKPA, VAPMA

**Purpose:** SD index: sales documents by partner / by material

**S4:** Not used; HANA reads VBAK/VBAP/VBPA directly

**Compat:** None

**Impact:** Z code that reads these indexes returns nothing. Replace with joins on VBAK, VBAP and VBPA.

**Item:** SD data model, elimination of document index tables, SAP Note 2198647

**Ecc:** VLKPA, VLPMA

**Purpose:** SD index: deliveries by partner / by material

**S4:** Not used; read LIKP/LIPS/VBPA

**Compat:** None

**Impact:** Replace with delivery table joins.

**Item:** Elimination of document index tables

**Ecc:** VRKPA, VRPMA

**Purpose:** SD index: billing documents by partner / by material

**S4:** Not used; read VBRK/VBRP/VBPA

**Compat:** None

**Impact:** Replace with billing table joins.

**Item:** Elimination of document index tables

**Ecc:** VBOX

**Purpose:** Rebate index for SD rebate processing

**S4:** Settlement Management with condition contracts

**Compat:** None

**Impact:** Classic SD rebate (VBO1, VBOF) is replaced; Z rebate reports must be redesigned on condition contracts.

**Item:** SAP Note 2200691

**Ecc:** S066, S067

**Purpose:** LIS info structures for SD credit (open orders, open deliveries)

**S4:** SAP Credit Management (FIN-FSCM-CR) credit exposure

**Compat:** None

**Impact:** Credit exposure reports on S066/S067 must move to Credit Management.

**Item:** Credit Management simplification, SAP Note 2270544

**Ecc:** KNKK, KNKA

**Purpose:** Customer credit limit per control area / central

**S4:** UKMBP_CMS_SGM (credit segment data) and UKMBP_CMS (BP credit profile)

**Compat:** None

**Impact:** FI-AR credit management (FD32) is replaced by BP-based credit management (UKM_BP). Credit checks and Z exits need redesign.

**Item:** SAP Note 2270544

**Ecc:** KNA1, LFA1 (maintenance)

**Purpose:** Customer and vendor master

**S4:** Tables stay; maintenance only through Business Partner (BUT000) with CVI links CVI_CUST_LINK and CVI_VEND_LINK

**Compat:** Not needed, tables still exist

**Impact:** Reads keep working. XD01/XK01-style BDC and direct table updates must move to BP (transaction BP, BP APIs).

**Item:** Business Partner approach

**Ecc:** MATNR (all tables)

**Purpose:** Material number field, 18 characters

**S4:** Field length extended to 40 characters

**Compat:** n/a

**Impact:** Fixed-length structures, file layouts, concatenations and offset access (lv_matnr+0(18)) break. Run the field length extension checks in ATC.

**Item:** Material number field length extension

**Ecc:** LQUA, LAGP, LTAK, LTAP

**Purpose:** Warehouse Management quants, storage bins, transfer orders

**S4:** Tables still exist; LE-WM is in the compatibility scope, EWM is the strategic successor

**Compat:** n/a

**Impact:** Code keeps working while WM is used under compatibility scope rights; plan the move to embedded or decentralised EWM.

**Item:** Compatibility scope (LE-WM)

**Ecc:** MDVM, DBVM

**Purpose:** MRP planning file entries

**S4:** PPH_DBVM

**Compat:** None

**Impact:** Z code that creates or reads planning file entries in MDVM/DBVM must use PPH_DBVM. MRP Live (MD01N) reads the new planning file.

**Item:** MRP simplification

**Notes:** Scope: MM inventory, SD, credit, rebates and the PP planning file. Finance tables (BSEG, BSIS, COEP, FAGLFLEXT and others) are in the companion FI-CO reference. Check every mapping against the Simplification List for your target release and run the ATC S/4HANA readiness checks on your own code.

## Content

**Intro:** This reference lists the SAP ECC 6.0 logistics tables that were removed, merged or turned into calculated compatibility views in SAP S/4HANA, with the successor object and the effect on custom ABAP. It covers MM inventory, SD, credit, rebates and the MRP planning file; finance tables are on a separate page.

**Sections:**

#### How to use it

**Body:** Search the table name your custom code reads or writes, for example MSEG, VBUK or KONV. The row tells you whether the table still exists physically, whether a redirect view serves old SELECT statements, and what has to change. Export to Excel and add a column for each Z object found by a where-used list or the ATC check run, so the conversion team has one remediation list.

**Bullets:**

- Reads usually survive through compatibility views; writes usually do not.
- Tables marked None return no data in S/4HANA: the code compiles but gives empty results.
- Export the list and match it against the custom code worklist from the Custom Code Migration app or ATC.

#### Where this lives in the system

**Body:** In S/4HANA, open SE11 on MARD or MSEG and you will see a proxy object (the NSDM_V_* view). Any Open SQL SELECT on the table name is redirected to that view, which aggregates MATDOC. MATDOC is the single material document table: one line per item with the header fields repeated, which is why MKPF and MSEG no longer exist as separate stores. In SD, the status fields from VBUK and VBUP are now columns in VBAK, LIKP, VBRK, VBAP and LIPS, and pricing results moved from KONV to PRCD_ELEMENTS.

#### Worked example: a stock report

**Body:** A Z report joins MARD and MCHB with SELECT * to show unrestricted and quality stock per batch. After conversion it still runs, because both names are redirected to calculated views, but every row now triggers an aggregation over MATDOC. With SELECT * the view computes every stock column, so the report can become slower than on ECC. The fix is to select only LABST and INSME, or to move to the released stock CDS views. A second Z report that UPDATEs MARD-LABST directly must be removed: stock changes only through goods movements.

#### Version differences and gotchas

**Body:** The data model changes in this list apply from the first S/4HANA release (1511) onward, so the exact release mostly matters for compatibility scope items such as LE-WM. Watch for field length changes: MATNR is 40 characters and amount fields were extended, so offset access, fixed-length interface files and structures that mirror old lengths break silently. SELECT * into a structure typed on an ECC copy of a table is a common failure. Treat note numbers here as starting points and read the current version of each note in the support portal.

**Cta:** If you want your team to ask questions about MATDOC stock, SD status or pricing in plain English on your own S/4HANA or ECC system, we can set that up on your servers.

**Faq:**

#### What replaced MSEG and MKPF in S/4HANA?

**Answer:** Both are replaced by MATDOC, a single table that holds header and item data of every material document. SELECT statements on MSEG and MKPF are redirected to the compatibility views NSDM_V_MSEG and NSDM_V_MKPF, so old reads keep working. Writes are not supported, and performance-critical reports should read MATDOC or released CDS views directly. The change is described in SAP Note 2206980.

#### Do VBUK and VBUP still exist in S/4HANA?

**Answer:** No. The status fields were moved into the document tables: header status into VBAK, LIKP and VBRK, item status into VBAP and LIPS. Code that selects from VBUK or VBUP must be rewritten to read the status fields from those tables. This is part of the SD data model simplification in SAP Note 2198647.

#### Where are SD pricing conditions stored in S/4HANA?

**Answer:** In PRCD_ELEMENTS. KONV is no longer filled for new documents. Replace SELECT FROM KONV with PRCD_ELEMENTS (same key idea: KNUMV plus condition counter) or the read view V_KONV. Because PRCD_ELEMENTS is a transparent table, joins that were impossible on KONV in ECC are now possible.

#### Are SAP PP tables changed in S/4HANA?

**Answer:** Most PP order tables such as AFKO, AFPO, AFVC and RESB keep their structure. The notable table change is the MRP planning file: MDVM and DBVM are replaced by PPH_DBVM, used by MRP Live. Material numbers of 40 characters and stock read from MATDOC also affect PP custom code. Check the production order join generator for current table relationships.

## Search terms

sap mm tables in s4 hana, sap sd tables in s4 hana, sap pp tables in s4 hana, sap ecc 6.0 vs s4 hana, matdoc table s4hana, vbuk vbup s4hana, konv prcd_elements, nsdm_v_mseg

---
Talk to an engineer: https://netray.co/contact?intent=erp_ai | Machine catalog: https://netray.co/agent/catalog.json
