Data Definition Language (DDL) Reference Manual

Definition Attributes
Data Definition Language (DDL) Reference Manual529431-004
6-28
National Data Items
National Data Items
The only symbol you can specify in a national picture string is N or n (except for the
parentheses and a number to specify the length, or number of repetitions).
The maximum length you can specify for a national data item is half of the maximum
internal field length. For definitions, the maximum internal field length is 32767 bytes.
For records, the maximum length depends on the file type:
PIC N(16383) specifies the maximum length allowed for a field definition.
Only COBOL output for a national data item appears as defined in DDL. For other
host-language output, the DDL compiler generates the equivalent number of
characters. For example, PIC N(10) in DDL translates to:
C
The DDL compiler translates alphanumeric and numeric PICTURE clauses, except
numeric clauses described with USAGE IS COMPUTATIONAL, to C char types. The
DDL compiler translates numeric PICTURE clauses with USAGE IS
COMPUTATIONAL to C short, long, double, and long long types.
If a field described with USAGE IS COMPUTATIONAL has a PICTURE declaration of
the form
PIC 9 ... [(length)] [V 9 ... [(length)]]
and the symbol 9 occurs 10 or more times, the item is declared as TYPE BINARY 64
UNSIGNED.
For more information, see Table C-1, Sample DDL/C Data Translation Table,
on
page C-1.
File Type Record’s Maximum Internal Field Length
Entry-sequenced 4072 bytes
Key-sequenced 4062 bytes*
Relative 4072 bytes
Unstructured 4096 bytes
* In H06.28/J06.17 RVUs with specific SPRs and later RVUs, the supported
maximum internal field length for a key-sequenced file is 27648 bytes.
For a list of the required H06.28/J06.17 SPRs, see SPR Requirements for
Increased Enscribe Limits for the H06.28/J06.17 Release.
Language Output
C char name [20]
FORTRAN CHARACTER*20
Pascal (on D-series systems) FSTRING (20)
TACL STRUCT name: BEGIN CHAR BYTE (0:19); END;
pTAL or TAL
STRUCT name: BEGIN STRING BYTE [1:20]; END;