Você está na página 1de 36

Programa Exemplo

Índice

Sumário
EIB – Exec Interface Block.......................................................................................................................3

EIBAID................................................................................................................................................3

EIBATT...............................................................................................................................................4

EIBCALEN...........................................................................................................................................4

EIBCOMPL..........................................................................................................................................4

EIBCONF............................................................................................................................................5

EIBCPOSN..........................................................................................................................................6

EIBDATA.............................................................................................................................................6

EIBDS.................................................................................................................................................6

EIBEOC...............................................................................................................................................7

EIBERR...............................................................................................................................................7

EIBERRCD...........................................................................................................................................8

Tabela 1. Valores hexadecimais retornados com EIBERRCD e seus significados..........................8

EIBFMH..............................................................................................................................................9

EIBFN...............................................................................................................................................10

Tabela 2. Código EIBFN que contém o último comando CICS a ser usado..................................10

EIBFREE............................................................................................................................................14

EIBLABEL..........................................................................................................................................14

EIBNODAT........................................................................................................................................14

EIBRCODE........................................................................................................................................15

Tabela 3. Valores EIBRCODE e condições correspondentes.......................................................16

Data : 12/06/23 Hora : 12:09:30 Pagina: 1 / 36


Programa Exemplo

EIBRECV...........................................................................................................................................23

EIBREQID.........................................................................................................................................23

EIBRESP............................................................................................................................................24

Tabela 4. Valores de RESP em decimais......................................................................................24

EIBRESP2.....................................................................................................................................26

Tabela 5. Valores de RESP2........................................................................................................26

EIBRLDBK.........................................................................................................................................30

EIBRSRCE.........................................................................................................................................31

Tabela 6. EIBRSRCE que especifica o recurso que está sendo acessado.....................................31

EIBSIG..............................................................................................................................................32

EIBSYNC...........................................................................................................................................32

EIBSYNRB.........................................................................................................................................33

EIBTASKN.........................................................................................................................................33

EIBTIME...........................................................................................................................................34

EIBTRMID.........................................................................................................................................35

EIBTRNID.........................................................................................................................................35

Fonte....................................................................................................................................................35

IBM Reference.................................................................................................................................35

Revisão............................................................................................................................................36

Data : 12/06/23 Hora : 12:09:30 Pagina: 2 / 36


Programa Exemplo

Campos do bloco de interface


EXEC (EIB)

EIB – Exec Interface Block

Estas informações descrevem os campos do EXEC Interface Block (EIB). Um programa


aplicativo pode ler todos os campos do EIB da tarefa associada por nome, mas não deve
alterar o conteúdo de nenhum deles.

Para cada campo, são fornecidos o conteúdo e o formato (para cada uma das linguagens de
programação de aplicativos, COBOL, C , C++ ou PL/I). Todos os campos contêm zeros na
ausência de informações significativas. Os campos são listados em sequência alfabética.

EIBAID

Este campo EIB contém o identificador de atenção (AID) que está associado ao último
controle de terminal ou operação de entrada de Suporte de Mapeamento Básico (BMS)
de um dispositivo de exibição, como um terminal.
Para COBOL: PIC X(1)

Para C ou C++ : Para C : cics_char_t eibaid;

Para PL/I: CHAR(1)

Data : 12/06/23 Hora : 12:09:30 Pagina: 3 / 36


Programa Exemplo

EIBATT

Este campo EIB indica que a unidade de solicitação/resposta (RU) contém dados de
cabeçalho anexados ( X'FF' ).
Para COBOL: PIC X(1)

Para C ou C++ : cics_char_t eibatt;

Para PL/I: CHAR(1)

EIBCALEN

Este campo EIB contém o comprimento da área de comunicação que foi passada ao programa
aplicativo desde o último programa, utilizando as opções COMMAREA e LENGTH. Se
nenhuma área de comunicação for passada, este campo contém zeros.
Para COBOL: PIC S9(4) COMP

Para C ou C++ : cics_ushort_t eibcalen;

Para PL/I: COMPARTIMENTO FIXO(15)

EIBCOMPL

Este campo EIB indica, em um comando RECEIVE ou CONVERSE de controle de


terminal, se os dados estão completos ( X'FF' ). Se a opção NOTRUNCATE tiver sido
usada no comando RECEIVE ou CONVERSE, o CICS retém dados além da quantidade
solicitada por meio da opção LENGTH ou MAXLENGTH. EIBRECV está configurado

Data : 12/06/23 Hora : 12:09:30 Pagina: 4 / 36


Programa Exemplo

para indicar que são necessários comandos RECEIVE ou CONVERSE


adicionais. EIBCOMPL não é definido até que o último dado seja recebido.

EIBCOMPL é sempre definido quando um comando RECEIVE ou CONVERSE sem a


opção NOTRUNCATE é executado.

Para COBOL: PIC X(1)

Para C ou C++ : cics_char_t eibcompl;

Para PL/I: CHAR(1)

EIBCONF

Este campo EIB indica que o interlocutor emitiu uma solicitação CONFIRM ( X'FF' ) e
que é necessária uma resposta.
Para COBOL:PIC X(1)

Para C ou C++ : cics_char_t eibconf;

Para PL/I: CHAR(1)

Data : 12/06/23 Hora : 12:09:30 Pagina: 5 / 36


Programa Exemplo

EIBCPOSN

Este campo EIB contém o endereço do cursor (posição) que está associado ao último controle
de terminal ou operação de entrada do Basic Mapping Support (BMS) de um dispositivo de
exibição, como um terminal.

Para COBOL: PIC S9(4) COMP

Para C ou C++ : cics_ushort_t eibcposn;

Para PL/I: COMPARTIMENTO FIXO(15)

EIBDATA

