RESB table — RESB Reservation and Dependent Requirements Table
RESB stores reservation and dependent requirement line items: one row per material requirement tied to a production order, planned order, network, maintenance order, or cost center. Key fields are RSNUM, RSPOS, MATNR, WERKS, BDMNG (requirement quantity), ENMNG (withdrawn quantity), BDTER (requirement date) and AUFNR (order number). It records planned demand, not the actual goods movement.
RESB is the reservation table that carries every planned material requirement generated by a production order, planned order, maintenance order or network activity. This page covers the fields consultants actually query, the joins to order tables, and the recurring mistake of treating RESB quantities as if they were posted stock movements.
Published 16 Sept 2026· 1,005 words
What it stores
One row in RESB represents a single reserved or dependent requirement for one material at one plant, tied back to a source object such as a production order operation, a planned order, a maintenance order, a network activity, or a cost center withdrawal. The row carries the required quantity, the date the requirement is needed, and how much of it has already been withdrawn against goods issue. RESB is written the moment a production order is created or released (component determination from the BOM), and it is updated as goods issues post against the order. It does not record the goods movement itself, only the requirement and the running withdrawal total; the movement history sits elsewhere.
Key fields
- MANDT - client
- RSNUM - reservation number, the internal key grouping requirement lines for one source document
- RSPOS - reservation item number within RSNUM
- MATNR - material required
- WERKS - plant
- LGORT - storage location for the reservation
- BDMNG - requirement quantity
- ENMNG - quantity already withdrawn against the requirement
- BDTER - requirement date
- AUFNR - order number the reservation belongs to, when order-related
- BWART - movement type expected for the withdrawal
- XLOEK - deletion indicator on the reservation item
- KZEAR - final issue indicator, marks the requirement as closed
- CHARG - batch, when the requirement is batch-managed
How it joins the data model
- RESB-RSNUM = AFKO-RSNUM to reach the production order header from the reservation
- RESB-AUFNR = AFPO-AUFNR to reach the order item and confirm which material the order itself is producing
- RESB-RSNUM = PLAF-RSNUM (via the planned order link) when the requirement originates from a planned order rather than a released production order
- RESB-MATNR and RESB-WERKS align with the corresponding fields on MDTB or MDKP when tracing how the requirement surfaces as an MRP element in the stock/requirements list
- RESB-AUFNR = AFVC-AUFNR indirectly, since a reservation line is usually tied to a specific operation within the order
How to read it safely
Always restrict on MANDT plus at least one of WERKS, MATNR, or AUFNR before running a selection; RESB accumulates one row per component per order across the entire order history and an unrestricted select on a live system can run for minutes. If the question is order-specific, filter on AUFNR first, since that index path is fast and narrow. If the question is material-specific across many orders, WERKS plus MATNR plus a BDTER date range is the workable combination. Do not select on BDMNG or ENMNG as filter criteria; they are not indexed and every full-table scan attempt on them will be slow.
How to prove it in the data
Symptom: a production order component appears to still be open for goods issue even though the order is technically complete. Select RESB where AUFNR equals the order number, review each RSPOS line for BDMNG versus ENMNG, and check XLOEK and KZEAR on the same row. A line with BDMNG greater than ENMNG but KZEAR set or XLOEK set is closed by flag despite the apparent quantity gap, which is the actual explanation, not a posting failure.
ECC vs S/4HANA
RESB remains a physical, actively populated table in S/4HANA; there is no wholesale replacement of it. Component reservation logic for production orders and planned orders still writes to it the same way it did in ECC. Newer Fiori-based MRP and order-monitoring apps read from CDS views layered on top of RESB and related tables for reporting purposes, but the underlying table structure and the fields a consultant relies on for debugging component availability are unchanged.
Common pitfalls
- Treating BDMNG minus ENMNG as the definitive open quantity: a line can carry that gap permanently once KZEAR (final issue) or XLOEK (deleted) is set, and the gap no longer represents outstanding demand
- Assuming a deleted component disappears from RESB: deletion in the order only sets XLOEK, the row stays; counting RESB rows without excluding XLOEK overstates real open requirements
- Confusing RESB with actual goods movement history: RESB shows planned/reserved quantity and running withdrawal, the posted movement documents live in the material document tables, joined through RSNUM and RSPOS; reconciling stock consumption directly against RESB without that join gives the wrong number
- Assuming one RSNUM equals one order: RSNUM groups items for one source document, but the same reservation number space is shared across production orders, planned orders, and other object types, so an RSNUM alone does not tell you which object type is behind it
- Filtering only on AUFNR and concluding a material has no open planned-order demand: planned order reservations are linked through PLAF rather than an order number, and get missed by an AUFNR-only search
- Running a plant-wide or company-wide select on RESB without a date or order restriction: the table volume for a busy manufacturing plant makes an unrestricted scan a performance incident, not a query
Whose problem this is
The PP consultant owns the interpretation of reservation logic, component determination and final-issue flags. The MM or warehouse team owns the actual goods issue posting that updates ENMNG. Basis gets involved only when an unrestricted RESB read causes a performance problem on a shared system.
Related SAP objects
Reviewed pages this object connects to in the ERPClimb knowledge graph.
Source: ERPClimb — https://erpclimb.com/sap-tables/resbERPClimb is an independent platform and is not affiliated with SAP SE. Reference pages are written and reviewed by SAP consultants for learning and troubleshooting.