🧠 Explicação

O campo EIBAID faz parte do bloco EIB (EXEC Interface Block) e armazena o identificador de atenção (AID) correspondente à última tecla pressionada pelo usuário em um terminal 3270. Ele permite ao programa saber como a entrada de dados foi finalizada — por exemplo, se o usuário pressionou ENTER, PF3, CLEAR, etc.

Esse valor permanece inalterado até que ocorra uma nova entrada de dados. Ele é essencial para controlar o fluxo do programa com base na tecla pressionada pelo usuário.

🛠️ Usos mais comuns

  • Verificar se o usuário pressionou ENTER ou alguma tecla de função

  • Definir diferentes comportamentos no programa para cada tecla

  • Tratar comandos especiais, como PF3 (voltar) ou PA1 (cancelar)

  • Encerrar ou navegar entre telas com base na entrada do usuário

🧾 Sintaxe para teste em COBOL

IF EIBAID = DFHENTER
    PERFORM PROCESSA-ENTRADA

IF EIBAID = DFHPF3
    GO TO ENCERRAR-PROGRAMA

📋 Tabela de AIDs padrão

Tecla Caractere Valor Hexa (EBCDIC) Constante DFHAID (COBOL)
ENTER ' 7D DFHENTER
PF1 1 F1 DFHPF1
PF2 2 F2 DFHPF2
PF3 3 F3 DFHPF3
PF4 4 F4 DFHPF4
PF5 5 F5 DFHPF5
PF6 6 F6 DFHPF6
PF7 7 F7 DFHPF7
PF8 8 F8 DFHPF8
PF9 9 F9 DFHPF9
PF10 : 7A DFHPF10
PF11 # 7B DFHPF11
PF12 @ 7C DFHPF12
PA1 % 6C DFHPA1
PA2 > 6E DFHPA2
PA3 , 6B DFHPA3
CLEAR - 6D DFHCLEAR

📘 Observações

  • As teclas PA1, PA2 e PA3 são exclusivas de terminais 3270. Elas não transmitem os dados digitados, apenas sinalizam uma ação.

  • EIBAID também é preenchido automaticamente no início de uma tarefa não iniciada por ATI (como transações padrão).

  • As constantes DFHAID são fornecidas pelo CICS para facilitar o uso em COBOL — evite usar valores hexadecimais diretamente.

💡 Dicas

  • Use EIBAID com EIBTRNID para criar menus ou navegar entre funções de forma dinâmica.

  • Trate teclas como PF3 (voltar) ou PF12 (sair) em todos os programas para manter um padrão de navegação.

  • Para situações mais simples, é possível usar HANDLE AID para desviar automaticamente para parágrafos específicos.

Exemplo com HANDLE AID:

EXEC CICS HANDLE AID
    PF3(SAIR-DA-TELA)
    PF12(FINALIZAR)
END-EXEC.

 

✅ Conclusão

O campo EIBAID é essencial para o controle de fluxo em programas CICS interativos. Ele permite ao programa reagir conforme a tecla pressionada pelo usuário no terminal. Usá-lo corretamente torna as interfaces mais funcionais e os programas mais inteligentes e responsivos às ações do operador.