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
SORTusarINPUT PROCEDURE. -
O campo
record-name-1precisa estar definido em uma entradaSD. -
Ao usar
FROM, o conteúdo doidentifier-1continua 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.