When a Easytrieve program was ran with the Easytrieve/Linux environment, the following error messages appeared. 1 FILE PRT161 PRINTER V(161). FILE PRT162 PRINTER V(162) 2 FILE PRT163 PRINTER V(163). FILE PRT164 PRINTER V(164) 3 FILE PRT165 PRINTER V(165) 4 * 5 FLD-01 W 5 A 6 JOB INPUT NULL 7 PRINT REPT161. PRINT REPT162. PRINT REPT163. 8 PRINT REPT164. PRINT REPT165. 9 STOP 10 REPORT REPT161 PRINTER PRT161 LINESIZE 160 EZTC0435E >>> $ LINESIZE + 1 > print record size 11 TITLE 1 'TEST PRT161'. LINE 1 FLD-01 12 * 13 REPORT REPT162 PRINTER PRT162 LINESIZE 160 EZTC0435E >>> $ LINESIZE + 1 > print record size 14 TITLE 1 'TEST PRT161'. LINE 1 FLD-01 15 * 16 REPORT REPT163 PRINTER PRT163 LINESIZE 160 EZTC0435E >>> $ LINESIZE + 1 > print record size 17 TITLE 1 'TEST PRT161'. LINE 1 FLD-01 18 * 19 REPORT REPT164 PRINTER PRT164 LINESIZE 160 EZTC0435E >>> $ LINESIZE + 1 > print record size 20 TITLE 1 'TEST PRT161'. LINE 1 FLD-01 21 * 22 REPORT REPT165 PRINTER PRT165 LINESIZE 160 23 TITLE 1 'TEST PRT161'. LINE 1 FLD-01
For the LINESIZE, the values within the range of the record-length of the printer-file was specified. Why the EZTC0435E errors appeared in the joblog?
Environment
Easytrieve Linux edition, Linux, Linux PC
Resolution
First, as the EZTC0435E message showed it, a printer record size should be greater than the LINESIZE value + 1. In a printer record, top 1 byte of a actual record data is considered to be the control byte like the ASA code. It is also based on the specifications from the Easytrieve/MF edition. And, in the Easytrieve program, top 4 bytes of a record of a variable file is considered to be RDW. It is based on the specifications from the Easytrieve/MF edition. (The specification is also applied to Easytrieve open editions.) So, in this case, if the LINESIZE value is specified as 160, the actual maximum record data length must be 165 bytes. (160 + 1 + 4 = 165) Therefore, in this case, the EZTC0435E error appeared because the record length of the variable printer file was shorter than 165.