Pooled Tables in Table Pools
Pooled tables are a special category of database table in ABAP Dictionary. They are defined by being saved in table pools rather than being characterized as pooled tables on the database.
A table pool is characterized as a database table on the database. It contains all rows of the pooled tables assigned to it. A table pool has the following table fields for this:
- Key field TABNAME with the type CHAR of length 10 for the name of a pooled table
- Key field VARKEY with the type CHAR with a maximum length of 110 for the values (chained as a character string) of the key fields of a row of the pooled table specified in TABNAME
- Field DATALN with the type INT2 for the length of the string in VARDATA
- Field VARDATA with the type RAW for the non-key fields (compressed in a byte chain) of the row specified by the key in VARKEY of the pooled table specified in TABNAME
The name of a table pool can have a maximum of ten characters. The configurable technical attributes of a database table are the size category and the activation type. All other technical attributes are fixed.
Once it is activated in ABAP Dictionary, a table pool must be created explicitly on the database using the Database Utility tool. A table pool that already contains data can no longer be modified or deleted.
In systems where no transformation to transparent tables has taken place, the table pool ATAB contains pooled tables from the ABAP runtime environment.
All key fields of a pooled table must have a flat character-like data type. The total length of all key fields or the total length of all non-key fields of a pooled table cannot be greater than the length of the VARKEY or VARDATA field of the associated table pool. A pooled table cannot have any fields of the obsolete predefined types DF16_SCL and DF34_SCL.
Before a pooled table is created, a suitable transparent table with a suitable delivery class must be created and transformed to a pooled table. This assigns the pooled table to a table pool.
No secondary indexes can be created for a pooled table. The same technical settings can be made as in a transparent table, but these are ignored (they are defaults for the transformation to a transparent table.
A pooled table can be flagged as transparent in its technical settings, which is a simple way of transforming it to a transparent table.
In systems where no transformation to transparent tables has taken place, the table PVERI_CLNT is a pooled table in the table pool ATAB.