View previous topic :: View next topic |
Author |
Message |
spiderdudeX Beginner
Joined: 24 Nov 2004 Posts: 3 Topics: 1
|
Posted: Wed Nov 24, 2004 10:37 pm Post subject: COBOL ... 4?.89 |
|
|
This is for COBOL...
I compile the program, and there are no errors. When I run the program though, the brown highlighter thingy highlights a line of code, and when I mouseover the line of code that is highlighted, this shows up...
---------------------------------------------
TAB-PROD-PRICE=4?.89
---------------------------------------------
I don't know what's goin on 0_o
Here's the code...
Code: |
01 IN-RECORD PIC x(29).
FD PRFILE.
01 PRINT-LINE PIC x(133).
WORKING-STORAGE SECTION.
01 IN-COMP.
05 IN-COMP-TERRITORY PIC x(2).
05 PIC x(1).
05 IN-COMP-PROD-NO PIC 9(2).
05 PIC x(1).
05 IN-COMP-NAME PIC x(20).
05 IN-COMP-QUANTITY PIC 9(3).
01 TERR-TABLE.
05 PIC x(12).
05 TERR-CODE PIC x(2).
05 PIC x(5).
05 TERR-NAME PIC x(17).
01 PROD-TABLE.
05 PIC x(12).
05 PROD-NUM PIC 9(2).
05 PIC x(5).
05 PROD-DESC PIC x(11).
05 PIC x(3).
05 PROD-PRICE PIC 9(2)V9(2).
01 TERRITORY-TABLE.
05 PIC x(2) VALUE 'NS'.
05 PIC x(17) VALUE 'NOVA SCOTIA'.
05 PIC x(2) VALUE 'NF'.
05 PIC x(17) VALUE 'NEWFOUNDLAND'.
05 PIC x(2) VALUE 'NB'.
05 PIC x(17) VALUE 'NEW BRUNSWICK'.
05 PIC x(2) VALUE 'PE'.
05 PIC x(17) VALUE 'P.E.I'.
05 PIC x(2) VALUE 'QU'.
05 PIC x(17) VALUE 'QUEBEC'.
05 PIC x(2) VALUE 'ON'.
05 PIC x(17) VALUE 'ONTARIO'.
05 PIC x(2) VALUE 'MA'.
05 PIC x(17) VALUE 'MANITOBA'.
05 PIC x(2) VALUE 'SA'.
05 PIC x(17) VALUE 'SASKATCHEWAN'.
05 PIC x(2) VALUE 'AL'.
05 PIC x(17) VALUE 'ALBERTA'.
05 PIC x(2) VALUE 'BC'.
05 PIC x(17) VALUE 'BRITISH COLUMBIA'.
05 PIC x(2) VALUE 'YT'.
05 PIC x(17) VALUE 'YUKON TERRITORIES'.
01 NEW-TERRITORY-TAB REDEFINES TERRITORY-TABLE.
05 TAB-TERRITORY-INFO OCCURS 11 TIMES.
10 TAB-TERR-CODE PIC x(2).
10 TAB-TERR-NAME PIC x(17).
01 PRODUCT-TABLE.
05 PIC 9(2) VALUE 01.
05 PIC X(11) VALUE 'THINGAMAJIG'.
05 PIC 9(2)V9(2) VALUE 16.00.
05 PIC 9(2) VALUE 02.
05 PIC X(11) VALUE 'DOHICKEY'.
05 PIC 9(2)V9(2) VALUE 24.50.
05 PIC 9(2) VALUE 03.
05 PIC X(11) VALUE 'WATUCALLIT'.
05 PIC 9(2)V9(2) VALUE 43.92.
05 PIC 9(2) VALUE 04.
05 PIC X(11) VALUE 'THINGAMABOB'.
05 PIC 9(2)V9(2) VALUE 05.10.
05 PIC 9(2) VALUE 05.
05 PIC X(11) VALUE 'WHATSIT'.
05 PIC 9(2)V9(2) VALUE 59.63.
05 PIC 9(2) VALUE 06.
05 PIC X(11) VALUE 'RAMAMABOB'.
05 PIC 9(2)V9(2) VALUE 12.75.
05 PIC 9(2) VALUE 07.
05 PIC X(11) VALUE 'WHOSIT'.
05 PIC 9(2)V9(2) VALUE 04.98.
05 PIC 9(2) VALUE 08.
05 PIC X(11) VALUE 'DING-DONG'.
05 PIC 9(2)V9(2) VALUE 15.55.
05 PIC 9(2) VALUE 09.
05 PIC X(11) VALUE 'DONG-DING'.
05 PIC 9(2)V9(2) VALUE 31.31.
05 PIC 9(2) VALUE 10.
05 PIC X(11) VALUE 'ONEOFTHOSE'.
05 PIC 9(2)V9(2) VALUE 56.69.
01 NEW-PRODUCT-TAB REDEFINES PRODUCT-TABLE.
05 TAB-PRODUCT-INFO OCCURS 11 TIMES.
10 TAB-PROD-NUM PIC x(2).
10 TAB-PROD-DESC PIC x(17).
10 TAB-PROD-PRICE PIC 9(2)V9(2).
01 HDG01.
05 PIC x(18) VALUE 'PROGRAM-ID: ASGN06'.
05 PIC x(5).
05 PIC x(15) VALUE 'Earnings Report'.
05 PIC x(26).
05 PIC x(5) VALUE 'PAGE '.
05 PR-PAGE-NO PIC Z9.
01 HDG0201.
05 PIC x(18) VALUE 'PROGRAM-ID: ASGN06'.
05 PIC x(5) VALUE SPACES.
05 PIC x(15) VALUE 'Territory Table'.
01 HDG0202.
05 PIC x(14) VALUE 'Territory Code'.
05 PIC x(3) VALUE SPACES.
05 PIC x(14) VALUE 'Territory Name'.
01 HDG0300.
05 PIC x(18) VALUE 'PROGRAM-ID: ASGN06'.
05 PIC x(5) VALUE SPACES.
05 PIC x(13) VALUE 'Product Table'.
01 HDG0301.
05 PIC x(14) VALUE 'Product Number'.
05 PIC x(5) VALUE SPACES.
05 PIC x(19) VALUE 'Product Description'.
05 PIC x(5) VALUE SPACES.
05 PIC x(13) VALUE 'Product Price'.
01 HDG02.
05 PIC x(11) VALUE 'RUNDATE :'.
05 PIC x(1).
05 PR-DAY PIC 9(2).
05 PIC x(1) VALUE '/'.
05 PR-MONTH PIC 9(2).
05 PIC x(1) VALUE '/'.
05 PR-YEAR PIC 9(2).
01 HDG03.
05 PIC x(4) VALUE 'Terr'.
05 PIC x(5) VALUE SPACES.
05 PIC x(9) VALUE 'Territory'.
05 PIC x(14) VALUE SPACES.
05 PIC x(7) VALUE 'Company'.
05 PIC x(8) VALUE SPACES.
05 PIC x(2) VALUE 'Pr'.
05 PIC x(4) VALUE SPACES.
05 PIC x(7) VALUE 'Product'.
05 PIC x(4) VALUE SPACES.
05 PIC x(7) VALUE 'Product'.
05 PIC x(2) VALUE SPACES.
05 PIC x(5) VALUE 'Sales'.
01 HDG04.
05 PIC x(4) VALUE 'Code'.
05 PIC x(7) VALUE SPACES.
05 PIC x(4) VALUE 'Name'.
05 PIC x(18) VALUE SPACES.
05 PIC x(4) VALUE 'Name'.
05 PIC x(10) VALUE SPACES.
05 PIC x(2) VALUE 'No'.
05 PIC x(2) VALUE SPACES.
05 PIC x(11) VALUE 'Description'.
05 PIC x(3) VALUE SPACES.
05 PIC x(5) VALUE 'Price'.
05 PIC x(3) VALUE SPACES.
05 PIC x(6) VALUE 'Amount'.
01 PR-COMP.
05 PIC x(1).
05 PR-COMP-TERR-CODE PIC x(2).
05 PIC x(2).
05 PR-COMP-TERR-NAME PIC x(17).
05 PIC x(3).
05 PR-COMP-NAME PIC x(20).
05 PIC x(2).
05 PR-COMP-PROD-NO PIC 9(2).
05 PIC x(2).
05 PR-COMP-PROD-DESC PIC x(11).
05 PIC x(3).
05 PR-COMP-PROD-PRICE PIC $$$.99.
05 PIC x(5).
05 PR-COMP-SALES PIC $,$$$.99.
01 PR-COMP-TERR-TOTALS.
05 PIC x(51) VALUE SPACES.
05 PIC x(20) VALUE '**Territory Totals**'.
05 PIC x.
05 TERR-TOTAL PIC 99,999.99.
01 PR-COMP-FINAL-TOTALS.
05 PIC x(51) VALUE SPACES.
05 PIC x(16) VALUE '**FINAL TOTALS**'.
05 PIC x(5) VALUE SPACES.
05 FINAL-TOTAL PIC 999,999.99.
01 SUB-TERR PIC 9(2).
01 SUB-PROD PIC 9(2).
01 PRIOR-TERR PIC X(2).
01 WS-TERR-CODE PIC x(2).
01 WS-TERR-NAME PIC x(17).
01 WS-PRODUCT-DESC PIC x(11).
01 WS-CALCULATION.
05 WS-PRODUCT-PRICE PIC 9(2)V9(2) VALUE ZEROES.
05 WS-SALE-TOTAL PIC 9(4)V9(2).
05 WS-TERR-TOTALS PIC 9(5)V9(2) VALUE ZEROES.
05 WS-FINAL-TOTALS PIC 9(6)V9(2) VALUE ZEROES.
01 WS-LINE-CTR PIC 9(2) VALUE ZERO.
01 WS-PAGE-CTR PIC 9(3) VALUE ZERO.
01 WS-EOF PIC x(3) VALUE 'NO '.
88 EOF-REACHED VALUE 'YES'.
01 WS-DATE.
05 WS-DAY PIC 9(2).
05 WS-MONTH PIC 9(2).
05 WS-YEAR PIC 9(2).
PROCEDURE DIVISION.
MAIN-PROC.
PERFORM INITIALIZATION.
PERFORM READIN.
PERFORM READY-TERRITORY-TOTALS.
PERFORM TERRITORY-HEADINGS.
PERFORM PRINT-TERRITORY-TABLE
VARYING SUB-TERR
FROM 1 BY 1
UNTIL SUB-TERR > 11.
PERFORM PRODUCT-HEADINGS.
PERFORM PRINT-PRODUCT-TABLE
VARYING SUB-PROD
FROM 1 BY 1
UNTIL SUB-PROD > 10.
PERFORM HEADINGS.
PERFORM MAIN-LOOP UNTIL EOF-REACHED.
PERFORM MOVE-TERR-TOTALS.
PERFORM PRINT-TERR-TOTALS.
PERFORM MOVE-FINAL-TOTALS.
PERFORM PRINT-FINAL-TOTALS.
PERFORM WRAPUP.
STOP RUN.
MAIN-LOOP.
PERFORM CHECK-TERRITORY.
PERFORM LOOKUP-TERRITORY
VARYING SUB-TERR
FROM 1 BY 1
UNTIL SUB-TERR > 11.
PERFORM LOOKFOR-PRODUCT
VARYING SUB-PROD
FROM 1 BY 1
UNTIL SUB-PROD > 10.
PERFORM CALCULATIONS.
PERFORM MOVE-SALES.
PERFORM MOVE-FIELDS.
PERFORM PRINT-RECORD.
PERFORM ACCUM-TERR-TOTALS.
PERFORM ACCUM-FINAL-TOTALS.
PERFORM READIN.
INITIALIZATION.
OPEN INPUT FILEIN
OUTPUT PRFILE.
ACCEPT WS-DATE FROM DATE.
MOVE WS-DAY TO PR-DAY.
MOVE WS-MONTH TO PR-MONTH.
MOVE WS-YEAR TO PR-YEAR.
READIN.
READ FILEIN
INTO IN-COMP
AT END MOVE 'YES' TO WS-EOF.
TERRITORY-HEADINGS.
WRITE PRINT-LINE
FROM HDG0201
AFTER ADVANCING PAGE.
MOVE PR-YEAR TO WS-YEAR.
MOVE PR-MONTH TO WS-MONTH.
MOVE PR-DAY TO WS-DAY.
WRITE PRINT-LINE
FROM HDG02
AFTER ADVANCING 2 LINES.
WRITE PRINT-LINE
FROM HDG0202
AFTER ADVANCING 2 LINES.
PRODUCT-HEADINGS.
WRITE PRINT-LINE
FROM HDG0300
AFTER ADVANCING PAGE.
MOVE PR-YEAR TO WS-YEAR.
MOVE PR-MONTH TO WS-MONTH.
MOVE PR-DAY TO WS-DAY.
WRITE PRINT-LINE
FROM HDG02
AFTER ADVANCING 2 LINES.
WRITE PRINT-LINE
FROM HDG0301
AFTER ADVANCING 2 LINES.
HEADINGS.
ADD 1 TO WS-PAGE-CTR.
MOVE WS-PAGE-CTR TO PR-PAGE-NO.
MOVE 0 TO WS-LINE-CTR.
WRITE PRINT-LINE
FROM HDG01
AFTER ADVANCING PAGE.
MOVE PR-YEAR TO WS-YEAR.
MOVE PR-MONTH TO WS-MONTH.
MOVE PR-DAY TO WS-DAY.
WRITE PRINT-LINE
FROM HDG02
AFTER ADVANCING 2 LINES.
WRITE PRINT-LINE
FROM HDG03
AFTER ADVANCING 2 LINES.
WRITE PRINT-LINE
FROM HDG04
AFTER ADVANCING 1 LINE.
CHECK-TERRITORY.
IF IN-COMP-TERRITORY NOT = PRIOR-TERR
THEN
PERFORM MOVE-TERR-TOTALS
PERFORM PRINT-TERR-TOTALS
PERFORM READY-TERRITORY-TOTALS.
READY-TERRITORY-TOTALS.
MOVE IN-COMP-TERRITORY TO PRIOR-TERR.
MOVE ZEROES TO WS-TERR-TOTALS.
CALCULATIONS.
MULTIPLY IN-COMP-QUANTITY BY WS-PRODUCT-PRICE
GIVING WS-SALE-TOTAL ROUNDED.
MOVE-SALES.
MOVE WS-SALE-TOTAL TO PR-COMP-SALES.
ACCUM-TERR-TOTALS.
ADD WS-SALE-TOTAL TO WS-TERR-TOTALS ROUNDED.
MOVE-TERR-TOTALS.
MOVE WS-TERR-TOTALS TO TERR-TOTAL.
ACCUM-FINAL-TOTALS.
ADD WS-SALE-TOTAL TO WS-FINAL-TOTALS ROUNDED.
MOVE-FINAL-TOTALS.
MOVE WS-FINAL-TOTALS TO FINAL-TOTAL.
MOVE-FIELDS.
MOVE IN-COMP-TERRITORY TO PR-COMP-TERR-CODE.
MOVE WS-TERR-NAME TO PR-COMP-TERR-NAME.
MOVE IN-COMP-PROD-NO TO PR-COMP-PROD-NO.
MOVE IN-COMP-NAME TO PR-COMP-NAME.
PRINT-TERRITORY-TABLE.
MOVE TAB-TERR-CODE(SUB-TERR) TO PR-COMP-TERR-CODE.
MOVE TAB-TERR-NAME(SUB-TERR) TO PR-COMP-TERR-NAME.
WRITE PRINT-LINE
FROM TERR-TABLE
AFTER ADVANCING 2 LINES.
LOOKUP-TERRITORY.
IF IN-COMP-TERRITORY = TAB-TERR-CODE(SUB-TERR)
THEN
MOVE TAB-TERR-NAME(SUB-TERR)TO WS-TERR-NAME
MOVE WS-TERR-NAME TO PR-COMP-TERR-NAME
MOVE 12 TO SUB-TERR.
PRINT-PRODUCT-TABLE.
MOVE TAB-PROD-NUM(SUB-PROD) TO PR-COMP-PROD-NO.
MOVE TAB-PROD-DESC(SUB-PROD) TO PR-COMP-PROD-DESC.
MOVE TAB-PROD-PRICE(SUB-PROD) TO PR-COMP-PROD-PRICE.
WRITE PRINT-LINE
FROM PROD-TABLE
AFTER ADVANCING 2 LINES.
LOOKFOR-PRODUCT.
IF IN-COMP-PROD-NO = TAB-PROD-NUM(SUB-PROD)
THEN
MOVE TAB-PROD-PRICE(SUB-PROD)TO WS-PRODUCT-PRICE
MOVE TAB-PROD-DESC(SUB-PROD) TO WS-PRODUCT-DESC
MOVE WS-PRODUCT-DESC TO PR-COMP-PROD-DESC
MOVE WS-PRODUCT-PRICE TO PR-COMP-PROD-PRICE
MOVE 11 TO SUB-PROD.
PRINT-RECORD.
WRITE PRINT-LINE
FROM PR-COMP
AFTER ADVANCING 2 LINES.
ADD 2 TO WS-LINE-CTR.
IF WS-LINE-CTR > 48
THEN
PERFORM HEADINGS.
PRINT-TERR-TOTALS.
WRITE PRINT-LINE
FROM PR-COMP-TERR-TOTALS
AFTER ADVANCING 3 LINES.
PRINT-FINAL-TOTALS.
WRITE PRINT-LINE
FROM PR-COMP-FINAL-TOTALS
AFTER ADVANCING 3 LINES.
WRAPUP.
MOVE SPACES TO PR-COMP.
WRITE PRINT-LINE
FROM PR-COMP
AFTER ADVANCING PAGE.
CLOSE FILEIN
PRFILE.
| [/code] |
|
Back to top |
|
 |
kolusu Site Admin

Joined: 26 Nov 2002 Posts: 12377 Topics: 75 Location: San Jose
|
Posted: Thu Nov 25, 2004 10:39 am Post subject: |
|
|
spiderdudeX,
Shouldn't your TAB-PROD-DESC in NEW-PRODUCT-TAB be pic x(11) instead of pic x(17) ??
Kolusu _________________ Kolusu
www.linkedin.com/in/kolusu |
|
Back to top |
|
 |
spiderdudeX Beginner
Joined: 24 Nov 2004 Posts: 3 Topics: 1
|
Posted: Thu Nov 25, 2004 12:35 pm Post subject: |
|
|
Yea, you're right, thanks for pointing that out  |
|
Back to top |
|
 |
spiderdudeX Beginner
Joined: 24 Nov 2004 Posts: 3 Topics: 1
|
Posted: Thu Nov 25, 2004 12:52 pm Post subject: |
|
|
Awesome, it works, thank you so much
Now, the tables won't show up in the output file PRFILE6.RPT though... I'm currently working on it, but any help that you guys can give me as to the reason for this is welcome
8) |
|
Back to top |
|
 |
|
|