ILE RPG Language Reference
- Entry
- Explanation
- Blank
- If positions 33-39 are blank:
- a named constant is being defined on this specification line,
or
- the standalone field, parameter, or subfield is being defined
LIKE another field, or
- the standalone field, parameter, or subfield is of a type where
a length is implied, or
- the subfield's attributes are defined elsewhere, or
- a data structure is being defined. The length of the data structure
is the maximum value of the subfield To-Positions. The data structure
may be defined using the LIKEDS or LIKEREC keyword.
- nnnnnnn
- Positions 33-39 may contain a (right-justified) numeric
value, from 1 to 9999999, as follows:
- If the From field (position 26-32) contains a numeric value, then
a numeric value in this field specifies the absolute end position
of the subfield within a data structure.
- If the From field is blank, a numeric value in this field specifies
:
- the length of the entire data structure, or
- the length of the standalone field, or
- the length of the parameter, or
- the length of the subfield. Within the data structure, this subfield
is positioned such that its starting position is greater than the
maximum to-position of all previously defined subfields in the data
structure. Padding is inserted if the subfield is defined with type
basing pointer or procedure pointer to ensure that the subfield is
aligned properly.
Notes:
- For graphic or UCS-2 fields, the number specified here
is the number of graphic or UCS-2 characters, NOT the number of bytes
(1 graphic or UCS-2 character = 2 bytes). For numeric fields, the
number specified here is the number of digits (for packed and zoned
numeric fields: 1-63; for binary numeric fields: 1-9; for integer
and unsigned numeric fields: 3, 5, 10, or 20; ).
- For float numeric fields the number specified is the number of
bytes, NOT the number of digits (4 or 8 bytes).
- If you want to define a character, UCS-2 or graphic
definition with a length greater than 9999999, use the LEN keyword
instead of specifying the Length entry. If you want to explicitly
position a subfield whose length is defined with the LEN keyword,
use the OVERLAY keyword. You code the data structure name in the first
parameter of the OVERLAY keyword, and the desired start position of
the subfield in the second parameter of the OVERLAY keyword.
- +|-nnnnn
- This entry is valid for standalone fields or subfields defined
using the LIKE keyword. The length of the standalone field or subfield
being defined on this specification line is determined by adding or
subtracting the value entered in these positions to the length of
the field specified as the parameter to the LIKE keyword.
Notes:
- For graphic or UCS-2 fields, the number specified here is the
number of graphic or UCS-2 characters, NOT the number of bytes (1
graphic or UCS-2 character = 2 bytes). For numeric fields, the number
specified here is the number of digits.
- For float fields, the entry must be blank or +0. The size of a
float field cannot be changed as with other numerics.
- Reserved Words
- If positions 26-32 are used to enter special reserved words,
this field becomes an extension of the previous one, creating one
large field (positions 26-39). This allows for reserved words, with
names longer than 7 characters in length, to extend into this field.
See Positions 26-32 (From Position), 'Reserved Words'.
[ Top of Page | Previous Page | Next Page | Contents |
Index ]