🧠 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.