You are on page 1of 4

//TSOGKUMG JOB CLASS=E, // MSGCLASS=X, // MSGLEVEL=(1,1), // NOTIFY=&SYSUID //* //CA11RMS EXEC CA11RMS,TYPRUN='F' //* //R010 EXEC PGM=EZTPA00 //*

//INPUT1 DD DSN=Q.UAT.PND567WP.R080.SORTOUT,DISP=SHR //INPUT2 DD DSN=Q.UAT.GED120.DATEEX,DISP=SHR //OUTPUT DD DSN=TSOGKUM.OJT.MARCH.OUTPUT, // DISP=(NEW,CATLG,DELETE), // DCB=(RECFM=FB,LRECL=133), // DSORG=PS, // SPACE=(TRK,(10,10)) //SYSPRINT DD SYSOUT=* //SYSIN DD * FILE INPUT1 * INPUT-FILE-REC 1 360 A ACCOUNT-NUMBER 1 9 A IBD 10 3 A OFF-ID 14 3 A TYPE 17 4 A OPEN-DATE 21 10 A RR 31 3 A REGISTRATION-ARR 35 32 A OCCURS 6 INDEX REG-INX ACTION 237 1 A * * AUDIT-TIME-STAMP 238 25 A AUDIT-YYYY AUDIT-TIME-STAMP 4 A AUDIT-FILLER1 AUDIT-TIME-STAMP +4 1 A AUDIT-MM AUDIT-TIME-STAMP +5 2 A AUDIT-FILLER2 AUDIT-TIME-STAMP +7 1 A AUDIT-DD AUDIT-TIME-STAMP +8 2 A AUDIT-FILLER3 AUDIT-TIME-STAMP +10 1 A AUDIT-HH AUDIT-TIME-STAMP +11 2 A AUDIT-FILLER4 AUDIT-TIME-STAMP +13 1 A AUDIT-MIN AUDIT-TIME-STAMP +14 2 A AUDIT-FILLER5 AUDIT-TIME-STAMP +16 1 A AUDIT-SEC AUDIT-TIME-STAMP +17 2 A * UPDT-ID 264 8 A INVEST-OBJ-VALUE 272 20 A FILLER 292 68 A * FILE INPUT2 GED-TD 1 10 A FILLER 11 190 A * FILE OUTPUT PRINTER * ************** REPORT VARIABLES ************** REPORT-VAR W 119 A WS-ACCOUNT-NUMBER REPORT-VAR 9 A HEADING('ACCOUNT #' '---------') WS-TYPE REPORT-VAR +9 4 A

+ +

HEADING('TYPE' '----') REPORT-VAR +13 10 A HEADING('OPEN-DATE ' '----------') WS-REGISTRATION-ARR REPORT-VAR +23 32 A HEADING('REGISTRATION TITLE LINES ' '--------------------------------') WS-INVEST-OBJ-VALUE REPORT-VAR +55 30 A HEADING('INVESTMENT OBJECTIVE VALUE ' '------------------------------') WS-ACTION REPORT-VAR +110 1 A HEADING('ACTION' '------') WS-UPDT-ID REPORT-VAR +111 8 A HEADING('UPDT-ID ' '--------') WS-END-OF-REPORT REPORT-VAR +56 30 A WS-OPEN-DATE * WS-AUDIT-TIME-STAMP REPORT-VAR +85 25 HEADING('AUDIT TIMESTAMP '-----------------WS-AUDIT-MM WS-AUDIT-FILLER1 WS-AUDIT-DD WS-AUDIT-FILLER2 WS-AUDIT-YYYY WS-AUDIT-FILLER3 WS-AUDIT-HH WS-AUDIT-FILLER4 WS-AUDIT-MIN WS-AUDIT-FILLER5 * FLAG1 WS-GED-TD * JOB INPUT INPUT2 MOVE GED-TD TO WS-GED-TD * JOB INPUT (INPUT1 KEY(ACCOUNT-NUMBER)) * DO WHILE NOT EOF INPUT1 * MOVE MOVE MOVE MOVE MOVE MOVE * MOVE MOVE MOVE MOVE MOVE MOVE MOVE MOVE MOVE MOVE * IF NOT DUPLICATE INPUT1 REG-INX = 1 AUDIT-MM '/' AUDIT-DD '/' AUDIT-YYYY ' ' AUDIT-HH ':' AUDIT-MIN ' ' TO TO TO TO TO TO TO TO TO TO WS-AUDIT-MM WS-AUDIT-FILLER1 WS-AUDIT-DD WS-AUDIT-FILLER2 WS-AUDIT-YYYY WS-AUDIT-FILLER3 WS-AUDIT-HH WS-AUDIT-FILLER4 WS-AUDIT-MIN WS-AUDIT-FILLER5 ACCOUNT-NUMBER TO INVEST-OBJ-VALUE TO UPDT-ID TO ACTION TO TYPE TO OPEN-DATE TO WS-ACCOUNT-NUMBER WS-INVEST-OBJ-VALUE WS-UPDT-ID WS-ACTION WS-TYPE WS-OPEN-DATE W W 1 10 N A WS-AUDIT-TIME-STAMP WS-AUDIT-TIME-STAMP WS-AUDIT-TIME-STAMP WS-AUDIT-TIME-STAMP WS-AUDIT-TIME-STAMP WS-AUDIT-TIME-STAMP WS-AUDIT-TIME-STAMP WS-AUDIT-TIME-STAMP WS-AUDIT-TIME-STAMP WS-AUDIT-TIME-STAMP A ' ') +2 +3 +5 +6 +10 +11 +13 +14 +16 2 1 2 1 4 1 2 1 2 1 A A A A A A A A A A

