Note 1: These combinations are possible only if a file contains a prefix
with a string that indicates a different code set than actually exists.
For EBCDIC data with ASCII newlines, use X'0320202020200A'.
For ASCII data with EBCDIC newlines, use X'03404040404025'.
Fixed-length files
Fixed-length files contain records that are all the same length. No other
separators or prefixes or self-identifying information exists that indicates the
record length. You must know the record length and use the
FILEFORMAT=RECORD,
nnn
control statement, where
nnn
represents the
length of each record.
For variable- and fixed-length files using length prefixes, MO:DCA structured fields
are treated as a special case. All such structured fields are self-identifying and
contain their own length. They need not contain a length prefix to be correctly
interpreted, but will be processed correctly if there is a length prefix.
Understanding how ANSI and machine carriage controls are used
In many environments (including IBM mainframes and most minicomputers),
printable data normally contains a carriage control character. The carriage control
character acts as a vertical tab command to position the paper at the start of a new
page, at a specified line on the page, or to control skipping to the next line. The
characters can be one of two types: ANSI carriage control or machine carriage
control.
ANSI carriage control characters
The most universal carriage control is ANSI, which consists of a single
character that is a prefix for the print line. The standard ANSI characters
are:
Note that all ANSI control characters perform the required spacing before
the line is printed. ANSI controls may be encoded in EBCDIC
( CCTYPE=A ) or in ASCII ( CCTYPE=Z ).
Machine carriage control characters
Machine carriage controls were originally the actual hardware control
commands for IBM printers, and are often used on non-IBM systems.
Machine controls are literal values, not symbols. They are not represented
as characters in any encoding and, therefore, machine controls cannot be
translated. Typical machine controls are:
ANSI Command
space Single space the line and print
0 Double space the line and print
- Triple space the line and print
+ Don't space the line and print
1 Skip to channel 1 (the top of the form, by convention)
2-9 Skip to hardware-defined position on the page
A,B,C Defined by a vertical tab record or FCB
Appendix A. Helpful Hints 181