Este campo EIB contém a data em que a tarefa foi iniciada (este campo é atualizado pelo
comando ASKTIME). A data está no formato decimal compactado (0CYYDDD+), onde C
mostra o século com valores 0 para os anos 1900 e 1 para os anos 2000. Por exemplo, as datas
31 de Dezembro de 1999 e 1 de Janeiro de 2000 têm valores EIBDATE de 0099365 e
0100001 respectivamente.

Para COBOL: PIC S9(7) COMP-3

Para C ou C++ : cics_char_t eibdate [4];

Para PL/I: DEC FIXA(7,0)

EIBDS

Data : 12/06/23 Hora : 12:09:30 Pagina: 6 / 36


Programa Exemplo

Este campo EIB contém o identificador simbólico do último arquivo referenciado por
uma solicitação de controle de arquivo.

Para COBOL: PIC X(8)

Para C ou C++ : cics_char_t eibds [8];

Para PL/I: CHAR(8)

EIBEOC

Este campo EIB é definido como X'FF' após uma comunicação avançada programa a
programa (APPC) RECEIVE ou CONVERSE bem-sucedida; caso contrário, não está
definido. (Uma conversação APPC permite que um programa envie e receba dados de
um programa que está sendo executado em um sistema remoto. A programação que usa
conversações APPC é chamada de Programação de Transações Distribuídas (DTP).
Para obter informações de orientação sobre DTP, consulte Transação distribuída
processamento (DTP) .)

Para COBOL: PIC X(1)

Para C ou C++ : cics_char_t eibeoc;

Para PL/I: CHAR(1)

EIBERR

Data : 12/06/23 Hora : 12:09:30 Pagina: 7 / 36


Programa Exemplo

Este campo EIB indica que ocorreu uma condição anormal ( X'FF' ) em uma
conversação APPC. O código de erro está em EIBERRCD.

Para COBOL: PIC X(1)

Para C ou C++ : cics_char_t eiberr;

Para PL/I: CHAR(1)

EIBERRCD

Este campo EIB quando EIBERR está definido contém o código de erro que foi
recebido. Os seguintes valores podem ser retornados nos dois primeiros bytes de
EIBERRCD:

 X'0824' SYNCPOINT ROLLBACK foi solicitado.


 X'0864' ISSUE ABEND foi recebido.
 X'0889' ERRO DE PROBLEMA foi recebido.
 X'A000' A conversa foi perdida.

Tabela 1. Valores hexadecimais retornados com EIBERRCD e seus


significados

Valor Descrição
X'080F6051' A transação do parceiro falhou na verificação de segurança.
X'08240000' A transação ou sistema do parceiro emitiu SYNCPOINT ROLLBACK.
O sistema parceiro está temporariamente impossibilitado de iniciar a
X'084B6031'
transação do parceiro.
X'084C0000' O sistema parceiro não pode iniciar a transação do parceiro.

Data : 12/06/23 Hora : 12:09:30 Pagina: 8 / 36


Programa Exemplo

Valor Descrição
X'08640000' A transação do parceiro enviou ISSUE ABEND.
X'08640001' O sistema parceiro enviou ISSUE ABEND.
X'08890000' Um comando ISSUE ERROR foi recebido.
O nome da transação do parceiro não é reconhecido pelo sistema do
X'10086021'
parceiro.
Os dados PIP foram especificados, mas o processo remoto não os
X'10086031'
suporta.
Os dados PIP enviados com CONNECT PROCESS foram especificados
X'10086032'
incorretamente.
X'10086034' O sistema parceiro não oferece suporte a conversas mapeadas.
A transação do parceiro não suporta o nível de sincronização solicitado
X'10086041'
no CONNECT PROCESS.

Para COBOL: PIC X(4)

Para C ou C++ : cics_char_t eiberrcd [4];

Para PL/I: CHAR(4)

EIBFMH

Este campo EIB indica que os dados do usuário recém-recebidos ou recuperados contêm
um FMH ( X'FF' ). Isto não pode ocorrer no TXSeries for Multiplatforms , que sempre
configura este campo como X'00' .

Para COBOL: PIC X(1)

Para C ou C++ : cics_char_t eibfmh;

Para PL/I: CHAR(1)

Data : 12/06/23 Hora : 12:09:30 Pagina: 9 / 36


Programa Exemplo

EIBFN

Este campo EIB contém um código que identifica o último comando CICS a ser emitido
pela tarefa (atualizado quando a função solicitada for concluída).

Para COBOL: PIC X(2)

Para C ou C++ : cics_char_t eibfn [2];

Para PL/I: CHAR(2)

Tabela 2. Código EIBFN que contém o último comando CICS a ser


usado

Código Comando
0202 ENDEREÇO
0204 CONDIÇÃO DO PUNHO
0206 AJUDA DE MANUTENÇÃO
0208 ATRIBUIR
020A IGNORAR CONDIÇÃO
020C ALÇA DE EMPURRAR
020E PUNHO POP
0402 RECEBER
0404 ENVIAR
0406 CONVERSAR
040C TERMINAL DE ESPERA
041E SINAL DE EMISSÃO
0420 DISTRIBUIR
0422 LIVRE
042C AGUARDE CONVÍVIO
042E PROCESSO DE EXTRAÇÃO
0430 PROBLEMA ABENDADO
0432 PROCESSO DE CONEXÃO
0434 CONFIRMAÇÃO DO PROBLEMA

Data : 12/06/23 Hora : 12:09:30 Pagina: 10 / 36


Programa Exemplo

Código Comando
0438 ERRO DE PROBLEMA
0436 PREPARAÇÃO DA QUESTÃO
043E EXTRAIR ATRIBUTOS
0602 LER
0604 ESCREVER
0606 REESCREVER
0608 EXCLUIR
060A DESBLOQUEAR
060C STARTBR
060E LEIA A SEGUIR
0610 LEIAPREV
0612 ENDBR
0614 RESETBR
0802 ESCREVERQ TD
0804 READQ TD
0806 EXCLUIR TD
0A02 ESCREVERQ TS
0A04 LEIA TS
0A06 EXCLUIR TS
0C02 OBTER
0C04 FREEMAIN
0E02 LINK
0E04 XCTL
0E06 CARREGAR
0E08 RETORNAR
0E0A LIBERAR
0E0C ABEND
0E0E MANIPULAR ABEND
1002 PERGUNTA
1004 ATRASO
1008 COMEÇAR
100A RECUPERAR
100°C CANCELAR
1204 ENQ
1206 DEQ
1208 SUSPENDER
1402 DIÁRIO
1404 AGUARDE DIÁRIO