+ + + + + + +

+ +

PERFORM PRINT-LINE MOVE 1 TO FLAG1 PERFORM PRINT-REMAINING ELSE IF FIRST-DUP INPUT1 REG-INX = 1 PERFORM PRINT-LINE GO TO JOB END-IF * MOVE SPACES TO WS-ACCOUNT-NUMBER + WS-TYPE + WS-OPEN-DATE * IF LAST-DUP INPUT1 MOVE 1 TO FLAG1 IF REG-INX < 6 PERFORM PRINT-REMAINING ELSE PERFORM PRINT-LINE END-IF ELSE-IF DUPLICATE INPUT1 REG-INX = REG-INX + 1 PERFORM PRINT-LINE END-IF END-IF GO TO JOB END-DO STOP * PRINT-LINE. PROC IF REG-INX < 6 MOVE REGISTRATION-ARR(REG-INX) TO WS-REGISTRATION-ARR ELSE MOVE SPACES TO WS-REGISTRATION-ARR END-IF PRINT REPORT1 END-PROC * * PRINT-REMAINING. PROC DO WHILE REG-INX < 6 REG-INX = REG-INX + 1 MOVE REGISTRATION-ARR(REG-INX) TO WS-REGISTRATION-ARR MOVE SPACES TO WS-ACCOUNT-NUMBER + WS-TYPE + WS-OPEN-DATE IF NOT DUPLICATE INPUT1 OR (FLAG1 EQ 0 AND LAST-DUP INPUT1) MOVE SPACES TO WS-UPDT-ID + WS-INVEST-OBJ-VALUE + WS-AUDIT-TIME-STAMP + WS-ACTION END-IF MOVE 0 TO FLAG1 PRINT REPORT1 END-DO *THE FOLLOWING STATEMENT IS TO PRINT A EMPTY SPACE BETWEEN EACH *RECORDS MOVE SPACES TO REPORT-VAR PRINT REPORT1

END-PROC * * * REPORT REPORT1 LINESIZE 132 PRINTER OUTPUT NOADJUST NODATE PAGESIZE 52 CONTROL IBD, OFF-ID, RR RENUM NOPRINT TITLE 1 COL 1 'REPORT ID: PWD567W0' + COL 46 'INVESTMENT OBJECTIVE CHANGES - WEEKLY' + COL 91 'DATE: ' COL 97 WS-GED-TD TITLE 2 COL 46 '--------------------------------------' TITLE 3 COL 1 'IBD: ' COL 6 IBD + COL 13 'OFF: ' COL 18 OFF-ID + COL 24 'RR : ' COL 29 RR LINE COL 1 WS-ACCOUNT-NUMBER + COL 11 WS-TYPE + COL 16 WS-OPEN-DATE + COL 27 WS-REGISTRATION-ARR + COL 60 WS-INVEST-OBJ-VALUE + COL 91 WS-AUDIT-TIME-STAMP + COL 113 WS-ACTION + COL 121 WS-UPDT-ID END //SYSOUT DD SYSOUT=* //

You might also like