• 0

cobol program code not compiling


Question

can anyone please look at my code and tell me why it will not compile in mirco focus.

IDENTIFICATION DIVISION.

PROGRAM-ID. ASSIGNMENT-2.

AUTHOR. STEPHEN MINKOFF.

DATE-WRITTEN. 21-SEPTEMBER-04.

ENVIRONMENT DIVISION.

INPUT-OUTPUT SECTION.

FILE-CONTROL.

SELECT IN-EMPLOYEE-FILE

ASSIGN TO "C:\2120\P2\mins0005\P2EMPL.DAT"

ORGANIZATION IS LINE SEQUENTIAL.

SELECT OUT-REPORT-FILE

ASSIGN TO "C:\2120\P2\mins0005\PAYROLL.RPT"

ORGANIZATION IS LINE SEQUENTIAL.

DATA DIVISION.

FILE SECTION.

FD IN-EMPLOYEE-FILE

RECORD CONTAINS 42 CHARACTERS.

01 IN-EMPLOYEE-RECORD.

05 DEPT-NUMBER-IN PIC 9(3).

O5 SOCIAL-SECURITY-NUMBER-IN PIC 9(4).

05 NAMES-IN PIC X(20).

05 NUMBER-OF-DEPENDENTS-IN PIC 9(1).

05 RATE-IN PIC 9(4).

05 FILLER-IN PIC X(5).

FD OUT-REPORT-FILE.

01 OUT-REPORT-REC PIC X(80).

WORKING-STORAGE SECTION.

01 ARE-THERE-MORE-RECORDS PIC XXX VALUE 'YES'.

01 WS-WORK-AREAS.

05 WS-REG-HRS-IN PIC 9(2)V9 VALUE ZERO.

05 WS-REG-PAY-IN PIC 9(4)V99 VALUE ZERO.

05 WS-OT-PAY-IN PIC 9(4)V99 VALUE ZERO.

05 WS-OT-HRS-IN PIC 9(2)V9 VALUE ZERO.

O5 WS-GROSS-PAY-IN PIC 9(4)V99 VALUE ZERO.

05 WS-NET-PAY-IN PIC 9(4)V99 VALUE ZERO.

05 WS-NFIT-IN PIC 9(4)V99 VALUE ZERO.

05 WS-TOTAL-HRS-IN PIC 9(2)V9 VALUE ZERO.

01 HL-HEADER-1.

05 PIC X(20)

VALUE 'ACME Memory Company'.

05 PIC X(3)

VALUE SPACES.

05 PIC X(15)

VALUE 'PAYROLL REPORT'.

05 PIC X(3)

VALUE SPACES.

05 PIC X(15)

VALUE 'Date of Report:'.

05 PIC X(3)

VALUE SPACES.

05 PIC 9(10)

VALUE '09/29/2004'.

01 HL-HEADER-2.

05 PIC X(4)

VALUE SPACES.

05 PIC X(13)

VALUE 'Employee Name'.

05 PIC X(6)

VALUE SPACES.

05 PIC X(4)

VALUE 'Rate'.

05 PIC X(4)

VALUE SPACES.

05 PIC X(7)

VALUE 'Reg Hrs'.

05 PIC X(3)

VALUE SPACES.

05 PIC X(6)

VALUE 'OT Hrs'.

05 PIC X(4)

VALUE SPACES.

05 PIC X(5)

VALUE 'Gross'.

05 PIC X(5)

VALUE SPACES.

05 PIC X(8)

VALUE 'NET PAY'.

01 HL-HEADER-3.

05 PIC X(20)

VALUE '--------------------'.

05 PIC X(3)

VALUE SPACES.

05 PIC X(5)

VALUE '-----'.

05 PIC X(3)

VALUE SPACES.

05 PIC X(7)

VALUE '-------'.

05 PIC X(3)

VALUE SPACES.

05 PIC X(6)

VALUE '------'.

05 PIC X(3)

VALUE SPACES.

05 PIC X(8)

VALUE '--------'.

05 PIC X(3)

VALUE SPACES.

05 PIC X(8)

VALUE '--------'.