Data : 12/06/23 Hora : 12:09:30 Pagina: 11 / 36


Programa Exemplo

Código Comando
1602 PONTO DE SINCRONIZAÇÃO
1802 RECEBER MAPA
1804 ENVIAR MAPA
1806 MANDE MENSAGEM
1812 ENVIAR CONTROLE
1A02 VESTÍGIO
1A04 DIGITAR
1C02 JOGAR FORA
3416 COLOCAR RECIPIENTE
3414 OBTER RECIPIENTE
3412 EXCLUIR RECIPIENTE
3440 MOVER RECIPIENTE
4A02 ASKTIME ABSTIME
4A04 FORMATOTEMPO
4C02 INFORMAR ARQUIVO
4C04 DEFINIR ARQUIVO
4E02 PROGRAMA DE CONSULTA
4E04 DEFINIR PROGRAMA
5002 PERGUNTAR TRANSAÇÃO
5004 DEFINIR TRANSAÇÃO
5202 PERGUNTAR TERMINAL
5204 DEFINIR TERMINAL
5206 PERGUNTE A NETNAME
5402 SISTEMA DE CONSULTA
5802 PERGUNTAR CONEXÃO
5804 DEFINIR CONEXÃO
5C02 PERGUNTE TDQUEUE
5C04 DEFINIR TDQUEUE
5E02 CONSULTAR TAREFA ou CONSULTAR LISTA DE TAREFAS
5E1A INQUIRE_TRANCLASS
5E1C SET_TRANCLASS
5E04 DEFINIR TAREFA
5E06 MUDAR TAREFA
6002 PERGUNTAR NÚMERO DO JORNAL
6004 DEFINIR NÚMERO DO JORNAL
7002 PERGUNTE ESTATÍSTICAS
7004 DEFINIR ESTATÍSTICAS
7006 REALIZAR REGISTRO DE ESTATÍSTICAS

Data : 12/06/23 Hora : 12:09:30 Pagina: 12 / 36


Programa Exemplo

Código Comando
7008 COLETAR ESTATÍSTICAS
7402 ENTRAR
7404 CANCELAR ASSINAR
7406 VERIFIQUE A SENHA
7408 ALTERAR A SENHA
7E02 TRANSAÇÃO DE DUMP
820°C FEPI SOLICITAÇÃO DE PASSEIO
820E FEPI AP NOOP
8210 FEPI ALOCAR PASSCONVID|POOL
8212 CONVERSA FEPI FORMATADA
8214 FEPI CONVERSE DATASTREAM
8216 CONV. DE EXTRATO FEPI
8218 CAMPO DE EXTRACÇÃO FEPI
821A EXTRATO FEPI STSN
821C EXTRATO FEPI GRATUITO
821E QUESTÃO FEPI
8220 RECEBER FEPI FORMATADO
8222 FEPI RECEBE TRANSMISSÃO DE DADOS
8224 ENVIO FEPI FORMATADO
8226 FEPI ENVIA FLUXO DE DADOS
8228 INÍCIO DA FEPI
840E FEPI SP NOOP
8422 FEPI INQUIRE PROPERTYSET
8428 FEPI INSTALAR PROPERTYSET
8430 CONJUNTO DE PROPRIEDADE DE DESCARTE DA FEPI
8442 NÓ DE INQUÉRITO FEPI
8444 FEPI SET NODE|NODELIST
8448 LISTA DE NÓS DE INSTALAÇÃO FEPI
844A FEPI ADICIONAR PISCINA
844C FEPI EXCLUIR PISCINA
8450 LISTA DE NODEL DE DESCARTAMENTO FEPI
8462 FEPI INQUÉRITO PISCINA
8464 PISCINA DE CONJUNTO FEPI|LISTA DE PISCINAS
8468 PISCINA DE INSTALAÇÃO FEPI
8470 PISCINA DE DESCARTE FEPI
8482 FEPI INQUÉRITO ALVO
8484 FEPI DEFINIR ALVO|TARGETLIST
8488 FEPI INSTALAR LISTA DE ALVO

Data : 12/06/23 Hora : 12:09:30 Pagina: 13 / 36


Programa Exemplo

Código Comando
8490 LISTA DE ALVO DE DESCARTAMENTO FEPI
84A2 FEPI CONSULTA CONEXÃO
84A4 CONEXÃO DO CONJUNTO FEPI

EIBFREE

Este campo BEI indica que o programa de aplicação não pode continuar a utilizar o recurso. O
receptor deve emitir um comando FREE para a conversa.

Para COBOL: PIC X(1)

Para C ou C++ : cics_char_t eibfree;

Para PL/I: CHAR(1)

EIBLABEL

Este campo, que é usado apenas para programas COBOL, é usado para conter valores
relacionados a condições tratadas ou encerramentos anormais. Os valores são:

 0: RETORNO ou XCTL
 1: encerrar
 2 a nn : um valor que identifica um rótulo para uma condição tratada ou encerramento

anormal

EIBNODAT

Data : 12/06/23 Hora : 12:09:30 Pagina: 14 / 36


Programa Exemplo

Este campo EIB indica que nenhum dado foi enviado pela aplicação remota
( X'FF' ). Foi recebida uma mensagem do sistema remoto que transmitia apenas
informações de controle. Por exemplo, se o aplicativo remoto executasse um comando
SEND com uma opção WAIT, todos os dados seriam enviados através do link.

