Principais Variáveis EIB no CICS (Execute Interface Block)
Salve jovem padawan, em minhas aulas de CICS, é costume apresentar as variáveis EIB no decorrer do curso, elas auxiliam um programa online, recebendo valores importantes para o processamento das transações, abaixo apresento uma breve definição. Listo as mais usadas, seu significado e valor.
📘 Definição
O EIB (Execute Interface Block) é uma área de memória automática criada pelo CICS em tempo de execução de uma transação. Ela contém informações contextuais e de controle sobre a execução da task CICS — como horário de início, terminal, ID da transação, teclas pressionadas, retorno de comandos, etc.
Ou seja: é o ambiente operacional da transação, disponível para o seu programa COBOL, PL/I, C, etc., automaticamente.
🔍 Quando e como o EIB é usado
Ao executar um programa em CICS, o sistema insere essa estrutura chamada DFHEIBLK no início do programa. Assim, não é necessário declarar explicitamente, apenas referenciar:
Variável
EIBTRNID
ID da transação em execução (ex: M001, INQ1)
EIBTASKN
Número da task do CICS. É único enquanto a task estiver ativa.
EIBDATE
Data de início da task no formato Julian (AAMMDD)
EIBTIME
Hora de início da task (em centésimos de segundo após meia-noite)
EIBCPOSN
Byte offset do erro de comunicação
EIBCALEN
Tamanho da COMMAREA recebida
EIBAID
Tecla de atenção pressionada (como ENTER, PF3, etc.)
EIBRCODE
Código de retorno da última chamada EXEC CICS (usado em tratamento de erro)
EIBRESP
Código de resposta padrão do comando EXEC CICS (usado com RESP)
EIBRESP2
Código de resposta adicional (mais detalhado que EIBRESP)
EIBRSRCE
Recurso responsável por falha em um comando (ex: nome do recurso)
EIBFN
Código da última função CICS executada (interno)
EIBDS
Nome do arquivo (VSAM, TDQ etc.) acessado mais recentemente
EIBREQID
ID de requisição mais recente (ex: para START ou LINK)
EIBRECV
Indica se houve RECEIVE bem-sucedido
EIBSEND
Indica se houve SEND
EIBATT
Tipo de atenção (PA, PF, ENTER, etc.)
EIBCID
Conversation ID em transações de comunicação interativa
EIBRLDAL
Indica se a tarefa foi reiniciada após falha (Backout recovery)
EIBCONF
Status de confirmação de transação (usado em syncpoints)
Espero ter ajudado, até o proximo artigo.
#ibm #mainframe #cobol #cics #eib #code #tips
Sem comentários:
Enviar um comentário