PCFL Entries

PCFL identifies a definition for a field. Enter a PCFL entry in the file-description file for each field in the data file. The PCFL records must be in the same order as the fields they define in the data file.

Define as many as 256 PCFL records in the file-description file and start PCFL records in column 1. If you enter more than 256 PCFL records, you receive an error message. You cannot continue a record on one line, and only the first 80 characters of a record are used.

Following is an example of a PCFL entry:
PCFL CUSTNAME 1 20  CUSTOMER NAME
Each PCFL entry contains the following things:
  • The keyword, PCFL, starting in column 1 and followed by a space. This identifies the record as a field description.
  • The field name, followed by a space. This must match the name that exists in the field definitions on the iSeries, eServer™ i5, or System i5® and can be from 1 to 10 characters.
  • The indicator for the data type. Table 1 shows the indicators that represent the data type of the data in the field. Follow the specified indicator with a space.
  • The size of the field (in bytes) as it is stored in the workstation file. The length specification can be from 1 to 4 characters.
Table 1. Data Type Indicators
Indicator Data Type
1 ASCII1
2 ASCII numeric
3 Hexadecimal
4 Binary
5 Zoned
6 Packed
7 BASIC integer
8 BASIC single-precision floating point
9 BASIC double-precision floating point
10 EBCDIC
11 EBCDIC zoned
12 EBCDIC packed
1
Includes date, time, and time stamp except for files that are not converted.

The data type indicator you enter must be valid for the file type entered earlier. Any other data types are not valid and are diagnosed as errors during a data transfer to the iSeries, eServer i5, or System i5.

Table 2 shows the valid single-byte character set (SBCS) data types for each file.

Table 2. Valid SBCS Data Types for File Types
File Type Valid Data Type
ASCII text

ASCII
ASCII
numeric

DOS random

ASCII
Binary
Hexadecimal

ASCII Packed Zoned
BASIC sequential ASCII ASCII numeric
BASIC random ASCII BASIC double-precision floating point BASIC integer BASIC single-precision floating point Hexadecimal
DIF ASCII ASCII numeric
No-conversion Binary EBCDIC EBCDIC packed EBCDIC zoned Hexadecimal
DOS random type 2 ASCII Binary Hexadecimal Packed Zoned
BIFF format ASCII ASCII numeric
Note: ASCII (SBCS) includes date, time, and time stamp types if converted. EBCDIC includes date, time, and time stamp if not converted.

For numeric fields in BASIC sequential and DIF files, a size specification must be present. However, because the data in these fields is of variable length, the data transfer function assumes a maximum length of 65 characters. This length more than covers the largest possible exponential ASCII numeric value. The size specifications for character fields must be the maximum size of any data item in that field.

Table 3 shows the allowed data length limits for each workstation data type. These are the maximum lengths you can specify for size in the PCFL entry.

Table 3. Allowable Data Length Limits for Personal Computer SBCS Data Types
Personal Computer Data Type Data Length Limit (in Bytes)
ASCII 4093
ASCII numeric 33 (65 for DIF and BASIC sequential)
BASIC double-precision 8 (only allowed length)
BASIC integer 2 (only allowed length)
BASIC single-precision 4 (only allowed length)
Binary 4
EBCDIC 4093
Hexadecimal 2048
Packed decimal (ASCII and EBCDIC) 16
Zoned decimal (ASCII and EBCDIC) 31
Time
  • HMS 1
  • USA
  • ISO, EUR, and JIS 1
  • DDS, DFT
  • 8
  • 8
  • 8
  • 8 or 10 2
Date
  • MDY, DMY, YMD
  • Julian
  • ISO, EUR, JIS, USA (see note 1)
  • DDS, DFT
  • 8
  • 6 (only allowed length)
  • 10
  • 6, 8, or 10 2
Time stamp
  • 26
Notes:
1
These abbreviations appear in the time and date parameter sections.
HMS
Hours Minutes Seconds
EUR
IBM® European Standard
JIS
Japanese Industrial Standard Christian Era
ISO
International Standards Organization
2
The length is determined by the format defined in the host file for DDS, or from the iSeries, eServer i5, or System i5 job default (DFT keyword).

Table 4 shows the allowed data length limits for each iSeries, eServer i5, or System i5 data type.

Table 4. Allowable Data Length Limits for iSeries, eServer i5, or System i5 Data Types
iSeries, eServer i5, or System i5 Data Type Data Length Limit in Bytes 1
Binary 2 or 4 (only allowed lengths)
EBCDIC 4096
Hexadecimal 2048
Packed decimal (EBCDIC) 16
Zoned decimal (EBCDIC) 31
Time  
   HMS 8
   USA 8
   ISO, EUR, and JIS 8
   DDS, DFT 8 or 10 2
Date  
   MDY, DMY, YMD 8
   Julian 6 (only allowed length)
   ISO, EUR, JIS, USA 10
   DDS, DFT 6, 8, or 10 2
Time stamp 26
Notes:
1
The data length limits for the workstation and the system data fields are different in some cases. For these cases, the transfer function attempts to fit the workstation data into the system field. If the data does not fit into the field, a message is displayed. Refer to Data Conversions for more details.
2
The length is determined by the format defined in the host file for DDS, or from the iSeries, eServer i5, or System i5 job default (DFT keyword).

If there is a decimal position associated with the data in that field, place a forward slash (/) and then the number of decimal positions after the length specification. There are no spaces between the length, slash, and decimal position specifications.

The decimal position specification refers to the number of positions from the right-hand byte of the resulting decimal number. Do not specify a decimal position for floating-point numbers unless the data type is one of the following types:
  • ASCII numeric
  • Binary
  • Packed
  • Zoned
Note: The number of decimal positions in a field ranges from 0 to 9 or the maximum number of decimal digits in this number, whichever is smaller. The data transfer function might round the number to fit it into the field. Refer to Data Conversions for more details.