[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [open-cobol-list] File error for Indexed Sequential File
From: |
John R. Culleton |
Subject: |
Re: [open-cobol-list] File error for Indexed Sequential File |
Date: |
Wed, 5 Jul 2006 18:46:51 -0400 |
User-agent: |
KMail/1.9.3 |
On Wednesday 05 July 2006 11:05, Roger While wrote:
> Can not reproduce this.
> Can you redownload/regen prerelease.
>
> Roger
>
> >libcob: Permanent file error (STATUS=30) File : 'act001'
> >WARNING - Implicit CLOSE of RAW-ACCOUNTS ("rawaccts")
The program has changed but unfortunately with Open Cobol the
results are the same. I emptied out every Open Cobol directory I
could find. I downloaded as directed and did ./configure, make
and make install, this time without incident. I changed the user
of everything under /usr to my user name to avoid any little
permissions gotchas. I wiped out the existing data file which had been
created via Tiny COBOL.
Then I compiled and ran led001.cbl. Compile was quick with no
incidents. The run blew up on a file open. Here is the error
message:
TEMPLATE
libcob: Permanent file error (STATUS=30) File : 'files/ledfile'
Here is the revised
program.
000010 IDENTIFICATION DIVISION.
000020 PROGRAM-ID. led001.
000030 AUTHOR. JOHN CULLETON.
000040 INSTALLATION. WEXFORDPRESS
000045 Eldersburg MD.
000050*REMARKS.led001 Initialize GL file with top three records.
000070 ENVIRONMENT DIVISION.
000080
000090 CONFIGURATION SECTION.
000100 SOURCE-COMPUTER.
000110 Linux.
000120 OBJECT-COMPUTER.
000230 Linux.
000140
000150 INPUT-OUTPUT SECTION.
000160 FILE-CONTROL.
000170* SELECT PRINTFILE ASSIGN TO PRINTER.
SELECT LEDFILE ASSIGN TO "files/ledfile"
ORGANIZATION IS INDEXED
ACCESS IS DYNAMIC
RECORD KEY IS ACCT-KEY
ALTERNATE RECORD KEY IS PARENT-KEY
WITH DUPLICATES.
000180 DATA DIVISION.
000190
000200 FILE SECTION.
000210 FD LEDFILE.
01 LEDREC.
COPY "copyf/glfile.cpy".
000220 WORKING-STORAGE SECTION.
000230
77 FIELD-CTR PIC S9(3) COMP.
000240 PROCEDURE DIVISION.
000250 001-MAIN-PROCEDURE.
000260 DISPLAY "TEMPLATE".
OPEN OUTPUT LEDFILE.
display "file open".
PERFORM 900-ZEROIT.
MOVE "TRIAL" TO ACCT-KEY.
MOVE "TRIAL BALANCE" TO LONG-NAME.
MOVE 2 TO CHILD-COUNT.
MOVE 0 TO LEVEL-NUMBER.
WRITE LEDREC INVALID KEY DISPLAY
"INVALID KEY" ACCT-KEY.
PERFORM 900-ZEROIT.
MOVE "BAL" TO ACCT-KEY.
MOVE "TRIAL" TO PARENT-KEY.
MOVE "P&L" TO NEXT-KEY.
MOVE "BALANCE SHEET ACCOUNTS" TO LONG-NAME.
MOVE 0 TO CHILD-COUNT.
MOVE 1 TO LEVEL-NUMBER.
WRITE LEDREC INVALID KEY DISPLAY
"INVALID KEY" ACCT-KEY.
PERFORM 900-ZEROIT.
MOVE "P&L" TO ACCT-KEY.
MOVE "TRIAL" TO PARENT-KEY.
MOVE "BAL" TO PREV-KEY.
MOVE "PROFIT & LOSS ACCOUNTS" TO LONG-NAME.
MOVE 0 TO CHILD-COUNT.
MOVE 1 TO LEVEL-NUMBER.
WRITE LEDREC INVALID KEY DISPLAY
"INVALID KEY" ACCT-KEY.
CLOSE LEDFILE.
STOP RUN.
900-ZEROIT.
MOVE SPACES TO KEY-AREA OF LEDREC.
PERFORM 910-ZERO-MONEY VARYING FIELD-CTR
FROM 1 BY 1 UNTIL FIELD-CTR IS GREATER THAN 36.
910-ZERO-MONEY.
MOVE 0 TO DATA-FIELD (FIELD-CTR).
Looking at the DISPLAY results and comparing them to the
program listing it is clear that the program blows up on the file
open. And I have no clue why.
--
John Culleton
Books with answers to marketing and publishing questions:
http://wexfordpress.com/tex/shortlist.pdf
Book coaches, consultants and packagers:
http://wexfordpress.com/tex/packagers.pdf