Se a aplicação remota executar um comando SEND INVITE sem usar a opção FROM
para transmitir dados ao mesmo tempo, será necessário enviar a instrução INVITE
através do link por si só. Neste caso, a aplicação receptora encontra o conjunto
EIBNODAT. O uso deste campo é restrito a programas aplicativos que mantêm
conversações somente através de links APPC.

Para COBOL: PIC X(1)

Para C ou C++ : cics_char_t eibnodat;

Para Pl/I: CHAR(1)

EIBRCODE

Este campo EIB contém o código de resposta do CICS que é retornado após a conclusão da
função solicitada pelo último comando do CICS a ser emitido pela tarefa.

Para uma resposta normal, este campo contém zeros hexadecimais ( X'00' ). Apenas
para programas COBOL, quase todas as informações contidas neste campo podem ser
utilizadas em programas aplicativos pelo comando HANDLE CONDITION.

Para COBOL: PIC X(6)

Data : 12/06/23 Hora : 12:09:30 Pagina: 15 / 36


Programa Exemplo

Para C ou C++ : cics_char_t eibrcode [6];

Para PL/I: CHAR(6)

A lista a seguir mostra os valores EIBRCODE que correspondem às condições que


podem ocorrer para cada grupo de comandos (conforme indicado pelo byte 0 do
EIBFN), juntamente com os nomes das condições associadas.
Para algumas condições, mais informações são fornecidas no EIBRCODE. Isto é
indicado por uma nota que segue a lista de valores.
Para alguns comandos (por exemplo, INQUIRE e SET), o byte 3 do EIBRCODE
contém o equivalente hexadecimal do valor em EIBRESP. Qualquer informação
adicional relacionada às condições que estão ocorrendo nesses comandos pode ser
encontrada em EIBRESP2 em vez de EIBRCODE. Os valores RESP2 são fornecidos
nas descrições dos comandos individuais.

Tabela 3. Valores EIBRCODE e condições correspondentes

EIBFN CÓDIGO EIBR Condições


02-- E0 -- -- -- -- -- INVREQ
04-- D0 -- -- -- -- -- SYSIDERR 3
04-- D3 -- -- -- -- -- SYSBUSY
04-- D5 -- -- -- -- -- NOTALLOC
04-- EB------ CBIDERR
04-- E0 -- -- -- -- -- INVREQ 4
04-- E1 -- -- -- -- -- LENGER 5
04-- E5 -- -- -- -- -- SINAL
04-- F1 -- -- -- -- -- TERMERR
06-- D0 -- -- -- -- -- SYSIDERR 3
06-- D1 -- -- -- -- -- ISCINVREQ
06-- D6 -- -- -- -- -- NOTAUTO
06-- E1 -- -- -- -- -- LENGER

Data : 12/06/23 Hora : 12:09:30 Pagina: 16 / 36


Programa Exemplo

EIBFN CÓDIGO EIBR Condições


06-- 0C -- -- -- -- -- NÃO ABERTO
06-- 0D -- -- -- -- -- DESABILITADO
06-- 0F -- -- -- -- -- FIM DO ARQUIVO
06-- 01 -- -- -- -- -- FILENOTFOUND (ou DSIDERR)
06-- 02 -- -- -- -- -- ILÓGICO 1
06-- 08 -- -- -- -- -- INVREQ
06-- 80 -- -- -- -- -- IOERR 1
06-- 81 -- -- -- -- -- NOTFND
06-- 82 -- -- -- -- -- DUPREC
06-- 83 -- -- -- -- -- NOSPACE
06-- 84 -- -- -- -- -- DUPKEY
08-- C0 -- -- -- -- -- QOCUPADO
08-- D0 -- -- -- -- -- SYSIDERR 3
08-- D1 -- -- -- -- -- ISCINVREQ
08-- D6 -- -- -- -- -- NOTAUTO
08-- E1 -- -- -- -- -- LENGER
08-- 01 -- -- -- -- -- QZERO
08-- 02 -- -- -- -- -- QIDERR
08-- 04 -- -- -- -- -- IOERR
08-- 08 -- -- -- -- -- NÃO ABERTO
08-- 10 -- -- -- -- -- NOSPACE
1A-- E0 -- -- -- -- -- INVREQ
10-- D0 -- -- -- -- -- SYSIDERR 3
10-- D1 -- -- -- -- -- ISCINVREQ
10-- D6 -- -- -- -- -- NOTAUTO
10-- E1 -- -- -- -- -- LENGER
10-- E9 -- -- -- -- -- ENVDEFERR
10-- AF -- -- -- -- -- INVREQ
10-- 01 -- -- -- -- -- ENDDATA
10-- 04 -- -- -- -- -- IOERR
10-- 11 -- -- -- -- -- TRANSIDERR
10-- 12 -- -- -- -- -- TERMIDERR
10-- 20 -- -- -- -- -- EXPIRADO
10-- 81 -- -- -- -- -- NOTFND
12-- E1 -- -- -- -- -- LENGER
12-- 32 -- -- -- -- -- ENQBUSY
14-- D6 -- -- -- -- -- NOTAUTO

Data : 12/06/23 Hora : 12:09:30 Pagina: 17 / 36


Programa Exemplo

EIBFN CÓDIGO EIBR Condições


