All files and their associated fields (including any Working Storage items) used in your EZT+ program MUST be described in the library section BEFORE they are used in your program.
The FILE STATEMENT is used to define the beginning of your FILE (or FILES) and the field names you are going to be processing.
The FILE STATEMENT initiates your EZT+ logic and follows the / / SYSIN JCL statement.
The syntax for the FILE STATEMENT is . . . . . . .
/ / SYSIN DD *
FILE file-name VS UPDATE
FILE: This is a reserved keyword that marks the beginning of your
file-name: This is a 1 – 8 character name describing the file that you wish to define.
The file-name used MUST be unique in your program.
The file-name MUST also correspond to the file as it is defined in the execution JCL.
VS: indicates that this is a VSAM file
UPDATE: indicates that the designated VSAM file can be updated.
NOTE: There are additional parameters available with the FILE STATEMENT, they will be discussed when they are applicable.
NOTE: See additional FILE definition requirements in the sections on SUMMARY FILES and the SORT ACTIVITY.
An EZT+ field definition statement has four basic parts. Each part is separated by at least one space. If more than one definition is on a line, they must be separated by a period and a space. Those basic parts are the FIELD NAME, the STARTING LOCATION, the FIELD LENGTH and the DATA FORMAT
* A field name which is 1 – to – 40 characters long and unique in a particular file
* The beginning location of the field relative to the first position of the record (for working storage, a W or S is placed in this position)
* Start-location can be explicitly defined relative to position one in the record:
NAME 1 17 (NAME begins in position 1)
ADDRESS 18 37 (ADDRESS begins in pos 18)
PAY-NET 55 10 (PAY-NET begins in pos 55)
- The start-location can be relatively defined as immediately following the end of the previously defined field:
FILLER1 * 5
NAME * 20 | All field-names MUST
FILLER2 * 5 | be defined when file
ADDRESS * 20 | is defined in this
FILLER3 * 5 | manner. This would include
PAY-NET * 20 FILLER also.
* The length of the field in bytes
* The length of the field has been added to our example below.
* EZT+ permits the programmer to define a segment of a data item if they so desire, for instance; if they only wished to process fifteen (15) bytes of the NAME field they could define the length as 15, rather than 33 bytes.
NAME 17 15
ADDRESS 37 33
PAY-NET 90 4
* The type of data (A, N, P, U, or B)
* A – Alphabetic or alphanumeric
* N – Zoned decimal
* P – Packed decimal
* U – Unsigned packed decimal
* B – Binary
- The EZT+ programmer defines the DATA Format of the data item they are defining by adding the appropriate character AFTER the record length parameter.
NAME 17 33 A
ADDRESS 37 33 A
PAY-NET 90 4 P
The maximum size that is permitted for each DATA FORMAT is shown below . . . . .
Data Format Maximum Length Number of Decimal
Code (bytes) Positions
A 32,767 not valid
N 18 0 – 18
P 10 0 – 18
B 4 0 – 10
U 9 0 – 18