>_Host_> Under OS/390 and VM, if the file contains blocked logical records that are to be processed in a buffer, and any of the records contain binary entries for which the SYNCHRONIZED clause is specified, you can improve performance by adding any needed slack bytes between records for proper alignment. <_Host_<
The lengths of all the elementary data items in the record, including all slack bytes, are added. (For variable-length records under OS/390 and VM, it is necessary to add an additional 4 bytes for the count field.) The total is then divided by the highest value of m for any one of the elementary items in the record.
If r (the remainder) is equal to zero, no slack bytes are required. If r is not equal to zero, m - r slack bytes are required. These slack bytes can be specified by writing a level-02 FILLER at the end of the record.
To show the method of calculating slack bytes both within and between records, consider the following record description:
01 COMP-RECORD. 05 A-1 PICTURE X(5). 05 A-2 PICTURE X(3). 05 A-3 PICTURE X(3). 05 B-1 PICTURE S9999 USAGE COMP SYNCHRONIZED. 05 B-2 PICTURE S99999 USAGE COMP SYNCHRONIZED. 05 B-3 PICTURE S9999 USAGE COMP SYNCHRONIZED.The number of bytes in A-1, A-2, and A-3 totals 11. B-1 is a 4-digit COMPUTATIONAL item and 1 slack byte must therefore be added before B-1. With this byte added, the number of bytes preceding B-2 totals 14. Because B-2 is a COMPUTATIONAL item of 5 digits in length, two slack bytes must be added before it. No slack bytes are needed before B-3.
The revised record description entry now appears as:
01 COMP-RECORD. 05 A-1 PICTURE X(5). 05 A-2 PICTURE X(3). 05 A-3 PICTURE X(3). [05 SLACK-BYTE-1 PICTURE X. INSERTED BY COMPILER] 05 B-1 PICTURE S9999 USAGE COMP SYNCHRONIZED. [05 SLACK-BYTE-2 PICTURE XX. INSERTED BY COMPILER] 05 B-2 PICTURE S99999 USAGE COMP SYNCHRONIZED. 05 B-3 PICTURE S9999 USAGE COMP SYNCHRONIZED.There is a total of 22 bytes in COMP-RECORD, but, from the rules given in the preceding discussion, it appears that m = 4 and r = 2. Therefore, to attain proper alignment for blocked records, you must add 2 slack bytes at the end of the record.
The final record description entry appears as:
01 COMP-RECORD. 05 A-1 PICTURE X(5). 05 A-2 PICTURE X(3). 05 A-3 PICTURE X(3). [05 SLACK-BYTE-1 PICTURE X. INSERTED BY COMPILER] 05 B-1 PICTURE S9999 USAGE COMP SYNCHRONIZED. [05 SLACK-BYTE-2 PICTURE XX. INSERTED BY COMPILER] 05 B-2 PICTURE S99999 USAGE COMP SYNCHRONIZED. 05 B-3 PICTURE S9999 USAGE COMP SYNCHRONIZED. 05 FILLER PICTURE XX. [SLACK BYTES YOU ADD]
Adobe, the Adobe logo, Acrobat, the Acrobat logo, and Acrobat Reader are registered trademarks of Adobe Systems incorporated.