14-- 01 -- -- -- -- -- JIDERR
14-- 02 -- -- -- -- -- INVREQ
14-- 05 -- -- -- -- -- NÃO ABERTO
14-- 06 -- -- -- -- -- LENGER
14-- 07 -- -- -- -- -- IOERR
14-- 09 -- -- -- -- -- NOJBUFSP
16 -- 01 -- -- -- -- -- ROLADO
18 -- 01 -- -- -- -- -- INVREQ
18 -- 04 -- -- -- -- -- MAPFAIL
18 -- 08 -- -- -- -- -- INVMPSZ2 2
4A-- -- -- -- 01 -- -- ERRO
4C-- -- -- -- 0C -- -- FILENOTFOUND (ou DSIDERR)
4C-- -- -- -- 10 -- -- INVREQ
4C-- -- -- -- 11 -- -- IOERR
4C-- -- -- -- 15 -- -- ILÓGICO
4C-- -- -- -- 46 -- -- NOTAUTO
4C-- -- -- -- 53 -- -- FIM
4E-- -- -- -- 01 -- -- ERRO
4E-- -- -- -- 1B -- -- PGMIDERR
4E-- -- -- -- 10 -- -- INVREQ
4E-- -- -- -- 15 -- -- ILÓGICO
4E-- -- -- -- 46 -- -- NOTAUTO
4E-- -- -- -- 53 -- -- FIM
5C-- -- -- -- 10 -- -- INVREQ
5C-- -- -- -- 11 -- -- IOERR
5C-- -- -- -- 15 -- -- ILÓGICO
5C-- -- -- -- 2C -- -- QIDERR
5C-- -- -- -- 46 -- -- NOTAUTO
5C-- -- -- -- 53 -- -- FIM
5E-- -- -- -- 10 -- -- INVREQ
5E-- -- -- -- 5B -- -- TASKIDERR
50 - -- -- -- 1C -- -- TRANSIDERR
50 - -- -- -- 10 -- -- INVREQ
50 - -- -- -- 15 -- -- ILÓGICO
50 - -- -- -- 46 -- -- NOTAUTO
50 - -- -- -- 53 -- -- FIM
52 -- -- -- -- 0B -- -- TERMIDERR
52 -- -- -- -- 01 -- -- ERRO

Data : 12/06/23 Hora : 12:09:30 Pagina: 18 / 36


Programa Exemplo

EIBFN CÓDIGO EIBR Condições

52 -- -- -- -- 10 -- -- INVREQ
52 -- -- -- -- 15 -- -- ILÓGICO
52 -- -- -- -- 53 -- -- FIM
58 -- -- -- -- 10 -- -- INVREQ
58 -- -- -- -- 15 -- -- ILÓGICO
58 -- -- -- -- 35 -- -- SYSIDERR
58 -- -- -- -- 53 -- -- FIM
60 - -- -- -- 10 -- -- INVREQ
60 - -- -- -- 11 -- -- IOERR
60 - -- -- -- 15 -- -- ILÓGICO
60 - -- -- -- 2B -- -- JIDERR
60 - -- -- -- 46 -- -- NOTAUTO
60 - -- -- -- 53 -- -- FIM
70 - -- -- -- 0D -- -- NOTFND
70 - -- -- -- 10 -- -- INVREQ
70 - -- -- -- 46 -- -- NOTAUTO
0A-- D0 -- -- -- -- -- SYSIDERR 3
0A-- D1 -- -- -- -- -- ISCINVREQ
0A-- D6 -- -- -- -- -- NOTAUTO
0A-- E1 -- -- -- -- -- LENGER
0A-- 01 -- -- -- -- -- ITEMERR
0A-- 02 -- -- -- -- -- QIDERR
0A-- 04 -- -- -- -- -- IOERR
0A-- 08 -- -- -- -- -- NOSPACE
0A-- 20 -- -- -- -- -- INVREQ
0C-- E1 -- -- -- -- -- LENGER
0C-- E2 -- -- -- -- -- NOSTG
0E-- D0 -- -- -- -- -- SYSIDERR 3
0E-- D6 -- -- -- -- -- NOTAUTO
0E-- E0 -- -- -- -- -- INVREQ
0E-- 01 -- -- -- -- -- PGMIDERR

Data : 12/06/23 Hora : 12:09:30 Pagina: 19 / 36


Programa Exemplo

Notas®:

Quando ILLOGIC ou IOERR ocorrem durante operações de controle de arquivos,


informações adicionais são fornecidas em EIBRCODE como segue:
-- xx xx xx xx -- error code
Os bytes 1 e 2 indicam o principal componente que detectou o erro; os bytes 3 e 4
indicam um código de erro que pertence a esse componente.
A seguir estão os valores EIBRCODE gerados pelo CICS:
 -- 01 23 90 01 --
Foi utilizado RRN zero ou negativo.
 -- 01 23 90 02 --
Foi usado um valor RRN maior que o valor RRN máximo definido para o arquivo.
 -- 01 23 90 03 --
O arquivo foi redefinido no gerenciador de arquivos depois de aberto.
 -- 01 23 90 04 --
O segmento principal não está definido.
 -- 01 23 90 05 --
Um campo de comprimento variável foi especificado quando o arquivo foi criado
no gerenciador de arquivos, mas não foi o último campo.
 -- 01 23 90 06 --
Um arquivo de registro relativo de comprimento variável foi especificado. Isto é
ignorado no TXSeries for Multiplatforms .
 -- 01 23 90 07 --
Um arquivo com comprimento de registro superior a 65.535 bytes foi aberto.
 -- 01 23 11 08 --
Um campo de comprimento variável foi especificado em um índice. Isto é
ignorado no TXSeries for Multiplatforms .

Data : 12/06/23 Hora : 12:09:30 Pagina: 20 / 36


Programa Exemplo

 -- 01 23 90 09 --
O comprimento do registro especificado em uma gravação ou regravação em um
arquivo de comprimento variável é menor que o keypan máximo do arquivo e
seus índices alternativos.
 -- 01 23 90 0A --
A chave implícita especificada em uma reescrita não era a mesma que a chave lida
em um comando de atualização de leitura.
 -- 01 23 90 0B --
Para um arquivo ESDS de comprimento variável, o comprimento reescrito era
diferente do comprimento lido.
 -- 01 23 90 0C --
Registro não encontrado no arquivo ESDS.
2

Quando INVMPSZ ocorre durante operações do BMS, o byte 3 do EIBRCODE


contém o código do terminal.
3

Quando ocorre SYSIDERR, maiores informações são fornecidas no byte 1 do


EIBRCODE, conforme segue:
 D0 04 -- -- -- --
