The ABAP Dictionary is a central component of the ABAP Workbench. It contains both business and technical definitions and descriptions of SAP data. The ABAP runtime environment (such as the ABAP Interpreter and Dynpro Processor) frequently accesses the information in the ABAP Dictionary.
The ABAP Dictionary enables all the data definitions used in the SAP system to be centrally described and managed. It is an integrated and active dictionary, which means the ABAP Dictionary is completely integrated in the SAP development and runtime environment. The dictionary information is created only once, but is available throughout the SAP system at all times. The ABAP Dictionary (transaction SE11) automatically provides all the information that has been created or modified, ensuring that runtime objects are up-to-date and data is consistent and secure.
The tasks of the ABAP Dictionary can be subdivided into:
Database object definitions (tables, views, and so on)
Type definitions (structures, data elements, domains and so on)
Services definitions (search helps, lock objects, and so on)
Tables, views, lock objects, and domains are important object types in the ABAP Dictionary:
The definition of tables in the ABAP Dictionary is database-independent. This table definition then serves as the basis for the creation of a table with the same structure in the underlying database.
Views are logical views of one or more tables. View structures are defined in the ABAP Dictionary. This structure is then the basis for the creation of a view on the database.
Lock objects coordinate attempts by several users to access the same dataset. Function modules are generated from the lock object definition in the ABAP Dictionary; you can then use these function modules in application programs.
You can use domains to group fields that have similar technical or business purposes. A domain defines the value range for all table fields and structure components that refer to that domain.
The documentation (F1 help) and the input help (also called F4 help) for a field on an input screen are provided by the ABAP Dictionary as well.
ABAP Dictionary
The integration of the ABAP Dictionary in the program flow is based on the interpretative method of the AS ABAP runtime environment. Instead of working with the original of an ABAP program, the ABAP processor interprets a runtime object generated from the program text before its first execution. If time stamp comparison reveals that runtime objects are no longer consistent with the current status of the ABAP Dictionary, they are automatically generated again before execution.
The ABAP Dictionary also allows you to manage database tables relevant to the SAP system within the SAP system. Detailed, product-typical database knowledge is therefore not needed in application development. During activation of the table definition, the ABAP Dictionary transfers the definitions to the database level.
The interaction between the ABAP Dictionary on one side and the development environment or runtime environment on the other is shown in the figure "ABAP Dictionary".
Hint
Every database system also contains a dictionary. This dictionary is not the dictionary referred to in this lesson.
Table Definition and the Two-Level Domain Concept
Excursus: Core Data Services Views (CDS Views)