MINKOFF9 Posted October 7, 2004 Share Posted October 7, 2004 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 More sharing options...
Question
MINKOFF9
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