Modename não foi encontrado ou é inválido.
 D0 08 -- -- -- --
SYSID está fora de serviço.
 D0 0C -- -- -- --
Erro de definição de SYSID.

Data : 12/06/23 Hora : 12:09:30 Pagina: 21 / 36


Programa Exemplo

Quando INVREQ ocorre durante conversações APPC, informações adicionais são


fornecidas no byte 3 do EIBRCODE conforme segue:
 -- -- 00 08 -- --
Comando FREE: A conversa está em estado errado.
 -- -- 00 0C -- --
Comando CONNECT PROCESS: SYNCLVL 2 foi solicitado, mas não pode ser
suportado na conversação que está em uso.
 -- -- 00 14 -- --
Comando SEND: a opção CONFIRM foi especificada, mas a conversação é
SYNCLVL 0.
 -- -- 00 20 -- --
Um comando inválido foi emitido para o tipo de conversação APPC que está em
uso.
5

Quando LENGERR ocorre durante operações de controle de terminal,


informações adicionais são fornecidas no byte 1 do EIBRCODE conforme segue:
 E1 00 -- -- -- --
Os dados de entrada são muito longos e foram truncados.
 E1 04 -- -- -- --
Nos comandos de saída, um (FROM)LENGTH inválido foi especificado, menor
que zero ou maior que 32767.
 E1 08 -- -- -- --
Nos comandos de entrada, foi especificado um (TO)LENGTH inválido maior que
32767.

Data : 12/06/23 Hora : 12:09:30 Pagina: 22 / 36


Programa Exemplo

EIBRECV

Este campo EIB indica que o programa aplicativo deve continuar recebendo dados da
instalação executando comandos RECEIVE ( X'FF' ).

Para COBOL: PIC X(1)

Para C ou C++ : cics_char_t eibrecv;

Para PL/I: CHAR(1)

EIBREQID

Este campo EIB contém o identificador de solicitação designado a um comando de controle


de intervalo pelo CICS; este campo não é usado quando um identificador de solicitação é
especificado no programa aplicativo.

Para COBOL: PIC X(8)

Para C ou C++ : cics_char_t eibreqid [8];

Para PL/I: CHAR(8)

Data : 12/06/23 Hora : 12:09:30 Pagina: 23 / 36


Programa Exemplo

EIBRESP

Este campo EIB contém um número binário de 32 bits que corresponde à condição
ocorrida. Esses números estão listados na Tabela 4 (em decimal) para as condições que
podem ocorrer em solicitações locais durante a execução dos comandos descritos
em Referência de comandos da API do CICS .

Para COBOL: PIC S9(8) COMP

Para C ou C++ : cics_slong_t eibresp;


Consulte Tipos de dados usados em C ou C++ .
Para PL/I: COMPARTIMENTO FIXO(31)

Tabela 4. Valores de RESP em decimais

dezembro Feitiço Doença


00 X'00' NORMAL
01 X'01' ERRO
11 X'0B' TERMIDERR
12 X'0C' FILENOTFOUND (ou DSIDERR)
13 X'0D' NOTFND
14 X'0E' DUPREC
15 X'0F' DUPKEY
16 X'10' INVREQ
17 X'11' IOERR
18 X'12' NOSPACE
19 X'13' NÃO ABERTO
20 X'14' FIM DO ARQUIVO
21 X'15' ILÓGICO
22 X'16' LENGER
23 X'17' QZERO

Data : 12/06/23 Hora : 12:09:30 Pagina: 24 / 36


Programa Exemplo

dezembro Feitiço Doença


24 X'18' SINAL
25 X'19' QOCUPADO
26 X'1A' ITEMERR
27 X'1B' PGMIDERR
28 X'1C' TRANSIDERR
29 X'1D' ENDDATA
31 X'1F' EXPIRADO
36 X'24' MAPFAIL
38 X'26' INVMPSZ
42 X'2A' NOSTG
43 X'2B' JIDERR
44 X'2C' QIDERR
45 X'2D' NOJBUFSP
53 X'35' SYSIDERR
54 X'36' ISCINVREQ
55 X'37' ENQBUSY
56 X'38' ENVDEFERR
59 X'3B' SYSBUSY
61 X'3D' NOTALLOC
62 X'3E' CBIDERR
69 X'45' USERIDERR
70 X'46' NOTAUTO
81 X'51' TERMERR
82 X'52' ROLADO
83 X'53' FIM
84 X'54' DESABILITADO
91 X'5B' TASKIDERR
110 X'6E' CONTAINEERR
112 X'70' TOKENERR
122 X'7A' CANALIZADOR
123 X'7B' CCSIDERR

Data : 12/06/23 Hora : 12:09:30 Pagina: 25 / 36


Programa Exemplo

EIBRESP2

Este campo BEI contém informações mais detalhadas que podem ajudar a explicar
porque ocorreu a condição indicada pelo EIBRESP. Para TXSeries for Multiplatforms ,
este campo contém valores significativos apenas para comandos SET. Os valores
relevantes são documentados com cada comando conforme aplicável.

Para COBOL: PIC S9(8) COMP

Para C ou C++ : cics_slong_t eibresp2;


Consulte Tipos de dados usados em C ou C++ .
Para PL/I: COMPARTIMENTO FIXO(31)
A Tabela 5 apresenta, em termos gerais, o significado dos valores RESP2 utilizados
pela FEPI. Esses valores são usados na área EVENTVALUE dos registros da fila de
dados transitórios do CICS e retornados pela opção RESP2 dos comandos do
CICS. Para obter detalhes sobre as condições de erro e valores RESP2 relacionados para
cada comando CICS, consulte as definições de comando CICS

Tabela 5. Valores de RESP2

Valor Descrição
O comando INQUIRE START, NEXT ou END não é válido aqui:
COMEÇAR
A navegação deste tipo de recurso já está em andamento
1PRÓXIMO
INQUIRE START não emitido
FIM
INQUIRE START não emitido.

