Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations Mike Lewis on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

PROBLEM WITH DECLARING VARIABLES

Status
Not open for further replies.

jps111s

Programmer
Feb 19, 2001
6
0
0
US
I keep getting an error messages that says my file names are not declared. I thought i declared them with a picture clause in my data divison. Can someone help me?
 
Hi J,

Did you write a select statement and an FD for the file?
Why don't you show us the code you developed so far?

Jack
 
*
ENVIRONMENT DIVISION.
CONFIGURATION SECTION.
SOURCE-COMPUTER. HP8665C.
OBJECT-COMPUTER. HP8665C.
INPUT-OUTPUT SECTION.
FILE-CONTROL.
SELECT CUSTOMER-INPUT-FILE ASSIGN TO A:\CUSTOMER-INPUT-FILE.
SELECT BULL-REPORT ASSIGN TO HP932C.
*
DATA DIVISION.
FILE SECTION.
FD CUSTOMER-INPUT-FILE
RECORD CONTAINS 80 CHARACTERS
LABEL RECORDS ARE OMITTED.
01 BR-BULL-RECORD.
05 BR-CUSTOMER PIC X(20).
05 BR-BREED PIC X(20).
05 BR-SALE-DATE PIC X(9).
05 BR-BIRTH-DATE PIC X(9).
05 BR-BULL-WEIGHT PIC 9(4).
05 BR-SALE-PRICE PIC 9(5)V99.
FD BULL-REPORT.
01 CR-CUSTOMER-RECORD PIC X(132).
WORKING-STORAGE SECTION.
01 WS-DATE PIC 9(6).
01 WS-PROCESSING-INDICATORS.
05 WS-END-OF-FILE-INDICATOR PIC X(3).
88 END-OF-FILE VALUE 'NO'.
01 WS-COUNTER PIC 999 VALUE 0.
01 WS-ACCUMULATORS.
05 TOT-TOTAL-SALES PIC 9(5)V99 VALUE 0.
05 TOT-TOTAL-POUNDS PIC 9(4) VALUE 0.
01 WS-DATA.
05 WS-AVERAGE-SALE-PRICE PIC 9(5)V99.
05 WS-AVERAGE-PRICE-POUND PIC 9(5)V99.
01 DL-DETAIL-LINE.
05 FILLER PIC X(22) VALUE SPACES.
05 DL-CUSTOMER PIC X(20).
05 FILLER PIC X(5) VALUE SPACES.
05 DL-BREED PIC X(20).
05 FILLER PIC X(5) VALUE SPACES.
05 DL-SALE-DATE PIC Z9/99/99.
05 FILLER PIC X(2) VALUE SPACES.
05 DL-BIRTH-DATE PIC Z9/99/99.
05 FILLER PIC X(5) VALUE SPACES.
05 DL-BULL-WEIGHT PIC 9(4).
05 FILLER PIC X(5) VALUE SPACES.
05 DL-SALE-PRICE PIC $ZZZZZ.99.
05 FILLER PIC X(20) VALUE SPACES.
01 HD-REPORT-HEADING-COMPANY-1.
05 FILLER PIC X(58) VALUE SPACES.
05 FILLER PIC X(16)
VALUE 'BULL TRADERS INC'.
05 FILLER PIC X(59) VALUE SPACES.
01 HD-REPORT-HEADING-COMPANY-2.
05 FILLER PIC X(57) VALUE SPACES.
05 FILLER PIC X(20)
VALUE 'LAWRENCE COUNTY, MO.'.
05 FILLER PIC X(57) VALUE SPACES.
01 HD-REPORT-HEADING-DATE.
05 FILLER PIC X(62) VALUE SPACES.
05 HD-HEADING-DATE PIC X(6).
05 FILLER PIC X(62) VALUE SPACES.
01 HD-COLLUMN-HEADING-1.
05 FILLER PIC X(22) VALUE SPACES.
05 FILLER PIC X(20) VALUE 'CUSTOMER'.
05 FILLER PIC X(5) VALUE SPACES.
05 FILLER PIC X(20) VALUE 'BULL'.
05 FILLER PIC X(5) VALUE SPACES.
05 FILLER PIC X(6) VALUE 'SALES'.
05 FILLER PIC X(5) VALUE SPACES.
05 FILLER PIC X(6) VALUE 'BIRTH'.
05 FILLER PIC X(5) VALUE SPACES.
05 FILLER PIC X(4) VALUE 'BULL'.
05 FILLER PIC X(5) VALUE SPACES.
05 FILLER PIC X(7) VALUE 'SALE'.
05 FILLER PIC X(22) VALUE SPACES.
01 HD-COLLUMN-HEADING-2.
05 FILLER PIC X(24) VALUE SPACES.
05 FILLER PIC X(18) VALUE 'NAME'.
05 FILLER PIC X(5) VALUE SPACES.
05 FILLER PIC X(20) VALUE 'BREED'.
05 FILLER PIC X(5) VALUE SPACES.
05 FILLER PIC X(6) VALUE 'DATE'.
05 FILLER PIC X(5) VALUE SPACES.
05 FILLER PIC X(6) VALUE 'DATE'.
05 FILLER PIC X(5) VALUE SPACES.
05 FILLER PIC X(6) VALUE 'WEIGHT'.
05 FILLER PIC X(5) VALUE SPACES.
05 FILLER PIC X(7) VALUE 'PRICE'.
05 FILLER PIC X(22) VALUE SPACES.
*
PROCEDURE DIVISION.
A000-BULL-REPORT.
PERFORM B100-INITIAL-ROUTINE.
PERFORM B200-PROCESS-RECORDS
UNTIL END-OF-FILE.
PERFORM B300-ENDING-ROUTINE.
STOP RUN
B100-INITIAL-ROUTINE.
PERFORM C100-OPEN-FILES.
PERFORM C200-INITIALIZE-VARIABLES.
PERFORM Z100-PRINT-HEADINGS.
PERFORM Z200-READ-BULL-RECORD.
B200-PROCESS-RECORDS.
PERFORM C400-CREATE-OUTPUT-RECORD.
PERFORM C500-CALCULATE-VALUES.
B300-ENDING-ROUTINE.
CLOSE CUSTOMER-INPUT-FILE
BULL-REPORT.
C100-OPEN-FILES.
OPEN INPUT CUSTOMER-INPUT-FILE
OUTPUT BULL-REPORT.
C200-INITIALIZE-VARIABLES.
INITIALIZE WS-COUNTER.
INITIALIZE WS-ACCUMULATORS.
INITIALIZE WS-DATA.
C400-CREATE-OUTPUT-RECORD.
MOVE BR-CUSTOMER TO DL-CUSTOMER.
MOVE BR-BREED TO DL-BREED.
MOVE BR-BIRTH-DATE TO DL-BIRTH-DATE.
MOVE BR-SALE-DATE TO DL-SALE-DATE.
MOVE BR-BULL-WEIGHT TO DL-BULL-WEIGHT.
MOVE BR-SALE-PRICE TO DL-SALE-PRICE.
C500-CALCULATE-VALUES.
PERFORM D100-AVERAGE-PRICE-PER-POUND.
PERFORM D200-AVERAGE-SALE-PRICE.
D100 AVERAGE-PRICE-PER-POUND.
DIVIDE TOT-TOTAL-SALES BY TOT-TOTAL-POUNDS
GIVING WS-AVERAGE-PRICE-POUND.
D200 AVERAGE-SALE-PRICE.
DIVIDE TOT-TOTAL-SALES BY WS-COUNTER.
GIVING WS-AVERAGE-SALE-PRICE.
DIVIDE TOT-TOTAL-SALES BY WS-COUNTER
GIVING WS-AVERAGE-SALE-PRICE.
Z100-PRINT-HEADINGS.
MOVE HD-REPORT-HEADING-COMPANY-1 TO CR-CUSTOMER-RECORD.
WRITE CR-CUSTOMER-RECORD
AFTER ADVANCING 1 LINE.
MOVE HD-REPORT-HEADING-COMPANY-2 TO CR-CUSTOMER-RECORD.
WRITE CR-CUSTOMER-RECORD
AFTER ADVANCING 1 LINE.
ACCEPT WS-DATE FROM DATE.
MOVE WS-DATE TO HD-HEADING-DATE.
MOVE HD-HEADING-DATE TO CR-CUSTOMER-RECORD.
WRITE CR-CUSTOMER-RECORD
AFTER ADVANCING 1 LINE.
MOVE ALL '*' TO CR-CUSTOMER-RECORD.
WRITE CR-CUSTOMER-RECORD
AFTER ADVANCING 1 LINE
Z200-READ-BULL-RECORD.
READ CUSTOMER-INPUT-FILE
AT END MOVE 'END' WS-END-OF-FILE-INDICATOR.
 
jps111s,

1) A:CUSTOMER-INPUT-FILE should be inside of these " "
2) you also have other errors in your listing
For Instance:
2.1) period required after STOP RUN
2.2) period required before Z200-READ-BULL-RECORD

Good Luck


 
On a side note - congrats on using a naming convention for paragraph names. It took me a second to recognize it beginning with a character but was easy after that to find your paragraphs. This is a good habit to follow and not that common among beginning programmers. Good paragraph heading names too.

BTW, if you are doing this in COBOL 95, the word FILLER in the data division is optional. If it's left blank, FILLER is implied. It makes the actual data names atand out a lot better and looks less cluttered. You might also want to learn about in-line performs.

You might want to put a few blank lines betweeen paragraphs, divisions, sections and FDs so they are more distinct for "human" reading.
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top