A table pool (or pool) is used to combine several logical tables in the ABAP/4 Dictionary. The pool definition consists of at least two keys fields and a long argument field (VARDATA).
The logical tables that are assigned to a table pool when they are defined are called as pooled tables. Pooled tables used to store control data such as screen sequences or program parameters.
The tables that are having a many to one relation are termed as pool tables.
Database levels are examples of where pool tables are stored.
The tables that are having a one to one relation are known as transparent tables.
If the field value in a table is undefined or unknown, it is called a null value.
The pool tables have many to one relationship with the tables in database. These tables are stored at the database level.
The transparent tables have one to one relationship with the tables in database. Structure of these tables correspond to single database fields.
The relationship established between the tables should be defined clearly at field level. Data entered should be verified against the existing data to ensure that there is no contradiction. Foreign keys are used to ensure the data consistency.
The difference between table and structure are -
TABLE |
STRUCTURE |
Table can store data physically. |
Structure can't store data physically. |
Table can include primary key. |
Structure can't include primary key. |
Table can include technical attribute. |
Structure can't have a technical attribute. |
A table cluster combines several logical tables in the ABAP/4 Dictionary. The rows from different tables within the cluster are brought together into a single physical record. The records from the cluster tables are thus stored in a single table in the database that is assigned to a cluster.
The difference between the table and template is -
- table is a dynamic.
- template is a static.
Generally, in technical terms, buffer represents additional memory area. Table buffer means the additional memory area that is available on the application server for the table. When we call data from database table, it loads from application server. Transparent tables and pool tables are buffered, while cluster table cannot be buffered.
Cluster table stores the data as name value pair. A cluster table contains data from multiple DDIC tables.
We can define table as dynamic and template as static.
The data of several cluster tables is stored together in a single table cluster in the database. A cluster table known only in the ABAP Dictionary, not in the database.
The data of several pooled tables are stored together as a table pool in the database.
Breakpoint table used to review the breakpoints when a large program with many break points set. It allows to review the breakpoints and allows for the removal of breakpoints that are no longer required.
The standard table of SAP can be modified mainly by two methods -
- Customizing includes
- Append structures
Refresh clears the internal table data; at the same time, it releases dynamically allocated memory. Predefined memory not released. Refresh is mainly involved with the body of the table.
Free clears the internal table data, at the same time releases both predefined and dynamically allocated memory. Internal table structure will not available anymore. Free is mainly used to retrieve the memory space of a table.
When the table is activated, a physical table definition is created in the database for the table definition stored in the ABAP dictionary. It is available for any insertion, modification and updating of records by any user.
The Size category describes the possible space requirement for the table in the database.
There are five size categories (0-4) and 11 data classes and only three of which are appropriate for application -
tables -
APPL0 – Master data (data frequently accessed but rarely updated)
APPL1 – Transaction data (data that is changed frequently)
APPL2 – Organizational data (customizing data that is entered when system is Configured and then rarely changed)
The other two types are -
USR
USR1 – Intended for customers own developments
Control tables perform the following -
- Specified values for the size category.
- Data class are mapped to database-specific values.