DDS for physical and logical files
Use this field-level keyword when you want to combine two or more fields
from the physical file record format into one field in the logical file record
format you are describing. The name of this concatenated field must
appear in positions 19 through 28. Specify the physical file field
names in the order in which you want them to be concatenated, and separate
them by blanks.
The following rules and restrictions apply:
- The OS/400 program assigns the length of the concatenated field as the sum
of the lengths (digits and characters) of the fields that are included in the
concatenation.
- Note:
- For fields with data type J, the shift-out and shift-in pairs between the
concatenated fields are removed from the resulting field. If the
resulting data type is hexadecimal, the shift-out and shift-in pairs are
eliminated for DBCS fields that precede the first hexadecimal fields.
- A DBCS-graphic field can be concatenated only with another graphic data
type field.
- The OS/400 program assigns the data type based on the data types of the
fields that are being concatenated. When bracketed-DBCS fields are
included in a concatenation, the general rules are:
- If the concatenation contains one or more hexadecimal (H) fields, the
resulting data type is hexadecimal (H).
- If all fields in the concatenation are DBCS-only (J), the resulting data
type is DBCS-only (J).
- If the concatenation contains one or more DBCS (O, E, J) fields, but no
hexadecimal fields, the resulting data type is DBCS-open (O).
- The OS/400 program assigns the field to be fixed length or variable length
based on the fields that are being concatenated. The general rules
are:
- Concatenation of a variable length field to either a fixed length field or
another variable length field results in a variable length field.
- Concatenation of a fixed length field to a fixed length field results in a
fixed length field unless the VARLEN keyword is also specified on the same
field as the CONCAT keyword.
- The maximum length of a concatenated field varies depending on the
data type of the concatenated field and the length of the fields being
concatenated. If the concatenated field is zoned decimal (S), its total
length cannot exceed 63 bytes; if it is character (A) or DBCS(O, J), its
total length cannot exceed 32 766 bytes. If the concatenated field
is variable length, its total length cannot exceed 32 740 bytes
(32 739 if the field also allows the null value).
If the concatenated field is a DBCS-graphic (G) field, its total length
cannot exceed 16 383 characters. If the concatenated field is
variable length, its total length cannot exceed 16 370
characters.
- In join logical files, the fields to be concatenated must be from the same
physical file. The first field specified on the CONCAT keyword
identifies which physical file is used. The first field must,
therefore, be unique among the physical files on which the logical file is
based, or you must also specify the JREF keyword to specify which physical
file to use.
- When one or more of the fields being concatenated are DBCS fields, none of
the fields on the CONCAT keyword can be specified as a key, select, or omit
field unless the field name is also specified in positions 19 through 28 or on
a RENAME or CONCAT keyword specified before the DBCS concatenation.
- The usage of a concatenated field must be I (input only).
- REFSHIFT cannot be specified on a concatenated field that has been
assigned a data type of O or J.
Example:
The following example shows how to specify the CONCAT keyword on the DDS
coding form.
|...+....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8
A R RECORD 1 PFILE(PF1)
A FLD1 I CONCAT(PFLD1 PFLD2)
A FLD2 I CONCAT(PFLD1 PFLD2 PFLD3)
A FLD3 I CONCAT(PFLD4 PFLD5)
A
In the example, if the fields from PF1 are:
- PFLD1 with data type J
- PFLD2 with data type J
- PFLD3 with data type E
- PFLD4 and PFLD5 with data type G
Then the resulting fields are:
- FLD1 with data type J
- FLD2 with data type O
- FLD3 with data type G
[ Top of Page | Previous Page | Next Page | Table of Contents | Index ]
(C) Copyright IBM Corporation 1992, 2005. All Rights Reserved.