Understanding error return code 310
When you are running ACIF on AIX® or Windows, the most common I/O errors occur in
the input file and produce error messages APK411S and APK413S with return code 310. This return
code typically indicates one of these:
- The value that you specified for the FILEFORMAT parameter
does not match the actual format of the data file. Check that NEWLINE and its encoding values are correct if you
specified FILEFORMAT=STREAM, or that the record
length is correct for FILEFORMAT=RECORD,n.
- ACIF read an input line (record) larger than 32 KB. In this case,
the default FILEFORMAT=STREAM was specified,
but no record separator was found within the first 32 KB of the current
input line. This situation is typically because the value of the NEWLINE characters does not match the record separator
(line endings) used in the input file. ACIF uses a default value of X'0A' for NEWLINE, which is the UNIX newline
character. Although files from PC workstations typically use carriage
returns or line feeds (X'0D0A') as delimiters, stream files
from z/OS® systems can use EBCDIC
newline characters (X'15') or EBCDIC line-feed characters
(X'25'). ACIF cannot always reliably detect the record separator;
therefore, you must ensure that the value specified for NEWLINE is
correct for the input file ACIF is processing.
- ACIF has not read enough bytes at the end of file. Some input
files contain no record separator characters. These files must be
processed as FILEFORMAT=RECORD,n,
where n is the length of each record,
or as FILEFORMAT=RECORD, where each input record
must be preceded by its 2-byte length. If FILEFORMAT=RECORD,n is specified and the number of bytes in
the file is not an exact multiple of n,
ACIF returns an error code of 310 when the last byte in the file is
read.
|