gnucobol-users
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[open-cobol-list] File error for Indexed Sequential File


From: John R. Culleton
Subject: [open-cobol-list] File error for Indexed Sequential File
Date: Mon, 3 Jul 2006 09:31:30 -0400
User-agent: KMail/1.9.3

One of the virtues of having both Tiny and Open up and running
is the ability to do comparative tests. I list below a short
program which compiles clean in both. It runs OK in Tiny but
yields the following error in Open:

libcob: Permanent file error (STATUS=30) File : 'act001'
WARNING - Implicit CLOSE of RAW-ACCOUNTS ("rawaccts")

Here is the file, just a little one time use utility program:
-------------------------------------------------

000010 IDENTIFICATION DIVISION.
000020 PROGRAM-ID. TEMPLATE.
000030 AUTHOR. JOHN CULLETON.
000040 INSTALLATION. WEXFORDPRESS
000045            Eldersburg MD.
000050*REMARKS.
000060*    THIS IS A TEMPLATE FOR OPEN COBOL AND HTCOBL.  
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.
           SELECT RAW-ACCOUNTS ASSIGN TO "rawaccts"
              ORGANIZATION IS LINE SEQUENTIAL.
           SELECT DETAIL-ACCOUNTS ASSIGN TO "act001"
              ORGANIZATION IS INDEXED
              RECORD KEY IS ACCT-NO 
              ACCESS IS SEQUENTIAL.
      *
000180 DATA DIVISION.
000190
000200 FILE SECTION.
000210 FD  RAW-ACCOUNTS.
       01  RAW-REC.
           05 PREFIX PIC X(17).
           05 CONTRA PIC X.
           05 RAW-NO PIC X(6).
           05 FILLER PIC X.
           05 ACCT-DESC PIC X(63).
           05 ACCT-CODE PIC X(2).
000210 FD  DETAIL-ACCOUNTS.
       01  DETAIL-REC.
           05 ACCT-NO PIC X(6).
           05 ACCT-CODE PIC X(2).
           05 CONTRA PIC X.
           05 ACCT-BAL PIC S9(9).
           05 ACCT-DESC PIC X(60).
          
000220 WORKING-STORAGE SECTION.
000230
000240 PROCEDURE DIVISION.
000250 001-MAIN-PROCEDURE.
           OPEN INPUT
                RAW-ACCOUNTS.
           OPEN OUTPUT DETAIL-ACCOUNTS. 
       MAIN-LOOP.
           READ RAW-ACCOUNTS AT END GO TO CLOSE-ALL.
           IF PREFIX IS EQUAL TO SPACES PERFORM DETAIL-ADD.
           GO TO MAIN-LOOP.
       CLOSE-ALL.
           CLOSE 
                RAW-ACCOUNTS
                 DETAIL-ACCOUNTS. 
                STOP RUN.
       DETAIL-ADD. 
           DISPLAY "DETAIL-ADD".
           MOVE CORRESPONDING RAW-REC TO DETAIL-REC.
           MOVE RAW-NO TO ACCT-NO.
           WRITE DETAIL-REC.
---------------------------
The error occurs before the first execution of DETAIL-ADD.

Thoughts?
-- 
John Culleton





reply via email to

[Prev in Thread] Current Thread [Next in Thread]