Hello all,
I know its a simple quesiton, but I couldn't find any solution on the WEB.
I have an indexed file that i can entirely read with the code below:
*********************************************
program-id. Program1 as "apagar.Program1".
ENVIRONMENT DIVISION.
CONFIGURATION SECTION.
SPECIAL-NAMES.
DECIMAL-POINT IS COMMA
CONSOLE IS CRT.
INPUT-OUTPUT SECTION.
FILE-CONTROL.
SELECT CADBCO ASSIGN TO DISK
ORGANIZATION IS INDEXED
ACCESS MODE IS DYNAMIC
RECORD KEY IS CHAVE-BCO
ALTERNATE RECORD KEY IS CHAVE-BCO-1
WITH DUPLICATES.
DATA DIVISION.
FILE SECTION.
FD CADBCO BLOCK CONTAINS 32 RECORDS
RECORD CONTAINS 32 CHARACTERS
VALUE OF FILE-ID IS "C:/TMP/visual_files/cadbco"
DATA RECORD IS REG-BCO.
01 REG-BCO.
05 CHAVE-BCO PIC X(02).
05 FILLER REDEFINES CHAVE-BCO.
10 CODBCO-BCO PIC 9(03) COMP-3.
05 CHAVE-BCO-1 PIC X(30).
05 FILLER REDEFINES CHAVE-BCO-1.
10 ENDERE-BCO PIC X(30).
working-storage section.
*********************************************
procedure division.
*********************************************
OPEN I-O CADBCO.
MOVE ZEROS TO CODBCO-BCO.
START CADBCO KEY IS NOT LESS THAN CHAVE-BCO.
READ_AGAIN.
read cadbco NEXT.
DISPLAY REG-BCO.
STOP "".
GO TO READ_AGAIN.
goback.
end program Program1.
*********************************************
But, when i try to read a single specific record (with CODBCO-BCO = 114, for example) it fails with invalid key. Im sure the record exists.
Im trying to read with the code below:
*********************************************
program-id. Program1 as "apagar.Program1".
ENVIRONMENT DIVISION.
CONFIGURATION SECTION.
SPECIAL-NAMES.
DECIMAL-POINT IS COMMA
CONSOLE IS CRT.
INPUT-OUTPUT SECTION.
FILE-CONTROL.
SELECT CADBCO ASSIGN TO DISK
ORGANIZATION IS INDEXED
ACCESS MODE IS DYNAMIC
RECORD KEY IS CHAVE-BCO
ALTERNATE RECORD KEY IS CHAVE-BCO-1
WITH DUPLICATES.
DATA DIVISION.
FILE SECTION.
FD CADBCO BLOCK CONTAINS 32 RECORDS
RECORD CONTAINS 32 CHARACTERS
VALUE OF FILE-ID IS "C:/TMP/visual_files/cadbco"
DATA RECORD IS REG-BCO.
01 REG-BCO.
05 CHAVE-BCO PIC X(02).
05 FILLER REDEFINES CHAVE-BCO.
10 CODBCO-BCO PIC 9(03) COMP-3.
05 CHAVE-BCO-1 PIC X(30).
05 FILLER REDEFINES CHAVE-BCO-1.
10 ENDERE-BCO PIC X(30).
working-storage section.
*********************************************
procedure division.
*********************************************
OPEN I-O CADBCO.
MOVE 114 TO CODBCO-BCO.
read cadbco INVALID KEY DISPLAY "IT FAILS" AT LINE 10.
DISPLAY REG-BCO.
STOP "".
goback.
end program Program1.