Data : 12/06/23 Hora : 12:09:30 Pagina: 26 / 36


Programa Exemplo

Valor Descrição
2Todas as definições de recursos foram recuperadas.
10Comando ignorado pela saída do usuário.
11FEPI não instalado ou não ativo.
12CICS sendo encerrado, comando não permitido.
13FEPI não disponível.
14FEPI ocupado ou não consegue obter armazenamento.
15Comando desconhecido.
16Problema interno.
17A FEPI não pode obter armazenamento para parâmetros de saída do usuário.
18O comando falhou devido a uma ação do operador ou do sistema.
30Nome da POOL desconhecido.
31Nome POOL fora de serviço.
32Nome de ALVO desconhecido.
33Nome TARGET fora de serviço.
34Nome de TARGET obrigatório, mas não especificado.
O nome do pool não é adequado para conversas temporárias. Possui
35CONTENTION(LOSE) ou INITIALDATA(INBOUND) mas nenhum
manipulador de início de sessão.
36Nenhuma sessão adequada disponível e em serviço.
[FROM]O valor FLENGTH é negativo, zero ou maior que o valor
40
MAXFLENGTH para o pool.
41Valor ESCAPE inválido.
50Dados de entrada com 'colchete de início' a serem recebidos.
51O identificador de atenção (AID) não é válido.
52A posição do cursor não é válida.
53Os pontos de código em dados formatados não são válidos.
54Atribuir posições ou valores nos dados de envio não é válido.
A sequência de escape do pressionamento de tecla no envio de dados não é
55
válida.
A validação do campo (preenchimento obrigatório, entrada obrigatória,
56
acionamento) falhou.
57A entrada é inibida.
58Falha no ENVIO do VTAM.
59Regras de dados DBCS violadas.
Valor MAXFLENGTH negativo ou maior que o valor MAXFLENGTH do
60
conjunto.
61Valor de FLENGTH negativo ou maior que 128.
62O nome TRANSID não é válido.

Data : 12/06/23 Hora : 12:09:30 Pagina: 27 / 36


Programa Exemplo

Valor Descrição
63O nome TERMID não é válido.
70Valor FIELDLOC ou FIELDNUM negativo ou inválido.
71Falha ao receber VTAM.
O processamento RECEIVE FORMATTED encontrou dados inválidos ou
inesperados ao interpretar o fluxo de dados 3270 para um código de comando
72
WRITE, ERASE/WRITE, ERASE/WRITE ALTERNATE ou WRITE
STRUCTURED FIELD.
80Valor de CONTROLE inválido.
VALUE inválido: omitido quando necessário; incluído quando não
81
necessário; ou inadequado para o CONTROLE especificado.
Opção SENSEDATA omitida quando necessária ou especificada quando não
82
necessária.
90O tipo de resposta definido não correspondeu ao que era necessário.
Somente NORMALRESP ou EXCEPTRESP são permitidos neste momento da
91
conversa.
92A resposta ao STSN SET não foi positiva.
93Somente STSN é permitido neste momento da conversa.
Somente STSN ou NORMALRESP são permitidos neste momento da
94
conversa.
95Valor CONTROL não permitido neste momento da conversa.
100Não autorizado a emitir comando.
110Valor SERVSTATUS inválido.
111Valor ACQSTATUS inválido.
115Nome da POOL desconhecido.
116Nome de ALVO desconhecido.
117Nome do NÓ desconhecido.
Conexão desconhecida (nomes de TARGET e NODE conhecidos, mas não em
118
um POOL comum).
A solicitação falhou para um ou mais itens da lista. Erros detalhados relatados à
119
fila TD para o monitor tratar.
130Valor TARGETNUM negativo, zero ou inválido.
131Valor NODENUM negativo, zero ou inválido.
132Valor POOLNUM negativo, zero ou inválido.
140Valor DEVICE inválido.
141Valor de CONTENÇÃO inválido.
142Valor INICIALDATA inválido.
143Valor UNSOLDATACK inválido.
144Valor MSGJRNL inválido.

Data : 12/06/23 Hora : 12:09:30 Pagina: 28 / 36


Programa Exemplo

Valor Descrição
145Valor DEVICE não suportado.
146Valor MSGJRNL não suportado.
150Valor FORMAT inválido ou inadequado para o dispositivo especificado.
153Nome STSN inválido ou STSN inadequado para o dispositivo especificado.
154O valor BEGINSESSION não é válido.
155Valor UNSOLDATA inválido.
156Valor EXCEPTIONQ inválido.
157O valor FJOURNALNUM não é válido.
158Valor MAXFLENGTH inválido.
159O nome ENDSESSION não é válido.
160O nome PROPERTYSET não é válido.
162O nome do POOL não é válido.
163O nome do NODE não é válido.
164Nome de TARGET inválido.
167Nome APPL inválido.
170O nome PROPERTYSET já existe.
171Nome PROPERTYSET desconhecido.
172O nome POOL já existe.
173O nome NODE já existe no POOL especificado.
174O nome TARGET já existe no POOL especificado.
175A conexão já existe.
176Falha no NÓ ABERTO do VTAM.
177VTAM APPLID já conhecido.
178O valor FJOURNALNAME não é válido.
179O nome NODE já existe em outro POOL.
180Limite de TARGET excedido para o POOL especificado
182Sessão não vinculada, irrecuperável.
183Sessão não vinculada, recuperável.
184Sessão desvinculada, erro.
185Sessão desvinculada, vinculação chegando.
186Sessão não vinculada.
187Terminal perdido.
188LIMPEZA, anormal.
189LIMPAR.
190Erro de DESBIND.
191Erro de CONFIGURAÇÃO.
192Erro SSCP.
193Erro SLU.

Data : 12/06/23 Hora : 12:09:30 Pagina: 29 / 36


Programa Exemplo

