When the Entry is used in an ITP Model the data described by the Entry has to be retrieved from the database. ITP supports two interfaces to retrieve data using the ITP iSeries Connection:
The function to be performed by both these interfaces is exactly the same:
The Singular/Plural attribute of an Entry has no influence on the function performed for either the "key selection" or the "data retrieval". The Singular/Plural attribute only specifies how the Entry must be used in an ITP Model (in a WITH or a FORALL construct). The intended working of *DBMS400 or the program is always the same. Both the *DBMS400 interface and the program are called with two parameters for ITP internal use followed by a parameter for every Formal parameter of the Entry. The first two parameters are both defined as 10 bytes alphanumeric, the other parameters are passed conform the definitions of the appropriate Formal parameter.
Part of the Data retrieval interface is the way in which data is send to the ITP Model that uses the Entry. This is done by a call to the program ISNDDTA (since version 2.1) or the QSNDDTAQ program in the ITP iSeries Connection option "Pre-2.1 Connection legacy". The first 4 parameters of the programs are the same as the parameters of the iSeries program QSNDDTAQ (which was actually used in ITP/400):
Parameter 1 |
10 bytes alphanumeric |
ITP internal use; is equal to the first parameter of the retrieve data interface. |
Parameter 2 |
10 bytes alphanumeric |
ITP internal use; is equal to the second parameter of the retrieve data interface. |
Parameter 3 |
Packed decimal (5,0) |
Number of bytes passed in parameter 4. |
Parameter 4 |
Buffer with length indicated by parameter 3 |
A buffer containing the data of one record retrieved and to be returned to the ITP Model. |