SAPFree referencePDF, Excel, Word exportSAP S/4HANA

SAP Variant Configuration Tables Reference: CABN, KLAH, INOB, AUSP and the BOM Tables

Variant configuration spreads one product model across many tables: characteristics, classes, class assignments, dependencies, variant tables and BOMs. This reference lists the tables you actually query, the key fields, and the one thing worth remembering about each.

Download:
TableAreaWhat it holdsKey fields to knowPractical note
CABN
Characteristics
Characteristic master header
ATINN, ADZHL; ATNAM (name), ATFOR (data type)
ATINN is the internal number used by every other classification table.
CABNT
Characteristics
Characteristic descriptions
ATINN, ADZHL, SPRAS
Language dependent texts. Join on ATINN to show readable names.
CAWN
Characteristics
Allowed values of a characteristic
ATINN, ATZHL; ATWRT or ATFLV
ATWRT holds character values, ATFLV numeric values.
CAWNT
Characteristics
Texts for characteristic values
ATINN, ATZHL, SPRAS
Source of the value descriptions shown in the configuration screen.
KLAH
Classes
Class header
CLINT (internal), CLASS (name), KLART (class type)
CLINT is the key used by KSML and KSSK.
SWOR
Classes
Class descriptions and keywords
CLINT, SPRAS, KLPOS
Join to KLAH on CLINT for class text.
KSML
Classes
Characteristics assigned to a class
CLINT, POSNR, ADZHL; IMERK
IMERK points to the characteristic (ATINN).
KSSK
Classes
Allocation of objects to classes
OBJEK, MAFID, KLART, CLINT
OBJEK is the internal object number from INOB.
INOB
Classification
Link between an object (such as a material) and its internal object number
CUOBJ; KLART, OBTAB, OBJEK
OBTAB = MARA for materials. CUOBJ feeds KSSK and AUSP.
AUSP
Classification
Characteristic values assigned to objects
OBJEK, ATINN, ATZHL, MAFID, KLART
Large table. Always filter by KLART and MAFID when reading it.
TCLA
Classification
Class type customizing
KLART
Controls what object types a class type allows and whether it is multi-class.
CUKB
Dependencies
Knowledge base object (dependency) header
KNNUM, ADZHL; KNNAME
KNNAME is the dependency name you see in CU02. Status sits here too.
CUKBT
Dependencies
Dependency descriptions
KNNUM, ADZHL, SPRAS
Language dependent short text of a dependency.
CUOB
Dependencies
Allocation of dependencies to objects
KNOBJ, KNNUM
Links a dependency to a characteristic, value, BOM item or operation.
CUVTAB
Variant tables
Variant table header
VTNAM, VTINT
Structure definition; contents are held in the VALC and VALN tables.
CUVTAB_FLD
Variant tables
Fields of a variant table
VTINT, field position
Each field ties back to a characteristic.
CUVTAB_VALC
Variant tables
Character entries of variant tables
VTINT, record number
Read together with CUVTAB_VALN to rebuild a full table row.
CUVTAB_VALN
Variant tables
Numeric entries of variant tables
VTINT, record number
Numeric field values are stored here, not in VALC.
MARA
Material
General material data
MATNR; MTART; KZKFG
KZKFG flags a configurable material.
MARC
Material
Plant data for a material
MATNR, WERKS
MRP and strategy group settings that drive make-to-order configuration.
MAST
BOM
Material to BOM link
MATNR, WERKS, STLAN, STLNR, STLAL
Entry point from a material to its BOM number and alternative.
STKO
BOM
BOM header
STLTY, STLNR, STLAL, STKOZ
STLTY is the BOM category, for example M for material BOM.
STPO
BOM
BOM items
STLTY, STLNR, STLKN, STPOZ; IDNRK, POSNR, MENGE
KNOBJ ties the item to its dependencies. Super BOM selection lives here.
STAS
BOM
BOM item selection
STLTY, STLNR, STLAL, STLKN, STASZ
Links items to alternatives. Needed when a plain STPO join over-counts.
PLKO
Routing
Task list (routing) header
PLNTY, PLNNR, PLNAL, ZAEHL
Group counter and plan type identify the routing.
PLPO
Routing
Task list operations
PLNTY, PLNNR, PLNKN, ZAEHL
Operations can carry dependencies through KNOBJ for configurable routings.
MAPL
Routing
Material to task list assignment
MATNR, WERKS, PLNTY, PLNNR, PLNAL
Use it to find which routing a configurable material uses.
DRAW
Documents
Document info record header
DOKAR, DOKNR, DOKVR, DOKTL
Document type, number, version and part.
DRAD
Documents
Document to object link
DOKAR, DOKNR, DOKVR, DOKTL; DOKOB, OBJKY
Shows which materials or BOMs a document is attached to.
AENR
Change management
Change master header
AENNR
The engineering change number record; validity dates and status.
VBAP
Sales
Sales document item
VBELN, POSNR; CUOBJ
CUOBJ is the configuration number of a configured order item.