Valor Descrição
194Erro PLU.
195Erro de BIND.
196Erro CINIT.
197Erro REQSESS.
198REQSESS inibido.
199REQSESS não disponível.
210Opção não válida para SLU P.
211Opção não válida para SLU 2.
212Formato de dados incorreto para conversação.
213O comando expirou.
214CICS sendo encerrado, a conversação deve ser encerrada.
215Sessão perdida.
216Ocorreu um erro no comando SEND anterior.
220Comando SEND ou CONVERSE não permitido neste momento da conversa.
221Comando RECEIVE não permitido neste momento da conversa.
223Comando START não permitido neste momento da conversa.
224Somente ISSUE ou FREE são permitidos neste momento da conversa.
230Comando SNA CLEAR recebido.
231Comando SNA CANCEL recebido.
232Comando SNA CHASE recebido.
233Resposta de exceção recebida.
234Solicitação de exceção recebida.
240ID de conversa desconhecido ou não pertencente à tarefa.
241Valor de TIMEOUT negativo ou inválido.
250Passticket não construído com sucesso.
251Interface CICS ESM não inicializada.
252Código de retorno desconhecido no ESMRESP do ESM.
253Resposta não reconhecida dos módulos de segurança CICS.
254Função indisponível.
259Nenhum usuário conectado.

EIBRLDBK

Data : 12/06/23 Hora : 12:09:30 Pagina: 30 / 36


Programa Exemplo

Este campo EIB indica que a transação remota enviou SYNCPOINT ROLLBACK em
resposta a uma solicitação SYNCPOINT ( X'FF' ). A transação que emitiu o comando
SYNCPOINT foi revertida.

Para COBOL: PIC X(1)

Para C ou C++ : cics_char_t eibrdbk;

Para PL/I: CHAR(1)

EIBRSRCE

Este campo EIB contém o identificador simbólico do recurso que está sendo acessado
pelo último comando da API a ser emitido pela tarefa. Consulte a Tabela
6 . ( n representa o número de caracteres.)

Tabela 6. EIBRSRCE que especifica o recurso que está sendo


acessado

Tipo de comando Recurso n


Controle de armazenamento
Nome da fila TS 8
temporário
Identificador de terminal ou identificador de
Controle de terminal 4
conversação APPC (ver nota)
Controle de dados transitórios Nome da fila TD 4

Observação:

Data : 12/06/23 Hora : 12:09:30 Pagina: 31 / 36


Programa Exemplo

 No TXSeries for Multiplatforms , os identificadores de conversação APPC não podem


ser impressos.
 As filas de armazenamento temporário com mais de oito caracteres são truncadas para 8
caracteres.

Para COBOL: PIC X(8)

Para C ou C++ : cics_char_t eibrsrce [8];

Para PL/I: CHAR(8)

EIBSIG

Este campo EIB indica que o interlocutor emitiu um comando ISSUE SIGNAL
( X'FF' ).

Para COBOL: PIC X(1)

Para C ou C++ : cics_char_t eibsig;

Para PL/I: CHAR(1)

EIBSYNC

Este campo EIB indica que o ponto de sincronização do CICS está em andamento e que o
aplicativo deve emitir um comando SYNCPOINT.

Para COBOL: PIC X(1)

Data : 12/06/23 Hora : 12:09:30 Pagina: 32 / 36


Programa Exemplo

Para C ou C++ : cics_char_t eibsync;

Para PL/I: CHAR(1)

EIBSYNRB

Este campo EIB indica que o ponto de sincronização do CICS está em andamento e que
o programa aplicativo deve emitir um comando SYNCPOINT ROLLBACK
( X'FF' ). Este campo é configurado apenas em programas aplicativos que mantêm uma
conversa em um link APPC.

Para COBOL: PIC X(1)

Para C ou C++ : cics_char_t eibsynrb;

Para PL/I: CHAR(1)

EIBTASKN

Este campo EIB contém o número da tarefa designado à tarefa pelo CICS. Esse número
aparece nas entradas de rastreamento geradas enquanto a tarefa está sob controle.

Para COBOL: PIC S9(7) COMP-3

Para C ou C++ : cics_char_t eibtaskn [4];

Para PL/I: DEC FIXA(7,0)

Data : 12/06/23 Hora : 12:09:30 Pagina: 33 / 36


Programa Exemplo

EIBTIME

Este campo EIB contém a hora em que a tarefa é iniciada (este campo é atualizado pelo
comando ASKTIME). A hora está no formato decimal compactado (0HHMMSS+).

Para COBOL: PIC S9(7) COMP-3

Para C ou C++ : cics_char_t eibtime [4];

Para PL/I: DEC FIXA(7,0)

Data : 12/06/23 Hora : 12:09:30 Pagina: 34 / 36


Programa Exemplo

EIBTRMID

Este campo EIB contém o nome da instalação principal associada à tarefa. Para uma transação
de back-end, é o identificador de conversa (CONVID). Este nome deve ser adquirido se o
programa indicar explicitamente o CONVID da instalação principal.

Para COBOL: PIC X(4)

Para C ou C++ : cics_char_t eibtrmid [4];

Para PL/I: CHAR(4)

EIBTRNID

Este campo EIB contém o identificador simbólico da transação da tarefa.

Para COBOL: PIC X(4)

Para C ou C++ : cics_char_t eibtrnid [4];

Para PL/I: CHAR(4)

Fonte

IBM Reference

Data : 12/06/23 Hora : 12:09:30 Pagina: 35 / 36


Programa Exemplo

https://www.ibm.com/docs/en/txseries/9.1?
topic=SSAL2T_9.1.0/com.ibm.cics.tx.doc/reference/
r_eib_fields.htm

Revisão

Autor Data Comentario

Vagner Bellacosa 12/06/2023 Conversão para PDF

Vagner Bellacosa 05-09-2023 Republicação do manual

Vagner Bellacosa 06-09-2023 Correção de nomes invertidos

Data : 12/06/23 Hora : 12:09:30 Pagina: 36 / 36

Você também pode gostar