IBM AS/400 Frozen Dessert Maker User Manual


 
Using Externally Described Disk Files
Valid Search Arguments
You can specify a search argument in the ILE RPG operations CHAIN, DELETE,
READE, READPE, SETGT, and SETLL that specify a file name or a record name.
For an operation to a file name, the maximum number of fields that you can specify
in a search argument is equal to the total number of key fields valid for the file’s
key. For example, if all record types in a file do not contain all of the same key
fields, you can use a key list (KLIST) to specify a search argument that is com-
posed only of the number of fields common to all record types in the file. If a file
contains three record types, the key fields are defined as follows:
REC1 contains key field A.
REC2 contains key fields A and B.
REC3 contains key fields A, B, and C.
The search argument can only be a single field with attributes identical to field A
because field A is the only key field common to all record types. The search argu-
ment cannot contain a floating point, variable length, or null-capable field.
For an operation to a record name, the maximum number of fields that you can
specify in a search argument is equal to the total number of key fields valid for that
record type.
If the search argument consists of one field, you can specify a literal, a field name,
or a KLIST name with one KFLD. If the search argument is composed of more than
one field (a composite key), you must specify a KLIST with multiple KFLDs. To
process null-valued keys a KLIST must be used.
The attributes of each field in the search argument must be identical to the attri-
butes of the corresponding field in the file or record key. The attributes include the
length, the data type and the number of decimal positions. The attributes are listed
in the key-field-information data table of the compiler listing. See the example in
“Key Field Information” on page 434.
In all these file operations (CHAIN, DELETE, READE, READPE, SETGT, and
SETLL), you can also specify a search argument that contains fewer than the total
number of fields valid for the file or record. Such a search argument refers to a
partial key.
Referring to a Partial Key
The rules for the specification of a search argument that refers to a partial key are
as follows:
The search argument is composed of fields that correspond to the leftmost
(high-order) fields of the key for the file or record.
Only the rightmost fields can be omitted from the key list (KLIST) for a search
argument that refers to a partial key. For example, if the total key for a file or
record is composed of key fields A, B, and C, the valid search arguments that
refer to a partial key are field A, and fields A and B.
Each field in the search argument must be identical in attributes to the corre-
sponding key field in the file or record. The attributes include the length, data
type, the number of decimal positions, and format (for example, packed or
zoned).
286 ILE RPG for AS/400 Programmer's Guide