Table and field names are from standard SAP ERP and S/4HANA. Always confirm in SE11 on your release. In S/4HANA some tables change length (for example the 40 character material number) and some fields move to compatibility views.

Want a read-only view of your VC data?

Ask for an expert walkthrough of how to query configuration and BOM data safely from your own SAP system.

Optional. The tool and every export work without this. No spam.

How to use the table list

Type a table name or a topic such as dependency or routing into the search box and the list narrows to matching rows. Use the Area column to follow the chain: material (MARA) to object number (INOB) to class (KSSK, KLAH) to characteristic values (AUSP, CABN). Export to Excel to keep a copy in your project workbook. The key fields column shows what you need in a join, so you do not have to open SE11 for each table. Treat it as a map, then confirm exact field lengths on your system.

  • Search by table, field or area name
  • Follow the chain from MARA through INOB and KSSK to AUSP
  • Export to Excel for the project workbook
  • Confirm field lengths in SE11 for your release

How the classification tables fit together

A characteristic lives in CABN. A class (KLAH) collects characteristics through KSML. A material is linked to its classification by an INOB row, which produces the internal object number CUOBJ. That number is the OBJEK in KSSK, which assigns the object to a class, and in AUSP, which stores the values. Reading values therefore always takes two steps: find the CUOBJ in INOB, then read AUSP for that object and class type. Texts sit in separate tables such as CABNT and CAWNT and are joined on ATINN.

Common mistakes when reading VC data

The classic error is reading AUSP without a class type filter, which returns values from other object types. Another is joining CABN on ATINN alone and getting duplicates from change numbers, because the key includes ADZHL. For BOMs, joining STPO straight to MAST on the BOM number can double count when alternatives exist, so bring in STKO or STAS. Finally, configured order items keep their values in the configuration store referenced by VBAP-CUOBJ, not in the material classification, so do not expect to find them in AUSP of the material.

  • Filter AUSP by KLART and MAFID
  • Include ADZHL or filter on the current change state in CABN
  • Join STKO or STAS when a BOM has alternatives
  • Order configuration is separate from material classification

Frequently Asked Questions

Where are SAP characteristic values stored?

Allowed values of a characteristic are in CAWN, with texts in CAWNT. The values actually assigned to a material or other object are in AUSP, linked through the internal object number from INOB. Do not mix the two: CAWN is the list of options, AUSP is the chosen values.

What is the difference between KLAH and KSML?

KLAH is the class header with the class name and class type. KSML lists the characteristics assigned to that class. KSSK, a third table, lists which objects such as materials are assigned to the class. You join all three to see a class and what is in it.

Which table links a BOM item to its dependencies?

The BOM item in STPO carries a KNOBJ field that points to the dependency allocation. The dependencies themselves are in CUKB with their source code in the knowledge base tables, and the allocation record is in CUOB. In practice most consultants read them through transactions rather than directly.

Are these the same in S/4HANA?

The core classification and BOM tables are largely the same, so existing queries usually still work. Material number fields are longer in S/4HANA, some data moves behind compatibility views, and SAP has added new tables for advanced variant configuration. Always verify in SE11 on your system.

If you need configuration data pulled and explained in plain language from a live SAP system, Netray can set up read-only natural language access that shows the query it ran.