Conceitos
A instrução READ é utilizada para ler os registros de um arquivo.
Formato:
READ nome-de-arquivo INTO variavel-da-working-storage AT END declaração-imperativa.
Considerações
O arquivo deverá ser aberto nos modos INPUT ou I-O.
A instrução READ lê um registro por vez do arquivo e carrega os dados existentes no arquivo para a variável declarada na FD (File Description) da FILE SECTION.
A cada execução da instrução READ, o registro seguinte do arquivo será carregado na variável declarada na FD. O conteúdo existente na FD será perdido.
A cláusula INTO é opcional e permite que além da gravação na FD, o conteúdo do registro também seja gravado automaticamente na variável declarada na WORKING-STORAGE SECTION.
A clausula AT END é opcional, e faz com que o programa execute a declaração-imperativa quando o final do arquivo for encontrado.
Por exemplo, dadas as declarações;
DATA DIVISION.
FILE SECTION.
FD CADASTRO.
01 REGISTRO-CADASTRO PIC X(100).
WORKING-STORAGE SECTION.
01 REGISTRO-CAD-DETALHADO.
03 MATRICULA PIC 9(5).
03 NOME-FUNC PIC X(30).
03 ESPACOS PIC X(65).
PROCEDURE DIVISION.
OPEN INPUT CADASTRO.
LEITURA.
READ REGISTRO-CADASTRO INTO REGISTRO-CAD-DETALHADO AT END GO TO FINAL.
...
... outras instruções ...
...
GO TO LEITURA.
FINAL.
CLOSE CADASTRO.
STOP RUN.
quando o programa efetuar a leitura dos registros de CADASTRO, cada um destes será gravado tanto em REGISTRO-CADASTRO na FD quanto em REG-CAD-DETALHADO na WORKING-STORAGE. Quando o fim do arquivo for encontrado o fluxo de instruções será desviado para o parágrafo FINAL onde o arquivo será fechado e o programa encerrado.