000010* C:\Tutorials\TstSQL\cbl\PAYSRT.CBL 000020 IDENTIFICATION DIVISION. PAYSRT 000030 PROGRAM-ID. PAYSRT. PAYSRT 000040 AUTHOR. Jazzusr (Using Jazz from Visual Studio) PAYSRT 000050 DATE-WRITTEN. 4/02/2022 1:07:23 pm PAYSRT 000060 ENVIRONMENT DIVISION. PAYSRT 000070*# Last Updated by Jazzusr at 4/02/2022 1:07:23 pm PAYSRT 000080*PROGRAM PAYSRT BATCH EZT; PAYSRT 000090*COPY PERSNL; PAYSRT 000100*COPY JZSMth; PAYSRT 000110*PROCESS PERSNL WHERE(PERSNL.GROSS >= 500) ORDER(PERSNL.DEPT, PAYSRT 000120* PERSNL.GROSS DESC); PAYSRT 000130* PRINT (PERSNL.EMPNAME,PERSNL.DEPT,PERSNL.GROSS) ; PAYSRT 000140*END PROCESS PERSNL; PAYSRT 000150******************************************************************PAYSRT 000160** **PAYSRT 000170** INPUT-OUTPUT Section/File-Control **PAYSRT 000180** **PAYSRT 000190******************************************************************PAYSRT 000200 INPUT-OUTPUT Section. PAYSRT 000210 FILE-CONTROL. PAYSRT 000220 SELECT PERSNL ASSIGN TO PERSNL PAYSRT 000230 FILE STATUS IS PERSNL-STATUS. PAYSRT 000240 SELECT SORTWORK ASSIGN TO SORTWK01. PAYSRT 000250 SELECT RepNbr1 ASSIGN TO RepNbr1 PAYSRT 000260 FILE STATUS IS RepNbr1-STATUS. PAYSRT 000270******************************************************************PAYSRT 000280** **PAYSRT 000290** Data Division **PAYSRT 000300** **PAYSRT 000310******************************************************************PAYSRT 000320 DATA DIVISION. PAYSRT 000330******************************************************************PAYSRT 000340** **PAYSRT 000350** File Section. **PAYSRT 000360** **PAYSRT 000370******************************************************************PAYSRT 000380 File SECTION. PAYSRT 000390******************************************************************PAYSRT 000400** **PAYSRT 000410** PERSNL **PAYSRT 000420** **PAYSRT 000430******************************************************************PAYSRT 000440 FD PERSNL PAYSRT 000450 RECORDING MODE F. PAYSRT 000460* PAYSRT 000470 01 JZ-PERSNL. PAYSRT 000480 03 GROUP1. PAYSRT 000490 05 FILLER PIC X(16). PAYSRT 000500 05 EMPNAME PIC X(16). PAYSRT 000510 05 FILLER PIC X(61). PAYSRT 000520 05 GROSS PIC S9(5)V9(2) COMP-3. PAYSRT 000530 05 DEPT PIC 999. PAYSRT 000540 05 FILLER PIC X(50). PAYSRT 000550******************************************************************PAYSRT 000560** **PAYSRT 000570** SORTWORK **PAYSRT 000580** **PAYSRT 000590******************************************************************PAYSRT 000600* PAYSRT 000610 SD SORTWORK. PAYSRT 000620* PAYSRT 000630 01 JZ-SORTWORK. PAYSRT 000640 03 GROUP1. PAYSRT 000650 05 EMPNAME PIC X(16). PAYSRT 000660 05 GROSS PIC S9(5)V9(2) COMP-3. PAYSRT 000670 05 DEPT PIC 999. PAYSRT 000680******************************************************************PAYSRT 000690** **PAYSRT 000700** RepNbr1 **PAYSRT 000710** **PAYSRT 000720******************************************************************PAYSRT 000730 FD RepNbr1 PAYSRT 000740 RECORDING MODE F. PAYSRT 000750* PAYSRT 000760 01 JZ-RepNbr1 PIC X(132). PAYSRT 000770******************************************************************PAYSRT 000780** **PAYSRT 000790** Working Storage Section: General Program Data **PAYSRT 000800** **PAYSRT 000810******************************************************************PAYSRT 000820* PAYSRT 000830 WORKING-STORAGE SECTION. PAYSRT 000840******************************************************************PAYSRT 000850** **PAYSRT 000860** General Program Information **PAYSRT 000870** **PAYSRT 000880******************************************************************PAYSRT 000890* PAYSRT 000900* Status Flags and control data PAYSRT 000910 01 JZ-FileControl. PAYSRT 000920 03 SORTWORK-ENDFILE PIC X VALUE 'N'. PAYSRT 000930 03 PERSNL-ENDFILE PIC X VALUE 'N'. PAYSRT 000940 03 PERSNL-STATUS PIC XX VALUE '00'. PAYSRT 000950 03 RepNbr1-STATUS PIC XX VALUE '00'. PAYSRT 000960 03 RepNbr1-PageNbr PIC 99999 COMP-3 VALUE 0. PAYSRT 000970 03 RepNbr1-LineCount PIC 9999 COMP VALUE 1000. PAYSRT 000980 03 RepNbr1-Space PIC 9999 COMP VALUE 1. PAYSRT 000990* PAYSRT 001000 01 JZ-TODAY. PAYSRT 001010 05 JZ-DATETIMEGMT. PAYSRT 001020 10 JZ-DATETIME PIC 9(16). PAYSRT 001030 10 JZ-GMTDIFF PIC S9(4). PAYSRT 001040 05 JZ-DATETIME-1 REDEFINES JZ-DATETIMEGMT. PAYSRT 001050 10 JZ-DATE PIC 9(8). PAYSRT 001060 10 JZ-TIME PIC 9(8). PAYSRT 001070 10 FILLER PIC S9(4). PAYSRT 001080 05 JZ-DATETIME-2 REDEFINES JZ-DATETIMEGMT. PAYSRT 001090 10 JZ-YEAR PIC 9(4). PAYSRT 001100 10 JZ-MONTH PIC 9(2). PAYSRT 001110 10 JZ-DAY PIC 9(2). PAYSRT 001120 10 JZ-HOUR PIC 9(2). PAYSRT 001130 10 JZ-MINUTE PIC 9(2). PAYSRT 001140 10 JZ-SECOND PIC 9(2). PAYSRT 001150 10 JZ-MS PIC 9(2). PAYSRT 001160 10 FILLER PIC S9(4). PAYSRT 001170 05 JZ-DATETIME-3 REDEFINES JZ-DATETIMEGMT. PAYSRT 001180 10 FILLER PIC 9(12). PAYSRT 001190 10 JZ-SECONDS PIC 99V99. PAYSRT 001200 10 FILLER PIC S9(4). PAYSRT 001210* Report Time Stamp PAYSRT 001220* PAYSRT 001230 01 JZ-ReportTS. PAYSRT 001240 10 JZ-DAY PIC 9(2). PAYSRT 001250 10 FILLER PIC X VALUE SPACE. PAYSRT 001260 10 JZ-MONTH-NAME PIC X(3). PAYSRT 001270 10 FILLER PIC X VALUE SPACE. PAYSRT 001280 10 JZ-YEAR PIC 9(4). PAYSRT 001290 10 JZ-COMMA PIC XX VALUE ', '. PAYSRT 001300 10 JZ-HOUR PIC 9(2). PAYSRT 001310 10 JZ-SEPCHAR1 PIC X VALUE ':'. PAYSRT 001320 10 JZ-MINUTE PIC 9(2). PAYSRT 001330 10 JZ-SEPCHAR2 PIC X VALUE ':'. PAYSRT 001340 10 JZ-SECOND PIC 9(2). PAYSRT 001350* PAYSRT 001360 01 JZ-ReportTimeStamp REDEFINES JZ-ReportTS PIC X(21). PAYSRT 001370* PAYSRT 001380 LOCAL-STORAGE SECTION. PAYSRT 001390******************************************************************PAYSRT 001400** **PAYSRT 001410** RepNbr1 Print Lines **PAYSRT 001420** **PAYSRT 001430******************************************************************PAYSRT 001440* PAYSRT 001450* Save line while headings are printed PAYSRT 001460 01 JZ-RepNbr1-Save PIC X(132). PAYSRT 001470* PAYSRT 001480* Page Header and footer PAYSRT 001490 01 JZ-RepNbr1-Heading. PAYSRT 001500 03 Filler PIC X(11) Value 'Printed at '. PAYSRT 001510 03 DateTime PIC X(21). PAYSRT 001520 03 Filler PIC X(1) VALUE SPACES. PAYSRT 001530 03 Filler PIC X(7) VALUE 'RepNbr1'. PAYSRT 001540 03 Filler PIC X(1) VALUE SPACES. PAYSRT 001550 03 Filler PIC XXXX VALUE 'Page'. PAYSRT 001560 03 PageNbr PIC ZZZ9. PAYSRT 001570* PAYSRT 001580* Column Headings PAYSRT 001590 01 RepNbr1-L1-H. PAYSRT 001600 03 FILLER PIC X(132) VALUE '*----EMPNAME---* DEPT *--GROSS--PAYSRT 001610- '-* PAYSRT 001620- ' '. PAYSRT 001630* PAYSRT 001640* Data line PAYSRT 001650 01 RepNbr1-L1-D. PAYSRT 001660 03 EMPNAME PIC X(16). PAYSRT 001670 03 FILLER PIC X(1) VALUE SPACES. PAYSRT 001680 03 FILLER PIC X(1) VALUE SPACE. PAYSRT 001690 03 DEPT PIC 999. PAYSRT 001700 03 FILLER PIC X(1) VALUE SPACES. PAYSRT 001710 03 GROSS PIC $$$,$$9.99CR. PAYSRT 001720 03 FILLER PIC X(97) VALUE SPACES. PAYSRT 001730******************************************************************PAYSRT 001740** **PAYSRT 001750** JZ - Jazz Sundry fields **PAYSRT 001760** **PAYSRT 001770******************************************************************PAYSRT 001780* PAYSRT 001790 01 JZ. PAYSRT 001800 03 JZ-AL PIC S9(4) COMP VALUE ZERO. PAYSRT 001810 03 JZ-ALIM PIC S9(4) COMP VALUE ZERO. PAYSRT 001820 03 JZ-NOFML PIC S9(4) COMP VALUE ZERO. PAYSRT 001830 03 JZ-INDEX PIC S9(4) COMP VALUE ZERO. PAYSRT 001840 03 JZ-INDEX2 PIC S9(4) COMP VALUE ZERO. PAYSRT 001850 03 JZ-IXMth PIC S9(4) COMP VALUE ZERO. PAYSRT 001860 03 IX1 PIC S9(4) COMP VALUE ZERO. PAYSRT 001870 03 IX2 PIC S9(4) COMP VALUE ZERO. PAYSRT 001880 03 IX3 PIC S9(4) COMP VALUE ZERO. PAYSRT 001890 03 IX4 PIC S9(4) COMP VALUE ZERO. PAYSRT 001900 03 IX5 PIC S9(4) COMP VALUE ZERO. PAYSRT 001910 03 IX6 PIC S9(4) COMP VALUE ZERO. PAYSRT 001920 03 IX7 PIC S9(4) COMP VALUE ZERO. PAYSRT 001930 03 JZ-ST PIC S9(4) COMP VALUE ZERO. PAYSRT 001940 03 JZ-SL PIC S9(4) COMP VALUE ZERO. PAYSRT 001950 03 JZ-BLANK PIC XXXX VALUE SPACES. PAYSRT 001960 03 JZ-CHAR80 PIC X(80) VALUE SPACES. PAYSRT 001970 03 JZ-FNAME PIC X(30) VALUE SPACES. PAYSRT 001980 03 JZ-KL PIC S9(4) COMP VALUE ZERO. PAYSRT 001990 03 JZ-MLTH PIC S9(4) COMP VALUE ZERO. PAYSRT 002000 03 JZ-INT PIC S9(9) COMP VALUE ZERO. PAYSRT 002010 03 JZ-TRUEFALSE PIC XXXXX VALUE SPACES. PAYSRT 002020 03 JZ-TinyNbr PIC S9(9) COMP VALUE ZERO. PAYSRT 002030 03 JZ-TinyGr REDEFINES JZ-TinyNbr. PAYSRT 002040 05 FILLER PIC XXX. PAYSRT 002050 05 JZ-Tiny PIC X. PAYSRT 002060 03 JZ-Error PIC X VALUE 'N'. PAYSRT 002070 03 JZ-NBR1 PIC 9999 VALUE ZERO. PAYSRT 002080 03 JZ-NBR1X REDEFINES JZ-NBR1 PIC XXXX. PAYSRT 002090 03 JZ-NBR2 PIC 9999 VALUE ZERO. PAYSRT 002100 03 JZ-NBR2X REDEFINES JZ-NBR2 PIC XXXX. PAYSRT 002110 03 JZ-SUBVAL PIC ZZZZZ9 VALUE ZERO. PAYSRT 002120 03 JZ-SUBVALR REDEFINES JZ-SUBVAL PIC X(6). PAYSRT 002130 03 JZ-SUBDIGIT PIC S9(4) COMP VALUE ZERO. PAYSRT 002140 03 JZ-INDEXES OCCURS 7 INDEXED BY JZIX1 PIC X(6) VALUE PAYSRT 002150 SPACES. PAYSRT 002160 03 JZ-INDEXPR PIC X(6) VALUE SPACES. PAYSRT 002170******************************************************************PAYSRT 002180** **PAYSRT 002190** JZSMth **PAYSRT 002200** **PAYSRT 002210******************************************************************PAYSRT 002220* PAYSRT 002230 01 JZSMth. PAYSRT 002240 03 SMth PIC S9(4) COMP VALUE ZERO. PAYSRT 002250******************************************************************PAYSRT 002260** **PAYSRT 002270** Break **PAYSRT 002280** **PAYSRT 002290******************************************************************PAYSRT 002300* PAYSRT 002310 01 Break. PAYSRT 002320 03 Level PIC S9(4) COMP VALUE ZERO. PAYSRT 002330 03 Sub PIC S9(4) COMP VALUE ZERO. PAYSRT 002340 03 Rec-Count PIC S9(4) COMP VALUE ZERO. PAYSRT 002350******************************************************************PAYSRT 002360** **PAYSRT 002370** RepNbr1-CBD **PAYSRT 002380** **PAYSRT 002390******************************************************************PAYSRT 002400* PAYSRT 002410 01 RepNbr1-CBD. PAYSRT 002420 03 Description1. PAYSRT 002430 05 JZGrandTotal PIC X(12) VALUE ' Grand Total'. PAYSRT 002440 03 Description2 REDEFINES Description1 OCCURS 1 INDEXED BY PAYSRT 002450 JZIX2. PAYSRT 002460 05 Descriptions PIC X(12). PAYSRT 002470******************************************************************PAYSRT 002480** **PAYSRT 002490** Code Tables **PAYSRT 002500** **PAYSRT 002510******************************************************************PAYSRT 002520* PAYSRT 002530* JZSMth.SMth PAYSRT 002540 01 JZCodes-JZSMth-SMth. PAYSRT 002550 03 JZValues. PAYSRT 002560 05 FILLER PIC X(3) VALUE 'Jan'. PAYSRT 002570 05 FILLER PIC X(3) VALUE 'Feb'. PAYSRT 002580 05 FILLER PIC X(3) VALUE 'Mar'. PAYSRT 002590 05 FILLER PIC X(3) VALUE 'Apr'. PAYSRT 002600 05 FILLER PIC X(3) VALUE 'May'. PAYSRT 002610 05 FILLER PIC X(3) VALUE 'Jun'. PAYSRT 002620 05 FILLER PIC X(3) VALUE 'Jul'. PAYSRT 002630 05 FILLER PIC X(3) VALUE 'Aug'. PAYSRT 002640 05 FILLER PIC X(3) VALUE 'Sep'. PAYSRT 002650 05 FILLER PIC X(3) VALUE 'Oct'. PAYSRT 002660 05 FILLER PIC X(3) VALUE 'Nov'. PAYSRT 002670 05 FILLER PIC X(3) VALUE 'Dec'. PAYSRT 002680 03 JZTABLE REDEFINES JZValues. PAYSRT 002690 05 ITEM-VALUES OCCURS 12 INDEXED BY JZIX-JZSMth-SMth. PAYSRT 002700 07 CODE-VALUE PIC X(3). PAYSRT 002710 03 FILLER. PAYSRT 002720 05 SEARCH-FOR PIC S9(4) COMP. PAYSRT 002730 05 FOUND-VALUE PIC X(3) VALUE '***'. PAYSRT 002740******************************************************************PAYSRT 002750** **PAYSRT 002760** Procedure Division. **PAYSRT 002770** **PAYSRT 002780******************************************************************PAYSRT 002790* PAYSRT 002800 PROCEDURE DIVISION. PAYSRT 002810 MOVE FUNCTION CURRENT-DATE TO JZ-DATETIMEGMT OF JZ-TODAY. PAYSRT 002820 PERFORM JZDT01. PAYSRT 002830 OPEN INPUT PERSNL. PAYSRT 002840 IF PERSNL-Status IS NOT = '00' AND PERSNL-Status IS NOT = '41PAYSRT 002850- '' AND PERSNL-Status IS NOT = '97' PAYSRT 002860 DISPLAY 'PROGRAM TERMINATED. Invalid Status Code on OPEN PAYSRT 002870- 'PERSNL. CODE=' PERSNL-Status PAYSRT 002880 GOBACK PAYSRT 002890 END-IF . PAYSRT 002900 Move SPACES TO EMPNAME OF JZ-PERSNL. PAYSRT 002910 Move ZERO TO GROSS OF JZ-PERSNL. PAYSRT 002920 Move ZERO TO DEPT OF JZ-PERSNL. PAYSRT 002930 MOVE JZ-ReportTimeStamp TO DateTime OF JZ-RepNbr1-Heading. PAYSRT 002940 OPEN OUTPUT RepNbr1. PAYSRT 002950 IF RepNbr1-Status IS NOT = '00' AND RepNbr1-Status IS NOT = 'PAYSRT 002960- '41' AND RepNbr1-Status IS NOT = '97' PAYSRT 002970 DISPLAY 'PROGRAM TERMINATED. Invalid Status Code on OPEN PAYSRT 002980- 'RepNbr1. CODE=' RepNbr1-Status PAYSRT 002990 GOBACK PAYSRT 003000 END-IF . PAYSRT 003010* Main Program Logic PAYSRT 003020 PERFORM JZ-Main-Program-Logic. PAYSRT 003030* PAYSRT 003040 JZ-Normal-Exit. PAYSRT 003050 Move '* * * END OF RepNbr1 * * *' TO JZ-RepNbr1. PAYSRT 003060 WRITE JZ-RepNbr1. PAYSRT 003070* Logical end-of-program PAYSRT 003080 GOBACK. PAYSRT 003090******************************************************************PAYSRT 003100** **PAYSRT 003110** Main Program Logic **PAYSRT 003120** **PAYSRT 003130******************************************************************PAYSRT 003140* PAYSRT 003150 JZ-Main-Program-Logic. PAYSRT 003160* PROCESS PERSNL WHERE(PERSNL.GROSS >= 500) PAYSRT 003170* ORDER(PERSNL.DEPT,PERSNL.GROSS DESC);PAYSRT 003180 SORT SORTWORK PAYSRT 003190 ON ASCENDING KEY DEPT OF JZ-SORTWORK PAYSRT 003200 ON DESCENDING KEY GROSS OF JZ-SORTWORK PAYSRT 003210 INPUT PROCEDURE IS JZ-13-PROCESSGroup-INPUT PAYSRT 003220 OUTPUT PROCEDURE IS JZ-13-PROCESSGroup-OUTPUT. PAYSRT 003230* PAYSRT 003240 JZ-13-PROCESSGroup-INPUT. PAYSRT 003250 PERFORM JZ-13-PROCESSGroup-INPUT1 UNTIL PERSNL-ENDFILE = 'Y'.PAYSRT 003260* PAYSRT 003270 JZ-13-PROCESSGroup-INPUT1. PAYSRT 003280 READ PERSNL NEXT RECORD AT END MOVE 'Y' TO PERSNL-ENDFILE. PAYSRT 003290 IF PERSNL-STATUS IS NOT = '00' AND PERSNL-STATUS IS NOT = '10PAYSRT 003300- '' PAYSRT 003310 DISPLAY 'PROGRAM TERMINATED. STATUS CODE NOT 00 FOR READ PAYSRT 003320- 'PERSNL. Code=' PERSNL-STATUS PAYSRT 003330 MOVE 'Y' TO PERSNL-ENDFILE PAYSRT 003340 END-IF. PAYSRT 003350 IF PERSNL-ENDFILE = 'N' AND (GROSS OF JZ-PERSNL >= 500 ) PAYSRT 003360* Move referenced fields to Sortwork PAYSRT 003370 Move EMPNAME OF JZ-PERSNL TO EMPNAME OF JZ-SORTWORK PAYSRT 003380 Move GROSS OF JZ-PERSNL TO GROSS OF JZ-SORTWORK PAYSRT 003390 Move DEPT OF JZ-PERSNL TO DEPT OF JZ-SORTWORK PAYSRT 003400 RELEASE JZ-SORTWORK PAYSRT 003410 END-IF. PAYSRT 003420* PAYSRT 003430 JZ-13-PROCESSGroup-OUTPUT. PAYSRT 003440 PERFORM JZ-13-PROCESSGroup-OUTPUT1 UNTIL SORTWORK-ENDFILE = 'PAYSRT 003450- 'Y'. PAYSRT 003460* PAYSRT 003470 JZ-13-PROCESSGroup-OUTPUT1. PAYSRT 003480 RETURN SORTWORK AT END MOVE 'Y' TO SORTWORK-ENDFILE PAYSRT 003490 END-RETURN. PAYSRT 003500 IF SORTWORK-ENDFILE = 'N' PAYSRT 003510* Move referenced fields back from Sortwork PAYSRT 003520 Move EMPNAME OF JZ-SORTWORK TO EMPNAME OF JZ-PERSNL PAYSRT 003530 Move GROSS OF JZ-SORTWORK TO GROSS OF JZ-PERSNL PAYSRT 003540 Move DEPT OF JZ-SORTWORK TO DEPT OF JZ-PERSNL PAYSRT 003550* PRINT (PERSNL.EMPNAME,PERSNL.DEPT,PERSNL.GROSS) ; PAYSRT 003560 PERFORM JZ-14-Print PAYSRT 003570* END PROCESS PERSNL; PAYSRT 003580 CONTINUE PAYSRT 003590 END-IF. PAYSRT 003600* PAYSRT 003610 JZ-14-Print. PAYSRT 003620* PRINT (PERSNL.EMPNAME,PERSNL.DEPT,PERSNL.GROSS) ; PAYSRT 003630 MOVE EMPNAME OF JZ-PERSNL TO EMPNAME OF RepNbr1-L1-D. PAYSRT 003640 MOVE DEPT OF JZ-PERSNL TO DEPT OF RepNbr1-L1-D. PAYSRT 003650 MOVE GROSS OF JZ-PERSNL TO GROSS OF RepNbr1-L1-D. PAYSRT 003660 MOVE RepNbr1-L1-D TO JZ-RepNbr1. PAYSRT 003670 PERFORM RepNbr1-Print. PAYSRT 003680******************************************************************PAYSRT 003690** **PAYSRT 003700** Code Conversion Routines **PAYSRT 003710** **PAYSRT 003720******************************************************************PAYSRT 003730* PAYSRT 003740* Convert JZSMth-SMth code to value PAYSRT 003750 JZCvt-JZSMth-SMth. PAYSRT 003760* Input: SEARCH-FOR OF JZCodes-JZSMth-SMth PAYSRT 003770* Output: FOUND-VALUE OF JZCodes-JZSMth-SMth PAYSRT 003780* If Invalid, FOUND-VALUE will be set to '****', PAYSRT 003790* field JZ-CHAR80 will contain an error message PAYSRT 003800 SET JZIX-JZSMth-SMth TO SEARCH-FOR OF JZCodes-JZSMth-SMth. PAYSRT 003810 IF JZIX-JZSMth-SMth < 1 OR JZIX-JZSMth-SMth > 12 PAYSRT 003820 MOVE 'Outside Code Range' TO JZ-CHAR80 PAYSRT 003830 MOVE '***' TO FOUND-VALUE OF JZCodes-JZSMth-SMth PAYSRT 003840 ELSE PAYSRT 003850 MOVE CODE-Value OF JZCodes-JZSMth-SMth(JZIX-JZSMth-SMth) PAYSRT 003860 TO FOUND-VALUE OF JZCodes-JZSMth-SMth PAYSRT 003870 END-IF. PAYSRT 003880******************************************************************PAYSRT 003890** **PAYSRT 003900** Print Routine **PAYSRT 003910** **PAYSRT 003920******************************************************************PAYSRT 003930* PAYSRT 003940 RepNbr1-PRINT. PAYSRT 003950 IF RepNbr1-LineCount >= 54 PAYSRT 003960 MOVE JZ-RepNbr1 TO JZ-RepNbr1-Save PAYSRT 003970 IF RepNbr1-PageNbr > ZERO PAYSRT 003980 Write JZ-RepNbr1 FROM JZ-RepNbr1-HEADING AFTER PAYSRT 003990 ADVANCING 2 LINES PAYSRT 004000 END-IF PAYSRT 004010 Move 0 TO RepNbr1-LineCount PAYSRT 004020 Add 1 TO RepNbr1-PageNbr PAYSRT 004030 MOVE RepNbr1-PageNbr TO PageNbr OF JZ-RepNbr1-HEADING PAYSRT 004040 Write JZ-RepNbr1 FROM JZ-RepNbr1-HEADING AFTER ADVANCING PAYSRT 004050 PAGE PAYSRT 004060 WRITE JZ-RepNbr1 FROM RepNbr1-L1-H AFTER ADVANCING 2 LINESPAYSRT 004070 WRITE JZ-RepNbr1 FROM JZ-RepNbr1-SAVE AFTER ADVANCING 2 PAYSRT 004080 LINES PAYSRT 004090 ELSE PAYSRT 004100 WRITE JZ-RepNbr1 AFTER ADVANCING RepNbr1-SPACE LINES PAYSRT 004110 END-IF. PAYSRT 004120 ADD RepNbr1-SPACE TO RepNbr1-LineCount. PAYSRT 004130 MOVE 1 TO RepNbr1-SPACE. PAYSRT 004140******************************************************************PAYSRT 004150** **PAYSRT 004160** Sundry Routines **PAYSRT 004170** **PAYSRT 004180******************************************************************PAYSRT 004190* PAYSRT 004200* Format Date for reports PAYSRT 004210 JZDT01. PAYSRT 004220* Move Corresponding JZ-DATETIME-2 TO JZ-ReportTS PAYSRT 004230 MOVE JZ-DAY OF JZ-DateTIME-2 TO JZ-DAY OF JZ-ReportTS. PAYSRT 004240 MOVE JZ-YEAR OF JZ-DateTIME-2 TO JZ-YEAR OF JZ-ReportTS. PAYSRT 004250 MOVE JZ-HOUR OF JZ-DateTIME-2 TO JZ-HOUR OF JZ-ReportTS. PAYSRT 004260 MOVE JZ-MINUTE OF JZ-DateTIME-2 TO JZ-MINUTE OF JZ-ReportTS. PAYSRT 004270 MOVE JZ-SECOND OF JZ-DateTIME-2 TO JZ-SECOND OF JZ-ReportTS. PAYSRT 004280* Format Month PAYSRT 004290 MOVE JZ-MONTH TO SMth OF JZSMth. PAYSRT 004300 MOVE SMth OF JZSMth TO SEARCH-FOR OF JZCodes-JZSMth-SMth. PAYSRT 004310 PERFORM JZCvt-JZSMth-SMth. PAYSRT 004320 MOVE FOUND-VALUE OF JZCodes-JZSMth-SMth TO JZ-MONTH-NAME. PAYSRT