Make the following adjustments to the source code to update the report. There will be comment line indicators, a through g, to help you locate where to make the updates.
IDENTIFICATION DIVISION.*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-PROGRAM-ID. Assignment8a.ENVIRONMENT DIVISION.INPUT-OUTPUT SECTION.FILE-CONTROL.SELECT INFILEASSIGN"C:CobolDataFilesInFileSales.DAT"ORGANIZATION IS SEQUENTIAL.SELECT PRINTFILEASSIGN"C:Cobol/DataFiles/OutReportSummary_Completed.txt"ORGANIZATION IS LINE SEQUENTIAL.DATA DIVISION.FILE SECTION.FD INFILE.01 INREC.03 IN-REGION PIC X.03 IN-NAME PIC X(20).03 IN-SALES PIC 9(6)V99.FD PRINTFILE.01 PRINTREC PIC X(80).WORKING-STORAGE SECTION.01 WS-EDITED-DATE PIC 9999/99/99.01 WS-EOF PIC X(3) VALUE "NO".88 END-OF-FILE VALUE "YES".01 WS-REGION-TABLE.03 PIC X(18) VALUE "EEASTERN NNORTHERN".03 PIC X(18) VALUE "SSOUTHERNWWESTERN ".01 WS-REGION-TABLE-REDEF REDEFINES WS-REGION-TABLE.03 WS-REG OCCURS 4 INDEXED BY REGION-IXASCENDING KEY WS-LETTER.05 WS-LETTER PIC X.05 WS-REGION PIC X(8).01 WS-REGN VALUE LOW-VALUES.03 WS-RG PIC X.03 PIC X(7).01 WS-DATE PIC 9(8).01 WS-LINE-CNT PIC 99 VALUE 99.01 WS-PAGE-CNT PIC 99 VALUE 0.01 WS-RECORD-CNT PIC 9(4) VALUE 0.01 WS-TOTALS COMP VALUE LOW-VALUES.03 WS-REGION-TOT PIC 9(8)V99.03 WS-GRAND-TOT PIC 9(10)V99.01 WS-HEADING-LINE.03 PIC X(20) VALUE " REPORT DATED ".03 WS-PRINT-DATE PIC 9999/99/99.03 PIC X(60) VALUE SPACES.03 WS-PRINT-PAGE-CNT PIC Z9.01 WS-REGION-START-LINE.03 PIC X(8) VALUE "REGION:".03 WS-PRINT-REGION PIC X(8).01 WS-DETAIL.* d) Add spacing on the detail line to move the name file* by 20 characters03 WS-PRINT-NAME PIC X(40).03 WS-PRINT-SALES PIC ZZZ,ZZ9.99.01 WS-SPACES PIC X(132) VALUE SPACES.01 WS-REGION-END-LINE.03 PIC X(20) VALUE SPACES.03 PIC X(27) VALUE"TOTALS FOR THIS REGION ARE ".03 WS-PRINT-REGION-TOTALPIC ZZ,ZZZ,ZZ9.99.01 WS-FINAL-LINE.03 PIC X(20) VALUE SPACES.03 PIC X(20) VALUE "GRAND TOTAL ".03 WS-PRINT-GRAND-TOTAL PIC Z,ZZZ,ZZZ,ZZ9.99.PROCEDURE DIVISION.PROG.PERFORM INIT-PARAPERFORM BOD-PARAPERFORM END-PARA.INIT-PARA.DISPLAY "PRINT PROGRAM STARTING"OPEN INPUT INFILEOUTPUT PRINTFILEACCEPT WS-DATE FROM DATE YYYYMMDDMOVE WS-DATE to WS-EDITED-DATEDISPLAY "Date is " WS-EDITED-DATE* a) Ensure the date appears on the report by moving the* accepted current date to the heading lineREAD INFILEAT END MOVE "YES" TO WS-EOFEND-READ.BOD-PARA.PERFORM PROCESS-REC UNTIL END-OF-FILE.END-PARA.IF WS-RECORD-CNT = 0DISPLAY "NO RECORDS ON INPUT FILE!"END-IFPERFORM END-OF-REGIONMOVE WS-GRAND-TOT TO WS-PRINT-GRAND-TOTALWRITE PRINTREC FROM WS-FINAL-LINE AFTER 4CLOSE INFILEPRINTFILESTOP RUN.PROCESS-REC.IF WS-LINE-CNT > 45PERFORM WRITE-HEADINGSEND-IFIF IN-REGION UNEQUAL WS-RGAND WS-REGN UNEQUAL LOW-VALUESPERFORM END-OF-REGIONEND-IFIF IN-REGION UNEQUAL WS-RGPERFORM START-OF-REGIONEND-IFADD 1 TO WS-RECORD-CNTPERFORM WRITE-DETAILREAD INFILEAT END MOVE "YES" TO WS-EOFEND-READ.WRITE-HEADINGS.WRITE PRINTREC FROM WS-SPACES AFTER PAGEADD 1 TO WS-PAGE-CNTMOVE WS-PAGE-CNT TO WS-PRINT-PAGE-CNTWRITE PRINTREC FROM WS-HEADING-LINE AFTER 2MOVE 2 TO WS-LINE-CNTIF WS-PAGE-CNT > 1PERFORM START-OF-REGIONEND-IF.END-OF-REGION.MOVE WS-REGION-TOT TO WS-PRINT-REGION-TOTALMOVE 0 TO WS-REGION-TOT* c) Adjust the number of blank lines after the region.WRITE PRINTREC FROM WS-REGION-END-LINE AFTER 1ADD 1 TO WS-LINE-CNT.START-OF-REGION.SEARCH ALL WS-REGAT END DISPLAY "UNKNOWN REGION " IN-REGIONCLOSE INFILEPRINTFILESTOP RUNWHEN IN-REGION = WS-LETTER(REGION-IX)MOVE WS-REGION(REGION-IX) TO WS-print-regionEND-SEARCHMOVE in-region to ws-regn* b) Adjust the number of blank lines before the region.WRITE PRINTREC FROM WS-REGION-START-LINE AFTER 1ADD 1 TO WS-LINE-CNT.WRITE-DETAIL.MOVE IN-NAME TO WS-PRINT-NAMEMOVE IN-SALES TO WS-PRINT-SALES* e) Add IN-Sales to the region and grand totalsWRITE PRINTREC FROM WS-DETAIL AFTER 1ADD 1 TO WS-LINE-CNT.
Already registered? Login
Not Account? Sign up
Enter your email address to reset your password
Back to Login? Click here