🧠 Explicação
Command Level é o formato moderno de comunicação entre programas COBOL (ou Assembler) e o ambiente CICS. Ele permite que o programador utilize comandos padronizados para interagir com recursos do CICS, como telas, arquivos, transações, armazenamento temporário, entre outros — de forma simples e legível.
A estrutura desses comandos segue o formato:
EXEC CICS nome-do-comando [parâmetros]
END-EXEC.
Antes de ser compilado, o programa precisa passar por um pré-processador (pré-compilador) que converte os comandos EXEC CICS
em chamadas (CALL
) para os módulos internos do CICS.
🛠️ Usos mais comuns
-
Manipular arquivos (READ, WRITE, DELETE)
-
Exibir e receber telas (SEND/RECEIVE MAP)
-
Tratar abends e erros (HANDLE ABEND, HANDLE CONDITION)
-
Disparar ou controlar transações (START, RETURN, LINK, XCTL)
-
Armazenar dados temporários ou transitórios
-
Controlar concorrência com ENQ/DEQ
📌 Sintaxe base
EXEC CICS COMANDO PARÂMETROS
END-EXEC.
Exemplo simples:
EXEC CICS SEND MAP('TELA01') MAPSET('TELAS') ERASE
END-EXEC.
🧾 Principais Comandos por Categoria
☠️ Tratamento de Abends
-
EXEC CICS ABEND
-
EXEC CICS HANDLE ABEND
🖥️ Gerenciamento de Tela (MAPs)
-
EXEC CICS SEND MAP
-
EXEC CICS RECEIVE MAP
✏️ Edição de Dados
-
EXEC CICS BIF DEEDIT
🌐 Acesso ao Ambiente
-
EXEC CICS ADDRESS
-
EXEC CICS ASSIGN
❗ Tratamento de Erros
-
EXEC CICS HANDLE CONDITION
-
EXEC CICS IGNORE CONDITION
📁 Acesso a Arquivos
-
EXEC CICS READ
-
EXEC CICS WRITE
-
EXEC CICS REWRITE
-
EXEC CICS STARTBR
-
EXEC CICS READNEXT
-
EXEC CICS READPREV
-
EXEC CICS RESETBR
-
EXEC CICS ENDBR
-
EXEC CICS DELETE
-
EXEC CICS SYNCPOINT
-
EXEC CICS SYNCPOINT ROLLBACK
⚙️ Controle de Transações
-
EXEC CICS START
-
EXEC CICS DELAY
-
EXEC CICS RETRIEVE
-
EXEC CICS CANCEL
-
EXEC CICS ASKTIME
-
EXEC CICS FORMATTIME
📦 Controle de Programas
-
EXEC CICS LINK
-
EXEC CICS XCTL
-
EXEC CICS RETURN
🧵 Controle de Tarefas (Tasks)
-
EXEC CICS ENQ
-
EXEC CICS DEQ
-
EXEC CICS SUSPEND
🧪 Temporary Storage (TS)
-
EXEC CICS READQ TS
-
EXEC CICS WRITEQ TS
-
EXEC CICS DELETEQ TS
📤 Transient Data (TD)
-
EXEC CICS READQ TD
-
EXEC CICS WRITEQ TD
-
EXEC CICS DELETEQ TD
📋 Regras importantes
-
Todo comando EXEC CICS deve terminar com END-EXEC.
-
O programa precisa passar por um pré-compilador antes de ser compilado.
-
Os comandos são processados como instruções CALL no executável final.
-
Os comandos devem ser escritos exatamente como definidos, respeitando nomes e parâmetros.
-
A maioria dos comandos só pode ser usada em ambientes CICS ativos.
💡 Dicas
-
Utilize o HANDLE CONDITION para tratar exceções e evitar abends inesperados.
-
Prefira comandos Command Level em vez de Macro Level, pois são mais portáveis e modernos.
-
Para interações com tela, defina corretamente MAP e MAPSET.
-
Sempre teste as operações de arquivo com rollback (
SYNCPOINT ROLLBACK
) para garantir integridade. -
Dominar os comandos básicos (READ, SEND, LINK, RETURN) é essencial para o desenvolvimento de programas online no CICS.
✅ Conclusão
O Command Level é a forma padrão e recomendada para programar aplicações CICS com COBOL. Ele oferece uma interface clara e poderosa para acessar todos os recursos do CICS, como telas, arquivos, tarefas e transações. Aprender os principais comandos e suas categorias é essencial para qualquer programador que desenvolve sistemas online em ambientes mainframe.