/SAPAPO/MATLWHST
masterMixed keyWarehouse product at storage-type level — the same product's parameters narrowed to one storage type: preferred section and bin type, maximum fixed bins, and the min/max/replenishment quantity set
The warehouse-product key plus the storage type — a GUID-based key with one readable member, which is why it is badged mixed. RMMQTY_FIX marks quantities the planner has pinned against slotting recalculation.
What the badges mean
- master
- Data class: what the table holds — master data, transaction documents, configuration, an organizational object, or a language-striped text companion.
- Semantic key
- Every non-client key column is readable business data —
LGNUMplus a bin, task, or order number. Joins run on the columns you can see (see the quirks guide). - GUID key
- Every non-client key column is a GUID —
RAW(16)on the /SCWM, /SCDL, /LIME, and /SCMB tables, and theCHAR(22)compressed form on the product master. Join the raw column; a hex rendering is for reading only, and the two encodings need converting between (see the quirks guide). - Mixed key
- The key mixes readable and GUID columns in either direction — a product GUID inside an otherwise-readable bin key, or a readable status type inside an otherwise-GUID key. Check which side of a join you are on (see the quirks guide).
- DOCCAT: PDO
- A /SCDL delivery table holds several document categories in one table — inbound and outbound requests, the inbound delivery, the outbound delivery order, and the final outbound delivery — discriminated by
DOCCAT. The chips list the categories this table carries; anchor the one you mean or documents of every kind come back together (see the quirks guide). - Embedded S/4HANA only
- Deployment: shown only when a table does not exist in both embedded S/4HANA EWM and decentralized EWM. No table in this wave is deployment-specific, so the badge stays absent until one is.
Structural facts — how the table is keyed, not a trap by itself
Join & extract hazards — verify before you rely on this
Fields
16 fields · 5 key
16 fields.
| # | Field | Description | Type | Flags |
|---|---|---|---|---|
| 1 | MANDT | Client | CLNT(3) | Key |
| 2 | MATID | Product GUID in its 22-character compressed form | CHAR(22) | Key |
| 3 | SCUGUID | Supply chain unit GUID of the warehouse | RAW(16) | Key |
| 4 | ENTITLED_ID | Party entitled to dispose, as a GUID | RAW(16) | Key |
| 5 | LGTYP | Storage type the row's parameters apply to | CHAR(4) | Key |
| 6 | LVORM | Deletion flag | CHAR(1) | |
| 7 | SECTIND | Preferred storage section indicator | CHAR(4) | |
| 8 | BINTYPE | Preferred storage bin type | CHAR(4) | |
| 9 | MAXFIXBIN | Maximum number of fixed bins for the product in this storage type | NUMC(3) | |
| 10 | MAXQTY | Maximum quantity in the storage type | QUAN(15,3) | |
| 11 | MAXQTY_UOM_DSP | Display unit for the maximum quantity | UNIT(3) | |
| 12 | MINQTY | Minimum quantity in the storage type | QUAN(15,3) | |
| 13 | REPQTY | Minimum replenishment quantity | QUAN(15,3) | |
| 14 | RMMQTY_FIX | Flag: the minimum, maximum, and replenishment quantities are fixed against slotting | CHAR(1) | |
| 15 | NORPLN | Flag: no replenishment for the product in this storage type | CHAR(1) | |
| 16 | CHANGEUTC | Time of the last change | DEC(15) | UTCFilter date |
Field provenance: hand-curated. 5 key fields.
Boilerplate SQL
Starting point for reading the replicated copy of /SAPAPO/MATLWHSTon Databricks — the client anchor is already in place, the namespaced name is rendered as the underscore bronze name replication targets conventionally land it under, and any RAW16 GUID column selects a hex rendering alongside the raw value. Set your Unity Catalog location, schema, and filter values below; they’re substituted into the SQL and the copy button.
9 parameters not filled: <catalog>, <schema>, <client>, <MATID>, <SCUGUID>, <ENTITLED_ID>, <LGTYP>, <TS_FROM>, <TS_TO>
-- ============================================================
-- Table : /SAPAPO/MATLWHST — Warehouse product at storage-type level — the same product's parameters narrowed to one storage type: preferred section and bin type, maximum fixed bins, and the min/max/replenishment quantity set
-- Purpose: Column-selected read of /SAPAPO/MATLWHST — auto-generated from field metadata
-- Grain : One row per client + MATID + SCUGUID + ENTITLED_ID + LGTYP
-- Notes : Auto-generated skeleton for SAP EWM data replicated into your lakehouse — it reads the replicated copy, not the SAP database. Source table /SAPAPO/MATLWHST; slashes aren't legal in unquoted Databricks identifiers, so replication targets conventionally land it as sapapo_matlwhst — adjust to your landing convention (see quirks #namespace-slashes). RAW16 GUID columns are joined raw; the hex aliases are for display only (#guid-keys). Timestamps flagged UTC are DEC(15) yyyymmddhhmmss values in UTC, not warehouse local time (#utc-timestamps).
-- ============================================================
SELECT
t.MANDT AS "Client",
t.MATID AS "Product GUID in its 22-character compressed form",
t.SCUGUID AS "Supply chain unit GUID of the warehouse",
lower(hex(t.SCUGUID)) AS "Supply chain unit GUID of the warehouse (hex)", -- display rendering of the RAW16 GUID — join on the raw column; see quirks guide #guid-keys
t.ENTITLED_ID AS "Party entitled to dispose, as a GUID",
lower(hex(t.ENTITLED_ID)) AS "Party entitled to dispose, as a GUID (hex)", -- display rendering of the RAW16 GUID — join on the raw column; see quirks guide #guid-keys
t.LGTYP AS "Storage type the row's parameters apply to",
t.LVORM AS "Deletion flag",
t.SECTIND AS "Preferred storage section indicator",
t.BINTYPE AS "Preferred storage bin type",
t.MAXFIXBIN AS "Maximum number of fixed bins for the product in this storage type",
t.MAXQTY AS "Maximum quantity in the storage type",
t.MAXQTY_UOM_DSP AS "Display unit for the maximum quantity",
t.MINQTY AS "Minimum quantity in the storage type",
t.REPQTY AS "Minimum replenishment quantity",
t.RMMQTY_FIX AS "Flag: the minimum, maximum, and replenishment quantities are fixed against slotting",
t.NORPLN AS "Flag: no replenishment for the product in this storage type",
t.CHANGEUTC AS "Time of the last change" -- UTC
FROM <catalog>.<schema>.sapapo_matlwhst t
WHERE
t.MANDT = '<client>' -- client filter — drop on single-client systems
-- AND t.MATID = '<MATID>'
-- AND t.SCUGUID = unhex('<SCUGUID>') -- pass the 32-character hex form
-- AND t.ENTITLED_ID = unhex('<ENTITLED_ID>') -- pass the 32-character hex form
-- AND t.LGTYP = '<LGTYP>'
-- AND t.CHANGEUTC >= <TS_FROM> -- UTC yyyymmddhhmmss — convert warehouse-local dates first (#utc-timestamps)
-- AND t.CHANGEUTC <= <TS_TO>
ORDER BY t.MATID;Verified August 2026
Landing conventions differ — see namespaced names in a lakehouse.
Relationships
Diagram of 1-hop neighbors — join details below. GUID joins and text-table joins are highlighted; they’re the joins newcomers most often get wrong.
Join details
ON sapapo_matlwhst.MANDT = sapapo_matkey.MANDT AND sapapo_matlwhst.MATID = sapapo_matkey.MATID -- compressed CHAR(22) GUID equality — join as-isON sapapo_matlwhst.MANDT = scmb_toentity.MANDT AND sapapo_matlwhst.SCUGUID = scmb_toentity.SCUGUID -- RAW16 GUID equality — join raw; hex is for display/conformance onlyON sapapo_matlwhst.MANDT = sapapo_matlwh.MANDT AND sapapo_matlwhst.MATID = sapapo_matlwh.MATID AND sapapo_matlwhst.SCUGUID = sapapo_matlwh.SCUGUID AND sapapo_matlwhst.ENTITLED_ID = sapapo_matlwh.ENTITLED_ID -- compressed CHAR(22) GUID equality — join as-is · the storage-type row hangs off the warehouse-product row — join the full product + supply chain unit + entitled party keythe storage-type row hangs off the warehouse-product row — join the full product + supply chain unit + entitled party key
Transaction codes that touch this table
Curated: the EWM transactions an analyst would trace back to these rows, and how each one touches them.
R read · W write · R/W read + write
More Master Data & Parties tables
- /SCMB/TOENTITYSupply chain unit header — the location object EWM resolves warehouse, door, and party GUIDs against, carrying the readable identifier, the time zone, and the geo-coordinates
- /SCWM/PNPAKHPackaging specification header — the packing recipe as an iPPE node, with its status, the time it was activated, its group, and the rounding limits that decide how demand quantities are rounded to whole packs
- /SCWM/PVPAKCPackaging specification content — what is packed at a level: the product, the quantity and unit, and the mixing rules that say whether different products or batches may share the pack
- /SCWM/PVPAKLPackaging specification element — one level of the packing recipe as an iPPE variant: what packaging material is used, how much of it, and whether the level creates a handling unit
- /SAPAPO/MATKEYThe product master key table — the bridge between the internal product GUID every EWM table carries and the readable material number, with the base unit, weights, volumes, and shelf-life control
- /SAPAPO/MATLWHWarehouse product — the warehouse-level settings for a product: putaway and stock-removal control, storage section and bin type indicators, stock determination, two-step picking relevance, and the slotting demand quantity