The system does not handle actual records to access the buffer and write data to it. For this purpose, the system instead always uses containers, which represent the abstraction of a record. In general, containers are seen within the system as instances of class
CL_HRPA_INFOTYPE_CONTAINER
. A container can hold any or all of the following data:
Infotype records
Secondary infotype records, where infotype views are present
Cost assignment data
Infotype text data
In this release, infotypes generally must be processed by container
IF_HRPA_INFOTYPE_CONTAINER
. Some infotypes, however – whether specialized infotypes created in this release, or infotypes to be migrated from prior releases – are processed by a different container, which will be appropriate under certain limited circumstances. To determine the container that will process your infotype, you may review, if desired, the
Classes for Determining Version IDs and Infotype Containers
table (T582ITVCLAS), which is introduced in
a subsequent topic
.
Note
From this point forward, all examples of infotypes are assumed to be processed by container
IF_HRPA_INFOTYPE_CONTAINER
.
Containers are read on demand. Thus, in order to obtain access to data in another infotype (as a prerequisite for writing your data to the buffer), you must first determine the corresponding container. It is not expedient, however, to read data from another infotype via interface
IF_HRPA_READ_INFOTYPE
and then to create the container, as this approach is likely to result in data loss and is certain to impair performance.