SAP SE11 — ABAP Dictionary
Everything in SAP is stored in database tables, and the ABAP Dictionary is the catalogue describing them. SE11 is how you read that catalogue: what fields a table has, what type each field is, which fields form the key, and which other objects depend on it.
It is worth understanding the four layers, because SAP separates them where most systems do not. A table contains fields. Each field points to a data element, which supplies its business meaning and its field labels. Each data element points to a domain, which supplies the raw technical type and length. So the same domain can back many data elements, and the same data element can appear on many tables — which is why field labels are consistent across screens you would think were unrelated.
Knowing this makes SE11 far more useful than a field list. Double-clicking a field takes you to its data element; double-clicking again takes you to its domain, where a fixed value list often documents exactly which codes are legal.
When you would actually use SE11
- Finding which table holds a piece of data before writing a query or a report.
- Checking a field's type, length and allowed values.
- Working out the key fields of a table so a join or a lookup is correct.
- Using "where-used" to see what would break if an object changed.
What the screen looks like
Dictionary object
| Field | Key | Initial | Data element | Data Type | Length | Short Description |
|---|---|---|---|---|---|---|
| MANDT | X | X | MANDT | CLNT | 3 | Client |
| BUKRS | X | X | BUKRS | CHAR | 4 | Company Code |
| BELNR | X | X | BELNR_D | CHAR | 10 | Accounting Document Number |
| GJAHR | X | X | GJAHR | NUMC | 4 | Fiscal Year |
| BLART | BLART | CHAR | 2 | Document Type | ||
| BUDAT | BUDAT | DATS | 8 | Posting Date in the Document |
The fields, in plain English
The technical table name. BKPF is the accounting document header, BSEG its line items, MARA the material master, LFA1 vendors, KNA1 customers.
Watch out: Almost every application table starts with MANDT, the client field. It is part of the key but you never supply it — the system does.
The fields marked with an X together identify one row uniquely. Reading the key tells you the grain of the table without any documentation.
Watch out: BKPF's key is client + company code + document number + fiscal year. That single line explains why every FI transaction asks for all three.
The semantic layer: it carries the field labels you see on screens and the documentation behind F1 help. Double-click to open it.
The technical layer underneath a data element: type, length, and often a list of fixed values. When you need to know which codes a field legally accepts, the domain is where they are written down.
The button that finds every object referencing this one — programs, other tables, structures. Essential before changing anything, and useful for tracing how data flows.
Data class, size category and buffering. Mostly a Basis concern, but buffering explains the occasional case where a table change does not appear immediately.
Step by step
- 1Enter the object name in the matching field — table, view, data element or domain.
- 2Press Display. Avoid Change unless you are deliberately modifying the Dictionary.
- 3Read the Fields tab: names, key flags, data elements and types.
- 4Double-click a data element to see its labels and documentation.
- 5Double-click again to reach the domain and any fixed value list.
- 6Use the where-used list to find what depends on the object.
- 7Move to SE16N to look at the actual rows.
Errors you will hit, and what they mean
Table BKPF does not exist
Why: Typo, or the object is a view or a structure rather than a transparent table.
Fix: Use the search help with a wildcard, or try the View field instead. Not everything that looks like a table is one.
Object is not active
Why: A change was made and never activated — normally only seen in development systems.
Fix: Leave it alone unless it is your change. An inactive Dictionary object is somebody's work in progress.
No authorisation to display object
Why: Dictionary display is restricted on some production systems.
Fix: Reasonable to request — SE11 display changes nothing. Ask for display-only access rather than maintenance.
Common questions
What is the difference between SE11 and SE12?
SE12 is the display-only Dictionary transaction; SE11 can also maintain. If you only need to look, SE12 removes the chance of changing something by accident.
What is the difference between a data element and a domain?
The domain is technical — type, length, fixed values. The data element is semantic — field labels and documentation. Many data elements can share one domain.
How do I find which table holds a field I can see on a screen?
Click the field and press F1, then the technical information button. It names the table and field directly, which is far quicker than guessing in SE11.
Transactions that go with SE11
Reading about it only gets you so far
Practise SAP transactions in a safe simulated environment and keep what you learn.
Practise SAP transactions hands-on
Interactive modules, games, and an AI tutor — free to start.
Get started free →