🧠 Explicação
O comando EXEC CICS ENDBR
é utilizado para encerrar uma operação de navegação sequencial (browse) sobre um arquivo ou tabela de dados no CICS, previamente iniciada com o comando STARTBR
. Ele libera os recursos e bloqueios associados à navegação.
É essencial emitir o ENDBR
após terminar o browse, especialmente antes de executar comandos como READ UPDATE
, para evitar abends de bloqueio. Esse comando também deve ser utilizado antes de um ponto de sincronização, garantindo a liberação correta dos recursos.
🛠️ Usos mais comuns
-
Encerrar uma navegação iniciada com
STARTBR
e usada comREAD NEXT
,READ PREV
, etc. -
Evitar erros de bloqueio (como
AEI9
) ao executarREAD UPDATE
após navegação. -
Liberar recursos do CICS associados à sessão de browse antes de um ponto de sincronização.
🧾 Sintaxe
EXEC CICS ENDBR
FILE(nome-do-arquivo)
[REQID(identificador-opcional)]
[SYSID(nome-do-sistema)]
END-EXEC.
💻 Exemplo prático em COBOL
EXEC CICS ENDBR
FILE('CLIENTES')
END-EXEC.
Neste exemplo, a navegação no arquivo CLIENTES
é encerrada, liberando os recursos associados ao browse.
📋 Parâmetros e opções
Opção | Descrição |
---|---|
FILE(nome) |
Nome do arquivo que está sendo navegado. Obrigatório. |
REQID(valor) |
Identificador único para o browse, utilizado para controlar múltiplas operações simultâneas (opcional). |
SYSID(nome) |
Nome do sistema remoto, caso o arquivo esteja em outra região CICS (1 a 4 caracteres). |
📌 Regras
-
O
ENDBR
deve ser chamado após a navegação comSTARTBR
, mesmo que nenhum registro tenha sido encontrado. -
Se o
STARTBR
não foi bem-sucedido, oENDBR
não precisa ser emitido. -
O uso da opção
UPDATE
noSTARTBR
exige o uso deENDBR
antes de qualquerREAD UPDATE
. -
O comando é thread-safe apenas se:
-
O arquivo for local (VSAM/RLS).
-
Ou for remoto acessado via IPIC.
-
-
Não é thread-safe para arquivos BDAM, tabelas compartilhadas ou conexões não-IPIC.
💡 Dicas
-
Sempre que navegar com
STARTBR
, inclua oENDBR
ao final — mesmo em blocos de tratamento de erro. -
Se estiver utilizando
REQID
, mantenha valores distintos para cada operação paralela de browse. -
Combine
ENDBR
comSYNCPOINT
para garantir consistência e evitar acúmulo de bloqueios. -
O uso correto de
ENDBR
evita abends como AEI9 (bloqueio automático).
✅ Conclusão
O comando EXEC CICS ENDBR
é fundamental para encerrar corretamente uma operação de navegação sobre arquivos no CICS. Ele garante a liberação dos recursos associados, evita bloqueios indesejados e promove maior controle sobre as transações. Seu uso é simples, mas indispensável em qualquer rotina que utilize STARTBR
.