naraku9333

Untitled

Nov 19th, 2014
385
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
COBOL 22.58 KB | None | 0 0
  1. //KC03Q18X JOB ,'SEAN VOGEL',MSGCLASS=H
  2. //*
  3. //JSTEP01  EXEC PGM=SORT,PARM='CMP=CLC'
  4. //***************************************************************
  5. //*                                                             *
  6. //*  JSTEP01 CALL SORT UTILITY                                  *
  7. //*          TO SORT INPUT FILE DATA5A                          *
  8. //*                                                             *
  9. //*  DDNAME              FILE DESCRIPTION                       *
  10. //*                                                             *
  11. //*  SYSIN    INPUT:   INSTREAM COBOL PROGRAM                   *
  12. //*  SORTIN   INPUT:   PDS POPULATED WITH UNSORTED DATA         *
  13. //*  SORTOUT  OUTPUT:  SORTED DATA IN TEMP DATA SET             *
  14. //*                                                             *
  15. //***************************************************************
  16. //SORTIN   DD DSN=KC02322.CSCI465.DATAFA14(DATA5A),DISP=SHR
  17. //SORTOUT  DD DSN=&&SORTED,SPACE=(TRK,(1,5)),DISP=(NEW,PASS)
  18. //SYSOUT   DD SYSOUT=*
  19. //SYSIN    DD *
  20.   SORT FIELDS=(1,2,ZD,A)
  21. /*
  22. //*
  23. //***************************************************************
  24. //*
  25. //JSTEP02  EXEC PGM=IGYCRCTL,PARM='FLAG(I,I),APOST,LIB'
  26. //***************************************************************
  27. //*                                                             *
  28. //*  JSTEP02 CALL COBOL COMPILER IGYCRCTL                       *
  29. //*          TO COMPILE AN INSTREAM COBOL PROGRAM               *
  30. //*                                                             *
  31. //*  DDNAME              FILE DESCRIPTION                       *
  32. //*                                                             *
  33. //*  SYSIN    INPUT:   INSTREAM COBOL PROGRAM                   *
  34. //*  SYSLIN   OUTPUT:  TEMP STORAGE FOR OBJECT MODULE           *
  35. //*  SYSPRINT OUTPUT:  COMPILER OUTPUT                          *
  36. //*  SYSUTn   OUTPUT:  SEVEN TEMP SCRATCH PADS                  *
  37. //*                                                             *
  38. //***************************************************************
  39. //*
  40. //SYSIN    DD   *
  41.       ****************************************************************
  42.       * PROGRAM NAME:  ASSIGN5                                       *
  43.       *                                                             *
  44.       * FUNCTION:  THIS PROGRAM READS INFORMATION FROM 3 INPUT FILES *
  45.       *           AND BUILDS A 2 DIMENSIONAL TABLE TO HOLD          *
  46.       *           MUTUAL FUND DATA.                                 *
  47.       *                                                             *
  48.       *           THEN BUILD A SALES REPORT BASED ON TABULATED DATA *
  49.       *                                                             *
  50.       * INPUT:     DATA5A - THE MUTUAL FUND FILE                     *
  51.       * INPUT:     DATA5B - THE CLOSING PRICE FILE                   *
  52.       * INPUT:     DATA5C - THE BROKER SALES FILE                    *
  53.       *                                                             *
  54.       * OUTPUT:    THE 132 BYTE LINES OF THE OUPUT RECORD            *
  55.       *                                                             *
  56.       ****************************************************************
  57.  
  58.        IDENTIFICATION DIVISION.
  59.  
  60.        PROGRAM-ID.    ASSIGN5
  61.        AUTHOR.        SEAN VOGEL.
  62.        DATE-WRITTEN.  11/04/2014.
  63.        DATE-COMPILED.
  64.        EJECT
  65.  
  66.        ENVIRONMENT DIVISION.
  67.  
  68.        INPUT-OUTPUT SECTION.
  69.  
  70.        FILE-CONTROL.
  71.  
  72.            SELECT IN-FUND-FILE ASSIGN TO INFILE5A.
  73.            SELECT IN-DLY-FUND-PRICE-FILE ASSIGN TO INFILE5B.
  74.            SELECT IN-SALES-FILE ASSIGN TO INFILE5C.
  75.            SELECT PRINT-FILE ASSIGN TO PRINTER.
  76.  
  77.        DATA DIVISION.
  78.  
  79.        FILE SECTION.
  80.  
  81.       *INPUT FILE OF FUND NAMES AND NUMBERS
  82.        FD  IN-FUND-FILE
  83.            RECORDING MODE IS F.
  84.  
  85.        01  IN-FUND-RECORD.
  86.        COPY  FUNDREC.
  87.            05  FILLER                     PIC X(53).
  88.  
  89.  
  90.       *INPUT FILE OF DAILY SHARE PRICES
  91.        FD  IN-DLY-FUND-PRICE-FILE
  92.            RECORDING MODE IS F.
  93.  
  94.        COPY PRICEREC.
  95.  
  96.       *INPUT FILE OF BROKER SALES RECORDS
  97.        FD  IN-SALES-FILE
  98.            RECORDING MODE IS F.
  99.  
  100.        COPY SALESREC.
  101.  
  102.       *OUTPUT FILE
  103.        FD  PRINT-FILE
  104.            RECORDING MODE IS F.
  105.  
  106.        01  PRINT-RECORD                   PIC X(132).
  107.  
  108.        WORKING-STORAGE SECTION.
  109.  
  110.       *TWO DIMENSIONAL TABLE TO HOLD FUND DATA
  111.       *EACH FUND ENTRY HAS 5 SHARE PRICES
  112.        01  FUND-TBL.
  113.            05  FUND-COUNT                 PIC S9(3) COMP SYNC VALUE 0.
  114.            05  FUND-ENTRY                 OCCURS 1 TO 100
  115.                                           DEPENDING ON FUND-COUNT
  116.                                           ASCENDING KEY TBL-FUND-NBR
  117.                                           INDEXED BY TBL-FUND-NDX.
  118.                10  TBL-FUND-DEPS-TOT      PIC 9(9)V99 COMP-3 VALUE 0.
  119.                10  TBL-FUND-SHRS-TOT      PIC 9(9)V99 COMP-3 VALUE 0.
  120.  
  121.        COPY FUNDTBL.
  122.  
  123.       *EOF FLAGS FOR INPUT FILES
  124.        01  EOF-FLAG-1                     PIC X VALUE 'N'.
  125.        01  EOF-FLAG-2                     PIC X VALUE 'N'.
  126.        01  EOF-FLAG-3                     PIC X VALUE 'N'.
  127.  
  128.       *DATE TIME STORAGE
  129.        01  CURRENT-DATE-FIELDS.
  130.            05  CURRENT-DATE.
  131.                10  CURRENT-YEAR           PIC 9(4).
  132.                10  CURRENT-MONTH          PIC 9(2).
  133.             10  CURRENT-DAY               PIC 9(2).
  134.         05  CURRENT-TIME.
  135.             10  CURRENT-HOUR              PIC 9(2).
  136.             10  CURRENT-MINUTE            PIC 9(2).
  137.             10  CURRENT-SECOND            PIC 9(2).
  138.             10  CURRENT-MS                PIC 9(2).
  139.         05  DIFF-FROM-GMT                 PIC S9(4).
  140.  
  141.       *SUBSCRIPTS
  142.        01  TSUB                           PIC S9(5) COMP SYNC VALUE 0.
  143.        01  SALES-SUB                      PIC S9(5) COMP SYNC VALUE 0.
  144.  
  145.       *TOTALS
  146.        01  TOTAL-DEPOSITS                 PIC 9(9)V99 COMP-3 VALUE 0.
  147.        01  TOTAL-SHARES                   PIC 9(9)V99 COMP-3 VALUE 0.
  148.  
  149.       *TEMPORARIES
  150.        01  TEMP-SHARES                    PIC 9(5)V999 COMP VALUE 0.
  151.  
  152.  
  153.       *COUNTERS
  154.        01  LINE-COUNT                     PIC 99 COMP VALUE 99.
  155.        01  PAGE-NUM                       PIC 999 COMP VALUE 0.
  156.        01  BROKER-COUNT                   PIC 999 COMP VALUE 0.
  157.  
  158.       *SALES OUTPUT RECORD
  159.        01  OUT-SALES-RECORD.
  160.            05 OUT-CITY                    PIC X(20).
  161.            05 FILLER                      PIC X(2) VALUE SPACES.
  162.            05 OUT-NAME                    PIC X(20).
  163.            05 FILLER                      PIC X(2) VALUE SPACES.
  164.            05 OUT-FUND                    PIC X(25).
  165.            05 FILLER                      PIC X(8) VALUE SPACES.
  166.            05 OUT-FUND-NBR                PIC 99.
  167.            05 FILLER                      PIC X(7) VALUE SPACES.
  168.            05 OUT-DEPOSIT                 PIC $$$,$$9.99.
  169.            05 OUT-DEPOSIT-X               REDEFINES OUT-DEPOSIT
  170.                                           PIC X(10).
  171.            05 FILLER                      PIC X(15) VALUE SPACES.
  172.            05 OUT-PRICE-FLAG              PIC 9.
  173.            05 OUT-PRICE-FLAG-X            REDEFINES OUT-PRICE-FLAG
  174.                                           PIC X.
  175.            05 FILLER                      PIC X(4) VALUE SPACES.
  176.            05 OUT-SHARES                  PIC ZZZ,ZZZ,ZZ9.9999.
  177.            05 OUT-SHARES-X                REDEFINES OUT-SHARES
  178.                                           PIC X(16).
  179.  
  180.       *SUMMARY OUTPUT RECORD
  181.        01  OUT-SUMMARY.
  182.            05  FILLER                     PIC X(47) VALUE SPACES.
  183.            05  OUT-BROKER-NUM             PIC ZZZ9.
  184.            05  FILLER                     PIC X(11) VALUE SPACES.
  185.            05  OUT-DEPOSIT-TOT            PIC $$$$,$$$,$$9.99.
  186.            05  FILLER                     PIC X(3) VALUE SPACES.
  187.            05  OUT-SHARES-TOT             PIC ZZ,ZZZ,ZZZ,ZZ9.9999.
  188.            05  FILLER                     PIC X(33) VALUE SPACES.
  189.  
  190.       *PAGE HEADERS
  191.        01  PAGE-HEADER-1.
  192.            05  OUT-MONTH                  PIC 9(2).
  193.            05  FILLER                     PIC X     VALUE '/'.
  194.            05  OUT-DAY                    PIC 9(2).
  195.            05  FILLER                     PIC X     VALUE '/'.
  196.            05  OUT-YEAR                   PIC 9(4).
  197.            05  FILLER                     PIC X(38) VALUE SPACES.
  198.            05  OUT-FIRM                   PIC X(36) VALUE
  199.                'DEWEY, CHEATHAM AND HOWE MUTUAL FUND'.
  200.            05  FILLER                     PIC X(39) VALUE SPACES.
  201.            05  OUT-PAGE                   PIC X(6)  VALUE 'PAGE: '.
  202.            05  OUT-PAGE-NUM               PIC ZZ9.
  203.  
  204.        01  PAGE-HEADER-2.
  205.            05  OUT-TIME                   PIC 99B99B99.
  206.            05  FILLER                     PIC X(40) VALUE SPACES.
  207.            05  OUT-TITLE                  PIC X(36) VALUE
  208.                'MUTUAL FUND DEPOSIT AND SALES REPORT'.
  209.            05  FILLER                     PIC X(48) VALUE SPACES.
  210.  
  211.       *COLUMN HEADERS
  212.        01  COLUMN-HEADER-1.
  213.            05  CITY-LBL                   PIC X(4) VALUE 'CITY'.
  214.            05  FILLER                     PIC X(18) VALUE SPACES.
  215.            05  BROKER-LBL                 PIC X(11) VALUE
  216.                                                  'BROKER NAME'.
  217.            05  FILLER                     PIC X(11) VALUE SPACES.
  218.            05  FUND-LBL                   PIC X(9) VALUE 'FUND NAME'.
  219.            05  FILLER                     PIC X(18) VALUE SPACES.
  220.            05  NBR-LBL                    PIC X(8) VALUE
  221.                                                   'FUND NBR'.
  222.            05  FILLER                     PIC X(3) VALUE SPACES.
  223.            05  DEPOST-LBL                 PIC X(14) VALUE
  224.                                                   'DEPOSIT AMOUNT'.
  225.            05  FILLER                     PIC X(6) VALUE SPACES.
  226.            05  PRICE-LBL                  PIC X(10) VALUE 'PRICE FLAG'.
  227.            05  FILLER                     PIC X(9) VALUE SPACES.
  228.            05  SHARES-LBL                 PIC X(11) VALUE
  229.                                                       'SHARES SOLD'.
  230.  
  231.        01  COLUMN-HEADER-2.
  232.            05  FILLER                     PIC X(34) VALUE SPACES.
  233.            05  BROKER-CNT-LBL             PIC X(17) VALUE
  234.                                                  'NUMBER OF BROKERS'.
  235.            05  FILLER                     PIC X(5) VALUE SPACES.
  236.            05  DEPOST-TOT-LBL             PIC X(21) VALUE
  237.                                                'TOTAL OF ALL DEPOSITS'.
  238.            05  FILLER                     PIC X(5) VALUE SPACES.
  239.            05  SHARES-TOT-LBL             PIC X(17) VALUE
  240.                                                  'TOTAL SHARES SOLD'.
  241.            05  FILLER                     PIC X(33) VALUE SPACES.
  242.  
  243.       *HYPHEN LINES
  244.        01  HYPHENS-1.
  245.            05  CITY-HYPH                  PIC X(20) VALUE ALL '-'.
  246.            05  FILLER                     PIC X(2) VALUE SPACES.
  247.            05  BROKER-HYPH                PIC X(20) VALUE ALL '-'.
  248.            05  FILLER                     PIC X(2) VALUE SPACES.
  249.            05  FUND-HYPH                  PIC X(25) VALUE ALL '-'.
  250.            05  FILLER                     PIC X(8) VALUE SPACES.
  251.            05  NBR-HYPH                   PIC XX VALUE ALL '-'.
  252.            05  FILLER                     PIC X(6) VALUE SPACES.
  253.            05  DEPOSIT-HYPH               PIC X(11) VALUE ALL '-'.
  254.            05  FILLER                     PIC X(15) VALUE SPACES.
  255.            05  PRICE-HYPH                 PIC X VALUE '-'.
  256.            05  FILLER                     PIC X(9) VALUE SPACES.
  257.            05  SHARES-HYPH                PIC X(12) VALUE ALL '-'.
  258.  
  259.        01  HYPHENS-2.
  260.            05  FILLER                     PIC X(47) VALUE SPACES.
  261.            05  BROKER-NUM-HYPH            PIC X(4) VALUE ALL '-'.
  262.            05  FILLER                     PIC X(11) VALUE SPACES.
  263.            05  DEPOSIT-TOT-HYPH           PIC X(15) VALUE ALL '-'.
  264.            05  FILLER                     PIC X(3) VALUE SPACES.
  265.            05  SHARES-HYPH                PIC X(19) VALUE ALL '-'.
  266.  
  267.        EJECT
  268.  
  269.        PROCEDURE DIVISION.
  270.        0000-MAIN.
  271.  
  272.            PERFORM 0600-GET-DATE-TIME.
  273.  
  274.            OPEN INPUT  IN-FUND-FILE
  275.                 INPUT  IN-DLY-FUND-PRICE-FILE.
  276.  
  277.  
  278.            READ IN-FUND-FILE
  279.              AT END MOVE 'Y' TO EOF-FLAG-1
  280.            END-READ.
  281.  
  282.            PERFORM 0100-BUILD-TABLE
  283.              VARYING TBL-FUND-NDX FROM 1 BY 1
  284.                UNTIL TBL-FUND-NDX > 100 OR EOF-FLAG-1 = 'Y'
  285.  
  286.            CLOSE IN-FUND-FILE
  287.                  IN-DLY-FUND-PRICE-FILE.
  288.  
  289.  
  290.            OPEN INPUT  IN-SALES-FILE
  291.                 OUTPUT PRINT-FILE.
  292.  
  293.  
  294.            READ IN-SALES-FILE
  295.              AT END MOVE 'Y' TO EOF-FLAG-3
  296.            END-READ.
  297.  
  298.            PERFORM 0200-PROCESS-SALES-FILE
  299.              UNTIL EOF-FLAG-3 = 'Y'
  300.  
  301.            PERFORM 0800-PRINT-SUMMARY.
  302.  
  303.            CLOSE IN-SALES-FILE
  304.                  PRINT-FILE.
  305.  
  306.            STOP RUN.
  307.  
  308.        0000-EXIT. EXIT.
  309.        EJECT
  310.  
  311.       *******************************************
  312.       *                                        *
  313.       *           BUILD THE TABLE              *
  314.       *                                        *
  315.       * STORE FUND NAME AND NUMBER             *
  316.       * READ DAILY SHARE PRICES                *
  317.       * STORE SHARE PRICES FOR FUND            *
  318.       * READ NEXT RECORD                       *
  319.       *                                        *
  320.       *******************************************
  321.        0100-BUILD-TABLE.
  322.  
  323.            ADD 1 TO FUND-COUNT.
  324.  
  325.            MOVE IN-FUND-NBR OF IN-FUND-RECORD
  326.              TO TBL-FUND-NBR(TBL-FUND-NDX)
  327.  
  328.            MOVE IN-FUND-NAME TO TBL-FUND-NAME(TBL-FUND-NDX).
  329.  
  330.       *READ IN DAILY SHARE PRICES
  331.            READ IN-DLY-FUND-PRICE-FILE
  332.              AT END MOVE 'Y' TO EOF-FLAG-2
  333.            END-READ.
  334.  
  335.            PERFORM VARYING IN-DLY-FUND-PRICE-NDX FROM 1 BY 1
  336.              UNTIL IN-DLY-FUND-PRICE-NDX > 5 OR EOF-FLAG-2 = 'Y'
  337.  
  338.                  MOVE IN-DLY-FUND-PRICE(IN-DLY-FUND-PRICE-NDX)
  339.                    TO TBL-DLY-FUND-PRICE(TBL-FUND-NDX
  340.                                       IN-DLY-FUND-PRICE-NDX)
  341.            END-PERFORM.
  342.  
  343.            READ IN-FUND-FILE
  344.              AT END MOVE 'Y' TO EOF-FLAG-1
  345.            END-READ.
  346.  
  347.        0100-EXIT. EXIT.
  348.        EJECT
  349.  
  350.  
  351.       *******************************************
  352.       *                                        *
  353.       *         PROCESS SALES FILE             *
  354.       *                                        *
  355.       * READ A SALES RECORD AND START BUILDING *
  356.       * OUTPUT RECORD                          *
  357.       *                                        *
  358.       *******************************************
  359.        0200-PROCESS-SALES-FILE.
  360.  
  361.            MOVE IN-CITY-NAME TO OUT-CITY.
  362.            MOVE IN-BROKER-NAME TO OUT-NAME.
  363.  
  364.            ADD 1 TO BROKER-COUNT.
  365.  
  366.            PERFORM 0300-PROCESS-SALE
  367.              VARYING SALES-SUB FROM 1 BY 1
  368.                UNTIL SALES-SUB > 4
  369.                OR IN-FUND-NBR OF SALES-RECORD(SALES-SUB) = 0
  370.  
  371.            READ IN-SALES-FILE
  372.              AT END MOVE 'Y' TO EOF-FLAG-3
  373.            END-READ.
  374.  
  375.        0200-EXIT. EXIT.
  376.        EJECT
  377.  
  378.       *******************************************
  379.       *                                        *
  380.       *         PROCESS SALE                   *
  381.       *                                        *
  382.       * SEARCH FOR MUTUAL FUND IN FUND-TBL      *
  383.       * PRINT OUTPUT RECORD                     *
  384.       *                                        *
  385.       *******************************************
  386.        0300-PROCESS-SALE.
  387.  
  388.            PERFORM 0700-PRINT-HEADERS
  389.  
  390.  
  391.            MOVE IN-FUND-NBR OF SALES-RECORD(SALES-SUB) TO OUT-FUND-NBR.
  392.            MOVE IN-DEPOSIT-AMT(SALES-SUB) TO OUT-DEPOSIT.
  393.  
  394.       *ACCUMULATE DEPOSIT TOTALS
  395.            ADD  IN-DEPOSIT-AMT(SALES-SUB)
  396.              TO TBL-FUND-DEPS-TOT(TBL-FUND-NDX).
  397.            ADD  IN-DEPOSIT-AMT(SALES-SUB) TO TOTAL-DEPOSITS.
  398.  
  399.            SEARCH ALL FUND-ENTRY
  400.              AT END
  401.                PERFORM 0400-FUND-NOT-FOUND
  402.              WHEN TBL-FUND-NBR(TBL-FUND-NDX)
  403.                   = IN-FUND-NBR OF SALES-RECORD(SALES-SUB)
  404.                PERFORM 0500-FUND-FOUND
  405.            END-SEARCH.
  406.  
  407.            WRITE PRINT-RECORD FROM OUT-SALES-RECORD AFTER 2.
  408.  
  409.            MOVE SPACES TO OUT-CITY
  410.                           OUT-NAME.
  411.  
  412.            ADD 1 TO LINE-COUNT.
  413.  
  414.        0300-EXIT. EXIT.
  415.        EJECT
  416.  
  417.       *******************************************
  418.       *                                        *
  419.       *         FOUND-NOT-FOUND                *
  420.       *                                        *
  421.       * MUTUAL FUND NOT FOUND IN TABLE         *
  422.       * TAKE APPROPRIATE ACTION.               *
  423.       *                                        *
  424.       *******************************************
  425.        0400-FUND-NOT-FOUND.
  426.  
  427.            MOVE 'MUTUAL FUND NOT FOUND' TO OUT-FUND.
  428.            MOVE SPACES TO OUT-DEPOSIT-X
  429.                           OUT-PRICE-FLAG-X
  430.                           OUT-SHARES-X.
  431.  
  432.        0400-EXIT. EXIT.
  433.        EJECT
  434.  
  435.       *******************************************
  436.       *                                        *
  437.       *         FUND-FOUND                     *
  438.       *                                        *
  439.       * MOVE DATA TO OUTPUT RECORD             *
  440.       * IF MUTUAL FUND FOUND                   *
  441.       *                                        *
  442.       *******************************************
  443.        0500-FUND-FOUND.
  444.  
  445.            MOVE TBL-FUND-NAME(TBL-FUND-NDX) TO OUT-FUND.
  446.            MOVE IN-PRICE-FLAG(SALES-SUB) TO OUT-PRICE-FLAG.
  447.  
  448.            MOVE IN-PRICE-FLAG(SALES-SUB) TO TSUB.
  449.            COMPUTE TEMP-SHARES ROUNDED = IN-DEPOSIT-AMT(SALES-SUB)
  450.                           / TBL-DLY-FUND-PRICE(TBL-FUND-NDX TSUB).
  451.  
  452.  
  453.            MOVE TEMP-SHARES TO OUT-SHARES.
  454.  
  455.            ADD TEMP-SHARES TO TBL-FUND-SHRS-TOT(TBL-FUND-NDX).
  456.            ADD TEMP-SHARES TO TOTAL-SHARES.
  457.  
  458.        0500-EXIT. EXIT.
  459.        EJECT
  460.  
  461.       *******************************************
  462.       *                                        *
  463.       *        GET-DATE-TIME                   *
  464.       *                                        *
  465.       * GET THE DATE AND TIME FOR              *
  466.       * FOR OUTPUT HEADER                      *
  467.       *                                        *
  468.       *******************************************
  469.        0600-GET-DATE-TIME.
  470.  
  471.            MOVE FUNCTION CURRENT-DATE TO CURRENT-DATE-FIELDS.
  472.            MOVE CURRENT-MONTH TO OUT-MONTH.
  473.            MOVE CURRENT-DAY   TO OUT-DAY.
  474.            MOVE CURRENT-YEAR  TO OUT-YEAR.
  475.  
  476.            MOVE CURRENT-TIME(1:6) TO OUT-TIME.
  477.            INSPECT OUT-TIME REPLACING ALL ' ' BY ':'.
  478.  
  479.        0600-EXIT. EXIT.
  480.        EJECT
  481.  
  482.       ******************************************
  483.       *                                       *
  484.       *        PRINT-HEADERS                  *
  485.       *                                       *
  486.       * PRINT PAGE AND COLUMN HEADERS         *
  487.       *                                       *
  488.       ******************************************
  489.        0700-PRINT-HEADERS.
  490.  
  491.            IF LINE-COUNT >= 16
  492.                ADD 1 TO PAGE-NUM
  493.                MOVE PAGE-NUM TO OUT-PAGE-NUM
  494.  
  495.                WRITE PRINT-RECORD FROM PAGE-HEADER-1 AFTER PAGE
  496.                WRITE PRINT-RECORD FROM PAGE-HEADER-2 AFTER 1
  497.                WRITE PRINT-RECORD FROM COLUMN-HEADER-1 AFTER 2
  498.                WRITE PRINT-RECORD FROM HYPHENS-1 AFTER 1
  499.  
  500.                MOVE 0 TO LINE-COUNT
  501.                MOVE IN-CITY-NAME TO OUT-CITY
  502.                MOVE IN-BROKER-NAME TO OUT-NAME
  503.  
  504.            END-IF.
  505.  
  506.        0700-EXIT. EXIT.
  507.        EJECT
  508.  
  509.  
  510.       ******************************************
  511.       *                                       *
  512.       *        PRINT-SUMMARY                  *
  513.       *                                       *
  514.       * PRINT PAGE AND COLUMN HEADERS         *
  515.       * AND SUMMARY LINE                      *
  516.       *                                       *
  517.       ******************************************
  518.        0800-PRINT-SUMMARY.
  519.  
  520.                ADD 1 TO PAGE-NUM.
  521.                MOVE PAGE-NUM TO OUT-PAGE-NUM.
  522.                MOVE '      MUTUAL FUND SALES TOTALS' TO OUT-TITLE.
  523.  
  524.                WRITE PRINT-RECORD FROM PAGE-HEADER-1 AFTER PAGE.
  525.                WRITE PRINT-RECORD FROM PAGE-HEADER-2 AFTER 1.
  526.                WRITE PRINT-RECORD FROM COLUMN-HEADER-2 AFTER 2.
  527.                WRITE PRINT-RECORD FROM HYPHENS-2 AFTER 1.
  528.  
  529.                MOVE TOTAL-DEPOSITS TO OUT-DEPOSIT-TOT.
  530.                MOVE TOTAL-SHARES TO OUT-SHARES-TOT.
  531.                MOVE BROKER-COUNT TO OUT-BROKER-NUM.
  532.  
  533.                WRITE PRINT-RECORD FROM OUT-SUMMARY.
  534.  
  535.        0800-EXIT. EXIT.
  536.        EJECT
  537.  
  538. //SYSLIB   DD  DSN=KC02322.CSCI465.COPYLIB,DISP=SHR
  539. //*
  540. //SYSLIN   DD  DSN=&&OBJMOD,SPACE=(TRK,(3,3)),
  541. //             DISP=(MOD,PASS,DELETE)
  542. //*
  543. //SYSPRINT DD  SYSOUT=*
  544. //*
  545. //SYSUT1   DD  SPACE=(CYL,(1,1))
  546. //SYSUT2   DD  SPACE=(CYL,(1,1))
  547. //SYSUT3   DD  SPACE=(CYL,(1,1))
  548. //SYSUT4   DD  SPACE=(CYL,(1,1))
  549. //SYSUT5   DD  SPACE=(CYL,(1,1))
  550. //SYSUT6   DD  SPACE=(CYL,(1,1))
  551. //SYSUT7   DD  SPACE=(CYL,(1,1))
  552. //*
  553. //*
  554. //JSTEP03  EXEC PGM=LOADER,PARM='MAP,LET',COND=(0,LT)
  555. //***************************************************************
  556. //*                                                             *
  557. //*  JSTEP03 EXECUTE LOADER IF COMPILATION                      *
  558. //*          WAS SUCCESSFUL                                     *
  559. //*                                                             *
  560. //*  DDNAME              FILE DESCRIPTION                       *
  561. //*                                                             *
  562. //*  SYSLIB   INPUT:   LIBRARY MODULE LIBRARY                   *
  563. //*  SYSLIN   INPUT:   INPUT OBJECT MODULE                      *
  564. //*  INFILE5A INPUT:   INPUT OBJECT MODULE                      *
  565. //*  INFILE5B INPUT:   INPUT DATA FILE                          *
  566. //*  INFILE5C INPUT:   INPUT DATA FILE                          *
  567. //*  PRINTER  OUTPUT:  WHERE TO DISPLAY OUTPUT                  *
  568. //*                                                             *
  569. //***************************************************************
  570. //*
  571. //SYSLIB   DD  DSN=CEE.SCEELKED,DISP=SHR
  572. //*
  573. //SYSLIN   DD  DSN=&&OBJMOD,DISP=(OLD,DELETE)
  574. //*
  575. //INFILE5A DD  DSN=&&SORTED,DISP=(OLD,DELETE)
  576. //*
  577. //INFILE5B DD  DSN=KC02322.CSCI465.DATAFA14(DATA5B),DISP=SHR
  578. //*
  579. //INFILE5C DD  DSN=KC02322.CSCI465.DATAFA14(DATA5C),DISP=SHR
  580. //*
  581. //PRINTER  DD  SYSOUT=*
  582. //*
  583. //*
Advertisement
Add Comment
Please, Sign In to add comment