A instrução RELEASE
no COBOL é usada dentro de um INPUT PROCEDURE
de uma instrução SORT
para enviar registros à fase de classificação. Ela transfere os dados de um campo ou registro para o arquivo de trabalho da ordenação.
📌 Para que serve
-
Enviar registros um a um para o processo de SORT.
-
Usar um campo temporário ou um registro de outro arquivo para alimentar a ordenação.
-
Controlar manualmente quais registros serão classificados.
🧾 Sintaxe básica
RELEASE nome-do-registro.
RELEASE nome-do-registro FROM identificador.
✅ Exemplo prático
INPUT-PROCEDURE.
PERFORM UNTIL FIM-DO-ARQUIVO
READ ARQ-CLIENTES
AT END
SET FIM-DO-ARQUIVO TO TRUE
NOT AT END
MOVE REG-CLIENTE TO REG-SORT
RELEASE REG-SORT
END-READ
END-PERFORM.
⚙️ Definição de campos
Elemento | Definição |
---|---|
record-name-1 |
Nome do registro definido na SD (SORT FILE). |
FROM identifier-1 |
Permite liberar um campo sem precisar mover manualmente. |
RELEASE FROM |
Equivale a MOVE identifier-1 TO record-name-1 seguido de RELEASE . |
🧠 Dicas práticas
-
Só pode ser usada dentro de um INPUT PROCEDURE de um
SORT
. -
RELEASE é obrigatório se o
SORT
usarINPUT PROCEDURE
. -
O campo
record-name-1
precisa estar definido em uma entradaSD
. -
Ao usar
FROM
, o conteúdo doidentifier-1
continua disponível após a instrução. -
Se estiver usando
SAME RECORD AREA
, o conteúdo dorecord-name-1
é preservado.
✅ Conclusão
A instrução RELEASE
é essencial para alimentar a operação de ordenação (SORT
) manualmente, registro por registro. Seu uso permite total controle sobre quais registros entram na ordenação e facilita a preparação dos dados antes da classificação automática pelo COBOL.