01 DETAIL-LINE.

05 NAMES-OUT PIC X(20).

05 PIC X(3)

VALUE SPACES.

05 RATE-OUT PIC 99V99.

05 PIC X(5)

VALUE SPACES.

05 REG-HRS-OUT PIC 99V9.

05 PIC X(5)

VALUE SPACES.

05 OT-HRS-OUT PIC 99V9.

05 PIC X(4)

VALUE SPACES.

05 GROSS-OUT PIC $Z,ZZ9.99.

05 PIC X(3)

VALUE SPACES.

05 NET-PAY-OUT PIC $Z,ZZ9.99.

01 EOR-LINE-1.

05 PIC X(13)

VALUE 'END OF REPORT'.

05 PIC X(25)

VALUE SPACES.

05 PIC X(12)

VALUE 'Prepared by:'.

05 PIC X(19)

VALUE 'Stephen Minkoff'.

PROCEDURE DIVISION.

1000-MAIN-MODULE.

OPEN INPUT IN-EMPLOYEE-FILE

OUTPUT OUT-REPORT-FILE

PERFORM 2000-HEADINGS

PERFORM UNTIL ARE-THERE-MORE-RECORDS = 'NO '

READ IN-EMPLOYEE-FILE

AT END

MOVE 'NO ' TO ARE-THERE-MORE-RECORDS

NOT AT END

DISPLAY 'Please ent the hours worked for',

NAMES-IN, WITH NO ADVANCING

ACCEPT WS-TOTAL-HRS-IN

PERFORM 3000-CALCULATION-MODULE

END PERFORM

END-READ

PERFORM 4000-FOOTER-MODULE

CLOSE IN-EMPLOYEE-FILE

OUT-REPORT-FILE

STOP-RUN.

2000-HEADINGS.

WRITE OUT-REPORT-REC FROM HL-HEADER-1

AFTER ADVANCING PAGE

WRITE OUT-REPORT-REC FROM HL-HEADER-2

AFTER ADVANCING 2 LINES

WRITE OUT-REPORT-REC FROM HL-HEADER-3

AFTER ADVANCING 1 LINE.

3000-CALCULATION-MODULE.

IF WS-TOTAL-HRS-IN>80

MOVE 40 TO WS-REG-HRS-IN

THEN SUBTRACT 40 FROM WS-TOTAL-HRS-IN GIVING WS-OT-HRS-IN

ELSE

MOVE WS-TOTAL-HRS-IN TO WS-REG-HRS-IN

MOVE 0 TO TOTAL-HRS-IN

END-IF

MULTIPLY WS-REG-HRS-IN BY RATE-IN GIVING WS-REG-PAY-IN

MULTIPLY OT-HRS-IN BY '1.5' GIVING WS-OT-PAY-IN

MULTIPLY WS-OT-PAY-IN BY RATE-IN GIVING WS-OT-PAY-IN

ADD WS-OT-PAY-IN AND WS-REG-PAY-IN GIVING WS-GROSS-IN

MULTIPLY WS-GROSS-IN BY '.18' GIVING WS-NFIT-IN

SUBTRACT WS-NFIT-IN FROM WS-GROSS-IN GIVING WS-NET-PAY-IN

MOVE NAMES-IN TO NAMES-OUT

MOVE RATE-IN TO RATE-OUT

MOVE WS-REG-HRS-IN TO REG-HRS-OUT

MOVE WS-OT-HRS-IN TO OT-HRS-OUT

MOVE WS-GROSS-IN TO GROSS-OUT

MOVE WS-NET-PAY-IN TO NET-PAY-OUT

WRITE OUT-REPORT-REC FROM DETAIL-LINE

AFTER ADVANCING 2 LINE

.

4000-FOOTER-MODULE.

WRITE OUT-REPORT-REC FROM EOR-LINE-1

AFTER ADVANCING 3 LINES

.

my email address is minkoff9@aol.com

Link to comment
Share on other sites

0 answers to this question

Recommended Posts

There have been no answers to this question yet

This topic is now closed to further replies.
  • Recently Browsing   0 members

    • No registered users viewing this page.