CICS Introducao
CICS Introducao
CICS Introducao
Introduo
NOV/2004
SUMRIO
1 O que o CICS....................................................................................................................................4
2 Ambiente Cics/Mainframe em micros................................................................................................4
3 Programas e seus tipos.......................................................................................................................5
3.1 Quanto ao dilogo com o operador (programas on-line) ....................................................................5
3.2 Quanto ao reuso..........................................................................................................................................5
3.3 Transaes X Programas X Processos X Task (Tarefas) X Threads ......................................................6
123445...............................................................................................................................24
NOME
JUCA SILVA.......................................................................................................................24
VALOR
123,42..................................................................................................................................24
17 - Atributos de um campo....................................................................................................................25
2
21 TS e TD............................................................................................................................................47
TRANSIENT DATA.......................................................................................................................................48
TEMPORARY STORAGE ...........................................................................................................................50
1 O que o CICS
. Customer Information Control System
. Nasceu pois o(s) sistema(s) operacional(is) IBM so batch-oriented
. um programa de controle para aplicativos on-line
. Gerencia os recursos do sistema demandados por esses aplicativos
. Plataformas que dispem de CICS :
mainframes,
micros*,
servidores* (OS/2, AIX, Windows NT, AS/400, HP-UX, Sun Solaris, etc),
clientes* (DOS, OS/2, AIX, Sun, Apple Mac, and Windows)
* = SEM emulao
. Existem emuladores que funcionam em baixa plataforma
. Suporta SAM, VSAM, DB2, ORACLE, SQL/DS, DL/I, IMS/DB ...
. (IMS/DC)
Base DB2
Arq Vsam
Sistema Operacional
Ncleo
...................
VTAM
DB2
VSAM
Transaes
Job
batch
Job
batch
CICS
5 LOCKS
Recurso utilizado para determinar utilizao exclusiva ou compartilhada de um objeto.
Exemplos de objetos :
Arquivos
Registros
Campos de registros
Tabelas, colunas
Perifrico
Controle : pode ser efetuado tanto pelo sistema operacional ou outros componentes
(mtodos de acesso, SGBDs, CICS, aplicativos).
Ex.:
DISP=OLD ou DISP=SHR
ON-LINE
Demanda aleatria
Programa tem uma nica cpia da
parte de cdigo (Procedure Division) e
n cpias da parte de reas (WorkingStorage Section)
Arquivos abertos e fechados
MANUALMENTE (sob certo
aspecto) ou automaticamente pelo
CICS (sob outro aspecto)
Programas todos compartilham O
address space do CICS
Obs.: normalmente existem diversos
address spaces com diversos CICS
Mais acesso direto, menos acesso
sequencial
7 Uso do CICS
COBOL = programao COMMAND LEVEL
(CSP) / (Visual Age)
Assembler = programao MACRO LEVEL
Para desenvolver um programa / aplicao :
Avisar responsveis pela manuteno das tabelas do CICS o nome da nova
transao e respectivo programa (inicial)
Avisar responsveis pela manuteno das tabelas do CICS o nome dos arquivos
novos (se houver) que o programa ir usar
Preparar e catalogar os mapas
Preparar e catalogar o programa
Testar o programa, provavelmente usando as transaes CEMT, CEDF, CECI
10
(PR-COMPILADOR)
Mensagens
(erros / resultados da
anlise dos comandos)
COMPILADOR COBOL
NORMAL
Mensagens
(erros / resultados da
compilao)
PROGRAMA OBJETO
LINKEDITOR
Mensagens
(erros / resultados da
linkedio)
PROGRAMA EXECUTVEL
11
(PR-COMPILADOR) CICS
Mensagens
(erros / resultados da
anlise dos comandos)
(PR-COMPILADOR) DB2
Mensagens
(erros / resultados da
anlise dos comandos)
Mensagens
(erros / resultados da
compilao)
PROGRAMA OBJETO
LINKEDITOR
Mensagens
(erros / resultados da
linkedio)
PROGRAMA EXECUTVEL
12
Programa 1
Execute Interface Program
(EIP)
Programa 2
Sistema
Operacional
......
Programa n
Servios
Resultados
Servios
Resultados
Servios
Resultados
Servios
Resultados
13
01
01
01
WS-CONSTANTS.
05 WS-PROGRAM-ID
05 WS-TRANS-ID
05 WS-MAP-NAME
05 WS-MAPSET-NAME
05 WS-COMMAREA-LENGTH
05 WS-MESSAGE-LENGTH
05 WS-ERRMSG
VALUE 'NESA TRANSACTION
05 WS-ENDMSG
VALUE 'NESA TRANSACTION
WS-COMMAREA.
05 WS-CA-PGMID
WS-SWITCHES.
05 WS-FIRST-TIME-SW
88 FIRST-TIME
88 NOT-FIRST-TIME
05 WS-RETURN-TO-TRAN-SW
88 RETURN-TO-TRAN
88 END-TRAN
WS-HOLD-AREAS.
PIC X(08)
PIC X(04)
PIC X(08)
PIC X(08)
PIC S9(04)
PIC S9(04)
PIC X(40)
TERMINATED
PIC X(22)
ENDED'.
VALUE 'DCNESAMP'.
VALUE 'NESA'.
VALUE 'DCNESAM '.
VALUE 'DCNESAS '.
COMP VALUE +8 .
COMP VALUE +79.
PIC X(08)
VALUE SPACES.
PIC X(01)
VALUE
VALUE
VALUE
VALUE
VALUE
VALUE
PIC X(01)
DUE TO ERROR'.
'Y'.
'Y'.
'N'.
'Y'.
'Y'.
'N'.
14
05 WS-MESSAGE
05 WS-ABSTIME
05 WS-SYSDATE
05 WS-SYSTIME
05 WS-EIBDATE
05 WS-RESP
EJECT
COPY DFHAID.
EJECT
COPY DCNESASD.
EJECT
LINKAGE SECTION.
PIC
PIC
PIC
PIC
PIC
PIC
X(79)
S9(16)
X(08)
X(08)
9(05)
S9(08)
VALUE SPACES.
COMP.
VALUE SPACES.
VALUE SPACES.
VALUE ZERO.
COMP VALUE ZERO.
01 DFHCOMMAREA
PIC X(08).
EJECT
PROCEDURE DIVISION.
0000-PROGRAM-DCNESAMP.
PERFORM 1000-INITIALIZE.
IF NOT-FIRST-TIME
PERFORM 2000-RECEIVE-MAP.
PERFORM 3000-SEND-MAP.
IF RETURN-TO-TRAN
PERFORM 8000-RETURN
ELSE
PERFORM 9000-END-TRANSACTION.
GOBACK.
1000-INITIALIZE.
EXEC CICS HANDLE CONDITION
ERROR(9200-HANDLE-ERROR)
END-EXEC.
IF EIBCALEN = 0
MOVE LOW-VALUES TO DCNESAMO
MOVE WS-PROGRAM-ID TO WS-CA-PGMID
ELSE
IF EIBCALEN = WS-COMMAREA-LENGTH
MOVE 'N' TO WS-FIRST-TIME-SW
MOVE DFHCOMMAREA TO WS-COMMAREA
ELSE
PERFORM 9200-HANDLE-ERROR.
EJECT
2000-RECEIVE-MAP.
MOVE LOW-VALUES TO DCNESAMI.
EXEC CICS RECEIVE MAP(WS-MAP-NAME)
MAPSET(WS-MAPSET-NAME)
INTO(DCNESAMI)
RESP(WS-RESP)
END-EXEC.
IF ENDI = 'END' OR 'end'
MOVE 'N' TO WS-RETURN-TO-TRAN-SW.
3000-SEND-MAP.
PERFORM 3100-PROCESS-EIBAID.
EXEC CICS ASKTIME
ABSTIME(WS-ABSTIME)
RESP(WS-RESP)
15
END-EXEC.
EXEC CICS FORMATTIME
ABSTIME(WS-ABSTIME)
MMDDYY(WS-SYSDATE)
DATESEP('/')
TIME(WS-SYSTIME)
TIMESEP(':')
RESP(WS-RESP)
END-EXEC.
MOVE WS-SYSDATE TO DATEO.
MOVE WS-SYSTIME TO TIMEO.
MOVE EIBDATE TO WS-EIBDATE.
MOVE WS-EIBDATE TO DATEJO.
MOVE EIBTRMID TO TERMIDO.
IF FIRST-TIME OR EIBAID = DFHCLEAR OR DFHCLRP
EXEC CICS SEND MAP(WS-MAP-NAME)
MAPSET(WS-MAPSET-NAME)
FROM(DCNESAMO)
ERASE FREEKB
END-EXEC
ELSE
EXEC CICS SEND MAP(WS-MAP-NAME)
MAPSET(WS-MAPSET-NAME)
FROM(DCNESAMO)
ERASEAUP FREEKB DATAONLY
END-EXEC.
EJECT
3100-PROCESS-EIBAID.
IF EIBAID = DFHNULL MOVE 'NULL ' TO KEYO
ELSE IF EIBAID = DFHENTER MOVE 'ENTER' TO KEYO
ELSE IF EIBAID = DFHCLEAR MOVE 'CLEAR' TO KEYO
ELSE IF EIBAID = DFHCLRP MOVE 'CLRP ' TO KEYO
ELSE IF EIBAID = DFHPEN
MOVE 'PEN ' TO KEYO
ELSE IF EIBAID = DFHOPID MOVE 'OPID ' TO KEYO
ELSE IF EIBAID = DFHMSRE MOVE 'MSRE ' TO KEYO
ELSE IF EIBAID = DFHSTRF MOVE 'STRF ' TO KEYO
ELSE IF EIBAID = DFHTRIG MOVE 'TRIG ' TO KEYO
ELSE IF EIBAID = DFHPA1
MOVE 'PA1 ' TO KEYO
ELSE IF EIBAID = DFHPA2
MOVE 'PA2 ' TO KEYO
ELSE IF EIBAID = DFHPA3
MOVE 'PA3 ' TO KEYO
ELSE IF EIBAID = DFHPF1
MOVE 'PF1 ' TO KEYO
ELSE IF EIBAID = DFHPF2
MOVE 'PF2 ' TO KEYO
ELSE IF EIBAID = DFHPF3
MOVE 'PF3 ' TO KEYO
ELSE IF EIBAID = DFHPF4
MOVE 'PF4 ' TO KEYO
ELSE IF EIBAID = DFHPF5
MOVE 'PF5 ' TO KEYO
ELSE IF EIBAID = DFHPF6
MOVE 'PF6 ' TO KEYO
ELSE IF EIBAID = DFHPF7
MOVE 'PF7 ' TO KEYO
ELSE IF EIBAID = DFHPF8
MOVE 'PF8 ' TO KEYO
ELSE IF EIBAID = DFHPF9
MOVE 'PF9 ' TO KEYO
ELSE IF EIBAID = DFHPF10 MOVE 'PF10 ' TO KEYO
ELSE IF EIBAID = DFHPF11 MOVE 'PF11 ' TO KEYO
ELSE IF EIBAID = DFHPF12 MOVE 'PF12 ' TO KEYO
ELSE IF EIBAID = DFHPF13 MOVE 'PF13 ' TO KEYO
ELSE IF EIBAID = DFHPF14 MOVE 'PF14 ' TO KEYO
ELSE IF EIBAID = DFHPF15 MOVE 'PF15 ' TO KEYO
ELSE IF EIBAID = DFHPF16 MOVE 'PF16 ' TO KEYO
16
'
'
'
'
'
'
'
'
TO
TO
TO
TO
TO
TO
TO
TO
KEYO
KEYO
KEYO
KEYO
KEYO
KEYO
KEYO
KEYO
9000-END-TRANSACTION.
MOVE WS-ENDMSG TO WS-MESSAGE.
PERFORM 9900-TERMINATE.
9200-HANDLE-ERROR.
MOVE WS-ERRMSG TO WS-MESSAGE.
PERFORM 9900-TERMINATE.
9900-TERMINATE.
EXEC CICS SEND
FROM(WS-MESSAGE)
LENGTH(WS-MESSAGE-LENGTH)
ERASE
END-EXEC.
EXEC CICS SEND CONTROL
FREEKB
END-EXEC.
EXEC CICS RETURN
END-EXEC.
17
+
+
+
+
+
+
+
+
+
+
+
+
18
*
1
2
3
4
5
6
7
8
12345678901234567890123456789012345678901234567890123456789012345678901234567890
01
02
03
04
05
Date:
06
07
Time:
08
Termid:
09
Last Key:
10
11
12
13
14
15
16
17
18
19
20
21
22 Enter END to Terminate
23
24
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
12345678901234567890123456789012345678901234567890123456789012345678901234567890
*
1
2
3
4
5
6
7
8
19
AREAS
TABELAS
Programas / transaes :
PCT (Program Control Table) = tem a relao das transaes vlidas; para cada transao tem como par o nome do
programa associado , que deve ser carregado quando a transao for chamada
PPT (Processing Program Table) = tem a relao de todos os programas e mapas BMS; usada pelo CICS para controlar
o que est carregado na memria ou no, o que precisa de newcopy, etc
Arquivos arquivos utilizados pelos aplicativos :
FCT (File Control Table) = contm a relao de todos os arquivos que so usados pelo (ou sob CICS) , por todas as
transaes / programas; ela indica quais as operaes vlidas (READ ONLY, DELETE, UPDATE, etc)
Terminais utilizados pelos aplicativos :
TCT (Terminal Control Table)
Recursos Transient Data :
DCT (Destination Control Table)
20
Obs.: A exata (ou no) utilizao dos recursos 3270 no PC depende do emulador e do
teclado utilizado.
21
22
23
16 - Campos de tela
Conceito introduzido pela famlia 3270.
Cada campo tem uma posio inicial e atributos, tais como intensidade, cor,
possibilidade de receber dados digitados ou no. Exemplo :
COMPRAS
CLIENTE
123445
NOME
JUCA SILVA
VALOR
123,42
24
17 - Atributos de um campo
O atributo de um campo indica caractersticas de proteo, modificao e intensidade,
e o primeiro byte do campo.
Gasta 1 byte, mas no tem contedo para exibio.
Proteo (usa 2 bits)
Unprotected
O operador pode digitar qualquer dados no campo.
Numeric-only
O operador pode digitar 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, ponto (separador
decimal), hfen (negativo) ou DUP key. Caso contrrio, o teclado trava
(keyboard locked).
Protected
O teclado trava (keyboard locked) se o operador tentar teclar qualquer
coisa.
Autoskip
O operador tambm no pode teclar nada. A diferena (em relao ao
protected) no comportamento do cursor.
Sempre que o cursor est sendo avanado para o prximo campo (seja
porque o campo anterior foi digitado at o fim e seu tamanho esgotou-se,
ou porque foi pressionado o field advance (TAB), o cursor pula o(s)
campo(s) com atributo de autoskip, em direo ao prximo campo; ele
fica posicionado no primeiro campo que encontrar com atributo
unprotected ou numeric-only.
Modificao (usa 1 bit)
Bit denominado MDT (Modified Data Tag).
Indica se o campo foi modificado ou no.
Setado automaticamente pelo hardware (do terminal) se o operador teclar algo no
campo.
Importante para o READ : em geral, se o campo foi modificado, faz parte do stream
enviado ao host. Se no foi modificado, no enviado.
Pode ser setado pelo programa antes do SEND : se for, vai ser enviado do terminal
para o programa, mesmo que no tenha sido modificado.
Intensidade (usa 2 bits)
Normal intensity = Brilho normal.
Bright = Brilho maior (highlight).
Nondisplay = O campo no exibido, mesmo que tenha dados (no buffer).
25
C1
F0
41
F1
Blinking
Atributo : extended highlighting
SA
26
STRING = Inicia-se sempre pela indicao de SF (Start Field) ou SFE (Start Field
Extended) ; exemplo :
1D
F0
D4
M
C5
E
D5
N
E4
U
27
Notes
erase/write.
WCC (destrava o teclado, no soa alarme, no reseta os MDTs.
3
4-5
X'11'
X'40D6'
6
7
8-17
X'1D'
X'F8'
'Dados Auto'
18-20
21
22
23-34
X'11C260'
X'1D'
X'F0'
'Empregado :'
SBA para indicar buffer position na linha 3 coluna 1 para o segundo campo
SF para iniciar a definio do segundo campo
Byte com atributos do segundo campo : autoskip, intensidade normal, MDT off.
Contedo (a ser exibido) do campo
35
X'29'
36
37
38
39
X'02'
X'41'
X'F4'
X'C0'
40
X'50'
41
X'13'
SFE para iniciar quarto campo (precisa SFE ao invs de SF para poder especificar atributos
estendidos) .
Este campo comea imediatamente aps o anterior; por isso no necessrio um SBA
Quantidade de tipos de atributo especificados (2 : field outlining and field attributes).
Indica tipo de atributo estendido highlighting.
Valor de highlighting que indica sublinhado
Indica tipo de atributo de atributos de campo
Valor de atributos de campo que indica numeric-only, normal intensity, MDT off. Se houvesse contedo
inicial para este campo, ele apareceria em seguida (mas no h contedo inicial neste caso)
Insert cursor (IC) : lndica ao 3270 para colocar o cursor na posio corrente do cursor. Como se deseja
que ele fique sobre o incio do primeiro campo que o operador deve preencher (e ele est nessa
posio), indica-se o insert cursor.
42-44 X'11C2F4'
SBA para posicionar na linha 3 coluna 21, para deixar as 6 posies necessrias para o cdigo do
empregado. O incio da constante "Chapa " indica o final do campo de cdigo do empregado; portanto,
o usurio ser alertado caso tente digitar alm desse limite.
45
X'1D'
46
X'F0'
47-55 ' Chapa :'
56
57
58-59
60-61
SFE (o prximo campo outro campo de entrada, where we want field outlining, so we use SFE again).
Indicador de quantidade de tipos de atributo
Indica extended highlighting + underscoring.
Indica unprotected, normal intensity, MDT off.
X'29'
X'02'
X'41F4'
X'C040'
62-64 X'11C3C7'
SBA para reposicionar no linha 3 coluna 40, deixando 8 posies para chapa.
65
X'1D'
66
X'F0'
67-74 ' U.F. :'
X'290241F4C0
SFE para campo de UF (atributos idnticos aos do campo de chapa)
40'
Contedo inicial do campo de UF. Poderia ser omitido, mas seria necessrio um SBA para posicionar
81-82 X'0000'
no fim do campo.
75-80
83
X'1D'
84
X'F0'
SF. ltimo campo; indica fim do anterior para que no seja possvel digitar mais de 2 posies no
campo de UF. Sem contedo inicial, somente com atributo, para servir de (campo) indicador de fim de
campos.
Indica atributos de autoskip, normal intensity, MDT off.
28
Contents
X'7D'
X'C3C5'
X'11'
X'C26E'
'123456'
X'11C3D1'
X'1D'
'ABC987'
Notes
AID (neste caso = ENTER key)
Endereo do Cursor : linha 3, coluna 38 (posio do cursor aps digitado o ltimo dado)
SBA, indicando que a seguir vem um buffer address
Endereo da linha 3, coluna 15 (posio inicial do prximo campo employee no)
Campo de employee no, onde foi digitado 123456
SBA indicando buffer address da linha 3, coluna 32
SF, indicando outro campo de entrada (o de plate no nro placa a seguir)
Campo de tag no, onde foi digitado ABC987 (o campo tem 8 bytes, mas foram
digitados somente 6)
O terceiro campo (state) no aparece pois no foi digitado nada nele
29
20 BMS
BMS = Basic Mapping Support
Mapa BMS
Declarao dos dados que compem as telas.
Ele preparado separadamente do programa, o que permite que haja independncia da aplicao em
relao ao formato da tela.
Existem dois tipos de mapas :
MAPA FSICO
Programa Assembler , catalogado em uma load library.
Contm os dados que vo ser enviados do programa para a tela e da tela para o programa (imagem de
buffer) .
MAPA SIMBLICO ou LGICO
Descrio / declarao de variveis a serem usadas nos programas.
Se for em Cobol, tem um conjunto de declaraes em Cobol, para que possam ser usadas via COPY
quando o programa for compilado.
Denomina-se MAPSET a um grupo de mapas fsicos, linkeditados em conjunto.
Os mapas podem ser criados atravs de :
BMS = Programa (com macros) Assembler
Outros softwares, que geram o mesmo que o BMS gera. Ex.: SDF II (Screen Definition
Facility II)
As 3 macros Assembler do BMS so :
DFHMDF (Data Facility Hierarchical Map Data Field): Define um campo (individualmente) na tela.
DFHMDI (Data Facility Hierarchical Map Definition Information): Define um mapa como um
conjunto de campos.
DFHMSD (Data Facility Hierarchical Map Set Definition): Agrupa um conjunto de mapas como um
MAPSET.
30
31
Sintaxe :
Fld
DFHMDF
ATTRB=(|ASKIP|BRT|DET|DRK|FSET|IC|NORM|NUM|PROT|UNPROT|)
CASE=MIXED
COLOR=|color|BASE|
GINIT=
GRPNAME=group-name
HILIGHT=(|OFF|BLINK|REVERSE|UNDERLINE|)
INITIAL='conteudo'
JUSTIFY=(|LEFT|RIGHT][,|BLANK|ZERO|]
LENGTH=number
OCCURS=number
OUTLINE=BOX[,|LEFT|RIGHT|OVER|UNDER|]
PICIN='value'
PICOUT=|'value'|NO|
POS=|number|(line,column)|
PS=psid
SOSI=YES
TRANSP=|YES|NO|
XINIT=hex-data
VALIDN=(|MUSTFILL|MUSTENTER|TRIGGER|USEREXIT|)
DEFAULT
PARMETROS
ATTRB
Se omitido, assume ASKIP, UNPROT e NORM.
Se especificado para um grupo de campos, deve ser especificado no primeiro campo.
ASKIP
BRT
DET
DRK
o default; indica que no campo no pode ser digitado nada; o cursor pula o
campo.
Exibido com alta intensidade (brilho BrighT)specifies that a high-intensity
display of the field is required. Because of the 3270 attribute character bit
assignments, a field specified as BRT is also potentially detectable. However, for
the field to be recognized as detectable by BMS, DET must also be specified.
Indica campo potencialmente detectvel (o primeiro caracter ? > & blank).
Se for ? ou >, um selection field; se for & ou blank, um attention field.
Indica campo com dados no exibveis (DRK e DET incompatveis)
32
FSET
IC
NORM
NUM
PROT
UNPROT
Indica que o MDT deve ser posicionado (em ON) quando este campo for exibido
no terminal (Forced SET)
Insert Cursor : indica que o cursor, quando a tela for exibida, deve ser
posicionado / colocado no primeiro byte deste campo. Se for especificado em
mais de um campo, o posicionamento feito no ltimo. Se no for especificado,
o default zero (se for especificado junto com ASKIP ou PROT o cursor
posicionado num campo em que no se pode digitar nada). Esta opo pode ser
sobreposta pela opo CURSOR do comando SEND MAP.
Intensidade normal. o default.
Indica que somente podem ser digitados dados numricos no campo.
Indica que no podem ser digitados dados no campo.
Indica que o campo poder ter contedo digitado.
CASE
Indica que o campo deve ser convertido para maiscula
COLOR
Se o terminal suporta cores, indica a cor do campo ou a cor default do mapset (se for o caso).
Validos : blue, red, pink, green, turquoise, yellow, and neutral.
GINIT
s para DBCS
GRPNAME
Nome que agrupa um conjunto de campos sob uma nica denominao. Incompatvel com OCCURS.
Os campos num grupo devem estar um em seguida ao outro; pode haver intervalos, mas no de campos
que no pertenam ao grupo. Cada campo do grupo precisa ter um nome, e o operando POS tambm
deve ser especificado. Todas as macros DFHMDF que definam os campos de um grupo devem ser
especificadas juntas, e na ordem correta (crescente por POS).
Por exemplo, as primeiras 20 colunas das primeiras 6 linhas de um mapa podem ser definidas como um
grupo de 6 campos; as colunas (21 a 80) das 5 primeiras linhas no precisam ser definidas como
campos. O ATTRB do primeiro campo vale aplica-se para todos os campos do grupo.
HILIGHT
Indica o default do atributo de highligh para todos os campos em todos os mapas do mapset.
OFF
is the default and indicates that no highlighting is used.
BLINK
specifies that the field must blink.
REVERSE
specifies that the character or field is displayed in reverse video, for example, on
a 3278, black characters on a green background.
UNDERLINE specifies that a field is underlined.
INITIAL (or XINIT)
Indica o contedo inicial de um campo de sada. Usar INITIAL para especificar contedos em caracter
e XINIT para especificar contedos em hexadecimal.
Dados em hexadecimal devem ser especificados em pares de caracteres (algarismos) hexadecimais.
Ex.: XINIT=C1C2.
Preenchimento direita com brancos se o especificado for menor que o tamanho.
33
Assumido
BLANK
ZERO
LEFT
RIGHT
Se JUSTIFY for omitido e o atributo NUM for especificado, RIGHT e ZERO so assumidos.
Se JUSTIFY for omitted, e NUM no foi especificado, LEFT e BLANK so assumidos.
LENGTH
Indica o tamanho (1-256 bytes) do campo (ou grupo de campos).
O tamanho em bytes deve ser no mximo a quantidade de bytes que o programa espera receber; ele
NO DEVE incluir o byte de atributo.
Em geral, LENGTH pode ser omitido se PICIN ou PICOUT for(em) especificado(s).
Seno, LENGTH necessrio.
Pode-se especificar zero se o nome do campo for omitido (na macro DFHMDF). Usa-se tal recurso
para delimitar campos em mapas de entrada.
OCCURS
Indica o nmero de ocorrncias para o campo. Neste caso, a referncia feita por subscrito (ndice)
pois gerado um vetor.
OCCURS e GRPNAME so incompatveis.
OUTLINE
Permite que linhas sejam incluidas acima, abaixo, esquerda e direita do campo ou grupo de campos
(para construir boxes).
PICIN (COBOL and PL/I only)
Indica a picture a ser usada num campo de entrada num mapa IN ou INOUT. Ela serve como uma
especificao de edio que passada para o programa, permitindo ao usurio explorar os recursos de
edio do COBOL ou PL/I.
A validade dos dados NO verificada pelo BMS; deve ser feita pelo programa.
O tamanho da(s) picture(s) (PICIN e/ou PICOUT) deve ser o mesmo do LENGTH, se especificado.
Se tanto PICIN e PICOUT forem usadas, as pictures devem ter o mesmo tamanho.
Exemplo:
34
MAPX
MAP
F1
F2
F3
DFHMSD
TYPE=DSECT,
LANG=COBOL,
MODE=INOUT
DFHMDI LINE=1,COLUMN=1,
SIZE=(1,80)
DFHMDF POS=0,LENGTH=30
DFHMDF POS=40,LENGTH=10,
PICOUT='$$$,$$0.00'
DFHMDF POS=60,LENGTH=6,
PICIN='9999V99',
PICOUT='ZZ9.99'
DFHMSD TYPE=FINAL
01
MAPI.
02 F1L
02 F1A
02 FILLER
03 F1F
02 F1I
02 FILLER
02 F2L
02 F2A
02 FILLER
03 F2F
02 F2I
02 FILLER
02 F3L
02 F3A
02 FILLER
03 F3F
02 F3I
02 FILLER
POS
Indica a posio de um campo.
number
SOSI
s para DBCS
TRANSP
Indica se o background de um campo alfanumerico transparent ou opaco (espao entre caracteres
visvel).
VALIDN
XINIT
ver INITIAL
36
Localizao do mapa na tela (pode-se colocar vrios mapas numa nica tela)
Se o mapa usa extended display attributes, e, caso use, quais so
Os defaults para os extended display attributes
Controles associados ao envio do mapa (alarme, destravar teclado)
Tipo de device suportado pelo mapa
Exemplo :
QCKMAP
DFHMDI SIZE=(24,80),LINE=1,COLUMN=1,CTRL=ALARM
37
Sintaxe :
Map
DFHMDI
COLOR=|DEFAULT|color|
CTRL=(|PRINT|length|FREEKB|ALARM|FRSET|)
COLUMN=|SAME|number|NEXT|
CURSLOC=|NO|YES|OFF|
DATA=|FIELD|BLOCK|
DSATTS=(attr)
EXTATT=|NO|MAPONLY|YES|DEFAULT|
FIELDS=NO
FLDSEP=separator_sequence
HEADER=YES
HILIGHT=|BLINK|REVERSE|UNDERLINE|
JUSTIFY=|LEFT|RIGHT|OVER|UNDER||BOTTOM|FIRST|LAST|
LINE=|number|NEXT|SAME|
MAPATTS=(attr)
OBFMT=|YES|NO|FIELD|
OUTLINE=|BOX|
PARTN=(name)
PS=|BASE|psid|
SIZE=(line,column)
SOSI=|NO|YES|
TERM=type_______________
TIOAPFX=|YES|NO|
TRAILER=YES
TRANSP=|YES|NO|
VALIDN=|MUSTFILL|MUSTENTER|TRIGGER|USEREXIT|
Parmetros :
COLOR
Indica cor dos campos. Vlidos : blue, red, pink, green, turquoise, yellow, e neutral.
COLUMN
Indica coluna e linha onde o mapa deve ser aplicado.
NUMBER
coluna esquerda ou direita da pagina onde ser a margem do mapa
NEXT indica que a margem esquerda ou direita do mapa deve ser aplicada na prxima coluna
disponvel da linha corrente.
SAME indica que a margem esquerda ou direita do mapa deve ser aplicada na mesma coluna do
ltimo mapa (nonheader ou nontrailer) usado e que tenha COLUMN=number e o
mesmo parmetro JUSTIFY desta macro.
CTRL
Indica caractersticas dos terminais.
PRINT
se for terminal impressora.
LENGTH
indica o tamanho da linha da impressora; especificar L40, L64, L80, ou
HONEOM. L40, L64, e L80 foram uma nova linha aps 40, 64, ou 80 characters,
respectivamente. HONEOM faz com que o tamanho padro da linha da impressora seja usado.
FREEKB
indica que o teclado deve ser destravado aps o mapa ter sido escrito. Se no for
especificado FREEKB, o teclado permanece travado.
ALARM
ativa o alarme.
38
indica que os MDTs (modified data tags) de todos os campos devem ser
resetados para a condio de unmodified (field reset) antes do maps ser colocado no buffer /
exibido.
FRSET
CURSLOC
Indica que em todas as operaes de RECEIVE MAP o BMS posiciona um flag na aplicao para
indicar a posio do cursor.
O flag deve ser testado por DFHBMCUR (ver no copy de DFHBMSCA). Ex.:
(DFHBMSCA)
...
02 DFHBMEOF
PIC X VALUE X'80'.
02 DFHBMCUR
PIC X VALUE X'02'.
02 DFHBMEC
PIC X VALUE X'82'.
02 DFHBMFLG
PIC X.
88 DFHERASE
VALUES ARE X'80', X'82'.
88 DFHCURSR
VALUES ARE X'02', X'82'.
MOVE FLD1F TO DFHBMFLG.
IF DFHERASE THEN ...
ELSE ...
IF DFHCURSR THEN ...
ELSE ...
DATA
Indica o formato dos dados.
FIELD indica que os dados so passados como campos contguos, cada qual com seu formato:
LL
A
data field
"LL" : 2 bytes com o tamanho dos dados entrados
"A" : 1 byte para que o programa aplicativo nele coloque o atributo que ir sobrepor-se ao do
mapa.
BLOCK
indica que os dados so passados como um nico stream no formato:
A
data field
space
No pode-se usar DSATTS=YES se DATA=BLOCK.
DSATTS
Indica os tipos de atributo na descrio simblica do mapa. Pode ser : COLOR, HILIGHT, OUTLINE,
PS, SOSI, TRANSP, e VALIDN. Cda tipo indicado deve ser incluido no MAPATTS.
EXTATT
FIELDS
Indica se o mapa tem ou no tem campos. Se especificado FIELDS=NO, criado um mapa nulo.
FLDSEP
S para no 3270
HEADER
HILIGHT
39
LINE
Indica a linha onde o mapa deve ser aplicado.
NUMBER
nmero de 1 a 240 indicando linha inicial.
NEXT
indica que deve iniciar na prxima linha vazia.
SAME
indica que deve iniciar na mesma linha do comando BMS anterior.
MAPATTS
Indica os atributos a incluir no mapa fsico. Pode ser: COLOR, HILIGHT, OUTLINE, PS, SOSI,
TRANSP, e VALIDN.
OBFMT
Somente para 3650.
OUTLINE
Indica inclusao de linhas acima, abaixo, esquerda e/ou direita de um campo para a construo de
boxes.
PARTN
Indica INPARTN ou OUTPARTN.
PS
SIZE
Indica o tamanho do mapa.
line
nmero de linhas
column
nmero de colunas
SOSI
s para DBCS
TERM
TIOAPFX
Indica se o BMS deve incluir um filler na descrio de mapa simblico para o prefixo da TIOA.
YES
indica que deve ter prefixo. DEVE-SE USAR SEMPRE para command level
NO
indica que no h prefixo.
TRAILER
Para mapsets com mais de 1 mapa.
TRANSP
Indica se o background de um campo alfanumerico transparent ou opaco (espao entre caracteres
visvel).
VALIDN
41
DFHMSD
TYPE=MAP,
STORAGE=AUTO,
MODE=OUT,
LANG=COBOL,
TIOAPFX=YES
X
X
X
X
X
Neste caso, indicado que o mapa denomina-se QCKSET, somente para sada, a
linguagem que ir utiliz-lo COBOL, deve haver uma rea prefixo com 12 bytes no
incio de cada mapa simblico, a memria deve ser obtida automaticamente.
Ao final de todas as macros, incluir
DFHMSD TYPE=FINAL
42
Sintaxe :
Mapset DFHMSD TYPE=|DSECT|MAP|FINAL|
BASE=name
COLOR=|DEFAULT|color|
CTRL=(|PRINT|length|FREEKB|ALARM|FRSET|)
CURSLOC=|NO|YES|
DATA=|FIELD|BLOCK|
DSATTS=(attr)
DSECT=|ADS|ADSL|
EXTATT=|NO|MAPONLY|YES|
FLDSEP=|char|X'hex-char'|
FOLD=|LOWER|UPPER|
HILIGHT=|OFF|BLINK|REVERSE|UNDERLINE|
HTAB=tab
LANG=|ASM|COBOL|COBOL2|PLI|C|
LDC=|mnemonic|NO|
MAPATTS=(attr)
MODE=|OUT|IN|INOUT|
OBFMT=|NO|YES|
PARTN=|(name)|ACTIVATE|
PS=|BASE|psid|
SOSI=|NO|YES|
STORAGE=AUTO
SUFFIX=|n|NO|
TERM=type
TIOAPFX=|NO|YES|
TRANSP=|YES|NO|
TRIGRAPH=|NO|YES|
TYPE=|DSECT|MAP|FINAL|
VALIDN=|MUSTFILL|MUSTENTER|TRIGGER|USEREXIT|
VTAB=tab
________________________________________________________________________
|
|
|
DFHMSD TYPE=MAP
(or TYPE=DSECT)
|
|
|
|________________________________________________________________________|
e termina-se com:
________________________________________________________________________
|
|
|
DFHMSD TYPE=FINAL
|
|
|
|________________________________________________________________________|
43
Parmetros :
BASE
Indica que a mesma memria deve ser usada para mais de um mapset.
Incompatvel com STORAGE=AUTO.
COLOR
Indica cor dos campos. Vlidos : blue, red, pink, green, turquoise, yellow, e neutral.
CTRL
Indica caractersticas dos terminais.
PRINT
se for terminal impressora.
LENGTH
indica o tamanho da linha da impressora; especificar L40, L64, L80, ou
HONEOM. L40, L64, e L80 foram uma nova linha aps 40, 64, ou 80 characters,
respectivamente. HONEOM faz com que o tamanho padro da linha da impressora seja usado.
FREEKB
indica que o teclado deve ser destravado aps o mapa ter sido escrito. Se no for
especificado FREEKB, o teclado permanece travado.
ALARM
ativa o alarme.
FRSET
indica que os MDTs (modified data tags) de todos os campos devem ser
resetados para a condio de unmodified (field reset) antes do maps ser colocado no buffer /
exibido.
CURSLOC
Indica que em todas as operaes de RECEIVE MAP o BMS posiciona um flag na aplicao para
indicar a posio do cursor.
O flag deve ser testado por DFHBMCUR (ver no copy de DFHBMSCA). Ex.:
(DFHBMSCA)
...
02 DFHBMEOF
PIC X VALUE X'80'.
02 DFHBMCUR
PIC X VALUE X'02'.
02 DFHBMEC
PIC X VALUE X'82'.
02 DFHBMFLG
PIC X.
88 DFHERASE
VALUES ARE X'80', X'82'.
88 DFHCURSR
VALUES ARE X'02', X'82'.
MOVE FLD1F TO DFHBMFLG.
IF DFHERASE THEN ...
ELSE ...
IF DFHCURSR THEN ...
ELSE ...
DATA
Indica o formato dos dados :
FIELD indica que os dados so passados como campos contguos, cada qual com seu formato:
LL
A
data field
"LL" : 2 bytes com o tamanho dos dados entrados
"A" : 1 byte para que o programa aplicativo nele coloque o atributo que ir sobrepor-se ao do
mapa.
44
BLOCK
DSATTS
Indica os tipos de atributo na descrio simblica do mapa. Pode ser : COLOR, HILIGHT, OUTLINE,
PS, SOSI, TRANSP, e VALIDN. Cada tipo indicado deve ser incluido no MAPATTS.
DSECT
Indica se o book gerado suporta a application data structure (ADS) normal ou longa.
ADS
(default) normal
ADSL longa (para C)
EXTATT
FLDSEP
S para no 3270
FOLD
Somente para C.
HILIGHT
Indica o tipo de brilho do campo.
OFF
default : sem highlight
BLINK
piscar
REVERSE
texto e fundo com cores invertidas
UNDERLINE sublinhado
HTAB
Indica quantas posies de tabulao horizontal para impressora.
LANG
Indica a linguagem do programa aplicativo. Somente para DFHMSD TYPE=DSECT.
Pode ser COBOL, C ou PLI
LDC
Somente para terminais 3600.
MAPATTS
Indica os atributos a incluir no mapa fsico. Pode ser: COLOR, HILIGHT, OUTLINE, PS, SOSI,
TRANSP, e VALIDN.
MODE
Indica OUT, IN ou INOUT (especificar conforme o uso que o mapa ir ter)
OBFMT
Somente para 3650.
45
PARTN
Indica INPARTN ou OUTPARTN.
PS
SOSI
s para DBCS
STORAGE
Para Cobol indica (STORAGE=AUTO) que as reas do mapa lgico devem ser independentes.
SUFFIX
Indica 1 caracter que ser o sufixo para o nome do mapset. Usar preferencialmente um algarismo.
TERM
TIOAPFX
Indica se o BMS deve incluir um filler na descrio de mapa simblico para o prefixo da TIOA.
YES
indica que deve ter prefixo. DEVE-SE USAR SEMPRE para command level
NO
indica que no h prefixo.
TRANSP
Indica se os campos alfanumricos do mapset tem o background transparente ou opaco.
TRIGRAPH para uso em linguagem C
TYPE
Indica o tipo de mapa :
DSECT
indica mapa lgico (descrio simblica = book para ser feito COPY nos
programas)
MAP
indica mapa fsico (programa em geral somente com variaveis que devem ser
compilados e linkeditados para serem carregados quando o programa os referenciar em tempo
de execuo)
FINAL
indica fim da definio dos campos
VALIDN
VTAB
46
21 TS e TD
Comunicao entre transaes ou entre transaes e o exterior
Commarea
TD = Transient Data = Intra Partition ou Extra Partition (o Cics sabe qual tipo pela DCT)
TS = Temporary Storage
TD
Leitura sequencial
Um registro pode ser lido uma nica vez (para
reusar reler) a TD deve ser fechada e (re)aberta
Dados no podem ser alterados
Pode ser s em memria
Nome deve ser definido na DCT
Usada para tratar conjunto de registros (arquivos)
para um programa (do CICS) receber dados ou
para enviar dados (para fora do CICS)
TD extrapartition
Usada para comunicao CICS x CICS ou CICS
x batch
Gravada em arquivos QSAM ou VSAM
TRANSIENT DATA
49
TEMPORARY STORAGE
Usos tpicos :
Paginao (de telas) : uma task pode acessar um registro muito grande num arquivo,
formatar diversas telas (usando BMS), guardar as telas temporariamente em TS, e atravs de
dilogo com o operador exibir a tela desejada, obtendo-a da TS. Pode-se desenvolver uma
rotina padro da instalao (ou de sistema) para paginao usando TS.
Dados em suspenso : uma task pode ter obtido do operador (e de arquivos ou bases de
dados) uma grande quantidade de informaes, preparando uma gravao ou atualizao.
Caso haja necessidade de suspender a task temporariamente (ex. fazer uma consulta
urgente), pode-se guardar os dados em TS, executar a consulta atravs de outra task, e ao
voltar task anterior, recuperar os dados da TS para terminar de obte-los e providenciar o
processamento necessrio. o caso tpico tambm de recurso a ser desenvolvido de forma
padro para a instalao ou sistema.
Formulrios pr-impressos : similar ao exemplo anterior, para, por exemplo, imprimir notas
fiscais.
50
Em geral, queues de TS com mais de 1 registro devem ser usadas somente quando for
nercessrio acesso direto ou repetido aos registros; TD provavelmente mais eficiente para
manipulao de arquivos sequenciais normais.
51
Tela de signon
Signon for CICS/ESA Release 4.1.0
APPLID CICABNT2
WELCOME TO CICS/ESA
Groupid . . .
New Password . . .
52
APPLID CICABNT2
WELCOME TO CICS/ESA
Groupid . . .
New Password . . .
Aparece a tela do CICS, na qual deve-se digitar o nome da transao que se deseja executar
Sada do CICS
Comando CESF LOGOFF + ENTER
cesf logoff
53
Ou
Comando CESF + ENTER
cesf
Aparece a mensagem
ENTER
Volta a aparecer a tela do VTAM
TERMINAL=> OSAVW73
54
55
Cabealho = se for (re)digitado o nome da queue, ela passar a ser a nova queue corrente
Informao = (linhas entre a linha de commando e as informativas de PFs)
PF Keys
PF1 = help.
PF2 = toggle entre exibio em carater e hexadecimal
PF3 = fim da CEBR.
PF4 = vai para o TOP (incio dos dados da TS)
PF5 = vai para o BOTTOM (fim dos dados da TS)
PF6 = repete o ultimo FIND
PF7 = volta meia pgina
PF8 = avana meia pgina
PF9 = scroll para a direita ou esquerda (indicado por legenda)
PF10 = volta uma pgina
PF11= avana uma pgina
PF12 = .x.
Comando (Segunda linha)
BOTTOM
= vai para o BOTTOM (equivale ao PF5)
COLUMN nnnn
= exibe a partir da coluna nnnn
FIND /string
= procura a prxima linha com o string especificado. O caracter / pode ser
qualquer outro usado como delimitador; se for a prpria / no necessrio colocar a palavra FIND
GET tdqueuename = move a queue da TD indicada para a TS
LINE nnnn
= avana para a linha nnnn
PURGE
= limpa (o contedo d)a queue !!!
PUT tdqueuename = copia a queue da TS para a TD indicada
QUEUE tsqueuename = indica o nome da TS queue que vai passar a ser a exibida; nome pode ser
especificado em hexa (QUEUE XC1C2).
TERMINAL termId
= indica o nome da TS queue que vai passer a ser a exibida; nome ser = 4
caracteres da queue corrente + termId
TOP
= vai para o TOP (equivale ao PF4)
56
ou
CECI [?commandName]
CECS [commandName]
PF Keys
PF1 = help.
PF2 = toggle entre exibio em carater e hexadecimal
PF3 = fim da CECI ou CECS.
PF4 = mostra o contedo do EIB
PF5 = mostra todas as variveis associadas sesso
PF6 = shows what you would see if the terminal had been running a transaction which contained the screen
access commands which have been run using the interpreter. This key is not available from CECS or when you
are viewing the user display.
Outro exemplo :
+--------------------------------------------------------------------------------+
|
|
|
READ FILE('FILEA')
|
|
STATUS:
COMMAND SYNTAX CHECK
NAME=
|
|
EXEC CICS READ
|
|
Dataset() | File(FILEA )
|
|
SEt() | Into()
|
|
<Length( +00020)>
|
|
RIdfld()
|
|
<Keylength() <GEneric> | RBa | RRn>
|
|
<SYsid()>
|
|
<GTeq | Equal>
|
|
<Update>
|
|
|
|E: Command requires the option:
'RIDFLD'
|
|
|
|PF 1 HELP 2 HEX 3 END 4 EIB 5 VAR 6 USER 7 SBH 8 SFH 9 MSG 10 SB 11 SF
|
+--------------------------------------------------------------------------------+
58
+--------------------------------------------------------------------------------+
|
|
|
READ FILE('FILEA') RIDFLD('009000')
|
|
STATUS: COMMAND EXECUTION COMPLETE
|
|
EXEC CICS READ
|
|
Dataset() | File(FILEA )
|
|
SEt() | Into( 'HDGDJH KDFKSJDF KSDJ')
|
|
<Length( +00020)>
|
|
RIdfld(009000)
|
|
<Keylength() <GEneric> | RBa | RRn>
|
|
<SYsid()>
|
|
<GTeq | Equal>
|
|
<Update>
|
|
|
| RESPONSE:
NORMAL
EIBRESP=+000000000
|
|PF 1 HELP 2 HEX 3 END 4 EIB 5 VAR 6 USER 7 SBH 8 SFH 9 MSG 10 SB 11 SF
|
+--------------------------------------------------------------------------------+
STATUS:
ABend
ACquire
ADdress
ALlocate
ASKtime
ASSign
BIf
BUild
CAncel
CHange
COLlect
CONNect
CONVerse
CReate
DELAy
DELETE
DELETEQ
INquire
ISsue
Journal
LInk
LOad
Monitor
PErform
POInt
POP
POSt
PURge
PUSh
Query
READ
READNext
READPrev
READQ
RECeive
RELease
RESEtbr
RESYnc
RETRieve
RETUrn
REWrite
ROute
SENd
SET
SIGNOFf
SIGNON
SPOOLClose
SPOOLOpen
SPOOLRead
SPOOLWrite
START
STARTBr
SUspend
SYncpoint
Trace
Unlock
Verify
WAIT
WAITCics
WRITE
WRITEQ
Xctl
9 MSG
DEQ
DISAble
DISCard
DUmp
ENAble
ENDbr
ENQ
ENTer
EXtract
FEpi
FOrmattime
FREE
FREEMain
GDs
GEtmain
Handle
IGnore
INquire
ISsue
Journal
LInk
LOad
Monitor
PErform
POInt
POP
POSt
PURge
PUSh
Query
READ
READNext
READPrev
READQ
RECeive
RELease
RESEtbr
RESYnc
RETRieve
RETUrn
REWrite
ROute
SENd
SET
SIGNOFf
SIGNON
SPOOLClose
SPOOLOpen
SPOOLRead
SPOOLWrite
START
STARTBr
SUspend
SYncpoint
Trace
Unlock
Verify
WAIT
WAITCics
WRITE
WRITEQ
Xctl
9 MSG
59
INquire
ISsue
Journal
LInk
LOad
Monitor
PErform
POInt
POP
POSt
PURge
PUSh
Query
READ
READNext
READPrev
READQ
RECeive
RELease
RESEtbr
RESYnc
RETRieve
RETUrn
REWrite
ROute
SENd
SET
SIGNOFf
SIGNON
SPOOLClose
SPOOLOpen
SPOOLRead
SPOOLWrite
START
STARTBr
SUspend
SYncpoint
Trace
Unlock
Verify
WAIT
WAITCics
WRITE
WRITEQ
Xctl
9 MSG
START
STATUS: COMMAND SYNTAX CHECK
NAME=
EXEC CICS START
TRansid()
< Interval( +0000000 ) | TIme() | ( AFter | AT ) < Hours() > < Minutes() >
< SEconds() > >
< FRom() < Length() < FMh > > >
< TErmid() | Userid() >
< SYsid() >
< RTRansid() >
< RTErmid() >
< Queue() >
< Nocheck >
< Protect >
< REqid() >
< ATTach >
S Option TRANSID has been omitted or specified with an invalid value. The
command cannot be executed.
PF 1 HELP 2 HEX 3 END 4 EIB 5 VAR 6 USER 7 SBH 8 SFH 9 MSG 10 SB 11 SF
START tr(ap99)
STATUS: COMMAND SYNTAX CHECK
NAME=
EXEC CICS START
TRansid()
< Interval( +0000000 ) | TIme() | ( AFter | AT ) < Hours() > < Minutes() >
< SEconds() > >
< FRom() < Length() < FMh > > >
< TErmid() | Userid() >
< SYsid() >
< RTRansid() >
< RTErmid() >
< Queue() >
< Nocheck >
< Protect >
< REqid() >
< ATTach >
S Option TRANSID has been omitted or specified with an invalid value. The
command cannot be executed.
PF 1 HELP 2 HEX 3 END 4 EIB 5 VAR 6 USER 7 SBH 8 SFH 9 MSG 10 SB 11 SF
60
RESPONSE: NORMAL
EIBRESP=+0000000000 EIBRESP2=+0000000000
PF 1 HELP 2 HEX 3 END 4 EIB 5 VAR 6 USER 7 SBH 8 SFH 9 MSG 10 SB 11 SF
RESPONSE: TRANSIDERR
EIBRESP=+0000000028 EIBRESP2=+0000000000
PF 1 HELP 2 HEX 3 END 4 EIB 5 VAR 6 USER 7 SBH 8 SFH 9 MSG 10 SB 11 SF
61
[,ON | ,OFF ]
identificao do terminal
Tela :
Status (segunda linha) : pode ter :
PROGRAM INITIATION
ABOUT TO EXECUTE COMMAND
COMMAND EXECUTION COMPLETE (or COMMAND NOT EXECUTED)
PROGRAM TERMINATION
TASK TERMINATION
AN ABEND HAS OCCURRED
ABNORMAL TASK TERMINATION
EXECUTION INTERFACE BLOCK
DISPLAY ON CONDITIONS
62
63
00060
00120
00180
00240
00300
00360
00420
00480
00540
00600
00660
00720
00780
00840
00900
00960
PF1=N/A
PF2=LimpaCA PF3=FIM PF4=InicioCA PF5=LINKpgm PF6=FimCA PF7=PgUp
PF8=PgDn PF9=N/A
PF10=LinUp PF11=LinDn PF12=OutroPGM/CA Enter=AlteraCA
Transao abenda
APCP099 PROGRAMA= AAAAAAAA TAM.COMMAREA= 10000
+
+
+
+
+
+
123456789012345678901234567890123456789012345678901234567890
00001
00061
00121
00181
00241
00301
00361
00421
00481
00541
00601
00661
00721
00781
00841
00901
123456789012345678901234567890123456789012345678901234567890
00060
00120
00180
00240
00300
00360
00420
00480
00540
00600
00660
00720
00780
00840
00900
00960
PF1=N/A
PF2=LimpaCA PF3=FIM PF4=InicioCA PF5=LINKpgm PF6=FimCA PF7=PgUp
DFHAC2206 11:11:42 CICABNT2 Transaction AP99 has failed with abend AEI0.
Resource backout was successful.
64
clear
65
EIBTIME
EIBDATE
EIBTRNID
EIBTASKN
EIBTRMID
=
=
=
=
=
105049
0103304
'AP99'
21843
'W164'
EIBCPOSN
EIBCALEN
EIBAID
EIBFN
EIBRCODE
EIBDS
EIBREQID
=
=
=
=
=
=
=
4
0
X'7D'
X'0000'
X'000000000000'
'........'
'........'
00
AT X'0020D0EA'
AT X'0020D0EB'
AT X'0020D0ED'
RESPONSE:
REPLY:
ENTER: CONTINUE
PF1 : UNDEFINED
PF4 : SUPPRESS DISPLAYS
PF7 : SCROLL BACK
PF10: PREVIOUS DISPLAY
PF2 :
PF5 :
PF8 :
PF11:
SWITCH HEX/CHAR
WORKING STORAGE
SCROLL FORWARD
UNDEFINED
PF3 :
PF6 :
PF9 :
PF12:
ENTER
Exibio de parada ANTES da execuo de comando CICS SEND MAP
TRANSACTION: AP99 PROGRAM: APCP099 TASK: 0021843 APPLID: CICABNT2 DISPLAY: 00
STATUS: ABOUT TO EXECUTE COMMAND
EXEC CICS SEND MAP
MAP ('APCM099')
FROM ('..................................
'...)
LENGTH (1815)
MAPSET ('APCM099')
TERMINAL
FREEKB
ERASE
OFFSET:X'001570'
RESPONSE:
LINE:00583
ENTER: CONTINUE
PF1 : UNDEFINED
PF4 : SUPPRESS DISPLAYS
PF7 : SCROLL BACK
PF10: PREVIOUS DISPLAY
EIBFN=X'1804'
REPLY:
PF2 :
PF5 :
PF8 :
PF11:
SWITCH HEX/CHAR
WORKING STORAGE
SCROLL FORWARD
UNDEFINED
PF3 :
PF6 :
PF9 :
PF12:
UNDEFINED
USER DISPLAY
STOP CONDITIONS
ABEND USER TASK
66
ENTER
Exibio da tela pelo comando CICS SEND MAP
APCP099 PROGRAMA=
TAM.COMMAREA=
OFFSET:X'001570'
RESPONSE: NORMAL
LINE:00583
ENTER: CONTINUE
PF1 : UNDEFINED
PF4 : SUPPRESS DISPLAYS
PF7 : SCROLL BACK
PF10: PREVIOUS DISPLAY
PF2 :
PF5 :
PF8 :
PF11:
EIBFN=X'1804'
EIBRESP=0
SWITCH HEX/CHAR
WORKING STORAGE
SCROLL FORWARD
UNDEFINED
PF3 :
PF6 :
PF9 :
PF12:
REPLY:
END EDF SESSION
USER DISPLAY
STOP CONDITIONS
ABEND USER TASK
ENTER
Exibio de parada ANTES da execuo de comando CICS RECEIVE MAP
TRANSACTION: AP99 PROGRAM: APCP099 TASK: 0021843 APPLID: CICABNT2 DISPLAY: 00
STATUS: ABOUT TO EXECUTE COMMAND
EXEC CICS RECEIVE MAP
MAP ('APCM099')
INTO ('..................................
'...)
MAPSET ('APCM099')
TERMINAL
NOHANDLE
OFFSET:X'0015D2'
RESPONSE:
LINE:00588
ENTER: CONTINUE
PF1 : UNDEFINED
PF4 : SUPPRESS DISPLAYS
PF7 : SCROLL BACK
PF10: PREVIOUS DISPLAY
EIBFN=X'1802'
REPLY:
PF2 :
PF5 :
PF8 :
PF11:
SWITCH HEX/CHAR
WORKING STORAGE
SCROLL FORWARD
UNDEFINED
PF3 :
PF6 :
PF9 :
PF12:
UNDEFINED
USER DISPLAY
STOP CONDITIONS
ABEND USER TASK
67
ENTER
(com a tela exibida) preencher os dados solicitados e teclar ENTER
APCP099 PROGRAMA= AAAAAAAA TAM.COMMAREA= 10000
OFFSET:X'0015D2'
RESPONSE: NORMAL
LINE:00588
ENTER: CONTINUE
PF1 : UNDEFINED
PF4 : SUPPRESS DISPLAYS
PF7 : SCROLL BACK
PF10: PREVIOUS DISPLAY
EIBFN=X'1802'
EIBRESP=0
REPLY:
PF2 :
PF5 :
PF8 :
PF11:
SWITCH HEX/CHAR
WORKING STORAGE
SCROLL FORWARD
UNDEFINED
PF3 :
PF6 :
PF9 :
PF12:
OFFSET:X'001694'
RESPONSE:
LINE:00607
ENTER: CONTINUE
PF1 : UNDEFINED
PF4 : SUPPRESS DISPLAYS
PF7 : SCROLL BACK
PF10: PREVIOUS DISPLAY
EIBFN=X'1804'
REPLY:
PF2 :
PF5 :
PF8 :
PF11:
SWITCH HEX/CHAR
WORKING STORAGE
SCROLL FORWARD
UNDEFINED
PF3 :
PF6 :
PF9 :
PF12:
UNDEFINED
USER DISPLAY
STOP CONDITIONS
ABEND USER TASK
68
00060
00120
00180
00240
00300
00360
00420
00480
00540
00600
00660
00720
00780
00840
00900
00960
PF1=N/A
PF2=LimpaCA PF3=FIM PF4=InicioCA PF5=LINKpgm PF6=FimCA PF7=PgUp
PF8=PgDn PF9=N/A
PF10=LinUp PF11=LinDn PF12=OutroPGM/CA Enter=AlteraCA
ENTER
Exibio de parada APS a execuo de comando CICS SEND MAP
TRANSACTION: AP99 PROGRAM: APCP099 TASK: 0021843 APPLID: CICABNT2 DISPLAY: 00
STATUS: COMMAND EXECUTION COMPLETE
EXEC CICS SEND MAP
MAP ('APCM099')
FROM ('...............AAAAAAAA...10000...
+
+
+'...)
LENGTH (1815)
MAPSET ('APCM099')
TERMINAL
FREEKB
ERASE
OFFSET:X'001694'
RESPONSE: NORMAL
LINE:00607
ENTER: CONTINUE
PF1 : UNDEFINED
PF4 : SUPPRESS DISPLAYS
PF7 : SCROLL BACK
PF10: PREVIOUS DISPLAY
EIBFN=X'1804'
EIBRESP=0
REPLY:
PF2 :
PF5 :
PF8 :
PF11:
SWITCH HEX/CHAR
WORKING STORAGE
SCROLL FORWARD
UNDEFINED
PF3 :
PF6 :
PF9 :
PF12:
ENTER
Exibio de parada ANTES da execuo de comando CICS RECEIVE MAP
TRANSACTION: AP99 PROGRAM: APCP099 TASK: 0021843 APPLID: CICABNT2 DISPLAY: 00
STATUS: ABOUT TO EXECUTE COMMAND
EXEC CICS RECEIVE MAP
MAP ('APCM099')
INTO ('...............AAAAAAAA...10000...
+
+
+'...)
MAPSET ('APCM099')
TERMINAL
NOHANDLE
OFFSET:X'001718'
RESPONSE:
LINE:00626
ENTER: CONTINUE
PF1 : UNDEFINED
PF4 : SUPPRESS DISPLAYS
PF7 : SCROLL BACK
PF10: PREVIOUS DISPLAY
EIBFN=X'1802'
REPLY:
PF2 :
PF5 :
PF8 :
PF11:
SWITCH HEX/CHAR
WORKING STORAGE
SCROLL FORWARD
UNDEFINED
PF3 :
PF6 :
PF9 :
PF12:
UNDEFINED
USER DISPLAY
STOP CONDITIONS
ABEND USER TASK
69
00060
00120
00180
00240
00300
00360
00420
00480
00540
00600
00660
00720
00780
00840
00900
00960
PF1=N/A
PF2=LimpaCA PF3=FIM PF4=InicioCA PF5=LINKpgm PF6=FimCA PF7=PgUp
PF8=PgDn PF9=N/A
PF10=LinUp PF11=LinDn PF12=OutroPGM/CA Enter=AlteraCA
F5
Exibio da tela APS a execuo do comando CICS RECEIVE MAP
TRANSACTION: AP99 PROGRAM: APCP099 TASK: 0021843 APPLID: CICABNT2 DISPLAY: 00
STATUS: COMMAND EXECUTION COMPLETE
EXEC CICS RECEIVE MAP
MAP ('APCM099')
INTO ('...............AAAAAAAA...10000...
+
+
+'...)
MAPSET ('APCM099')
TERMINAL
NOHANDLE
OFFSET:X'001718'
RESPONSE: NORMAL
LINE:00626
ENTER: CONTINUE
PF1 : UNDEFINED
PF4 : SUPPRESS DISPLAYS
PF7 : SCROLL BACK
PF10: PREVIOUS DISPLAY
PF2 :
PF5 :
PF8 :
PF11:
EIBFN=X'1802'
EIBRESP=0
SWITCH HEX/CHAR
WORKING STORAGE
SCROLL FORWARD
UNDEFINED
PF3 :
PF6 :
PF9 :
PF12:
REPLY:
END EDF SESSION
USER DISPLAY
STOP CONDITIONS
ABEND USER TASK
ENTER
Exibio da tela ANTES a execuo do comando CICS LINK
TRANSACTION: AP99 PROGRAM: APCP099 TASK: 0021843 APPLID: CICABNT2 DISPLAY:
STATUS: ABOUT TO EXECUTE COMMAND
EXEC CICS LINK
PROGRAM ('AAAAAAAA')
COMMAREA ('')
LENGTH (0)
OFFSET:X'001FD4'
RESPONSE:
LINE:00927
ENTER: CONTINUE
PF1 : UNDEFINED
PF4 : SUPPRESS DISPLAYS
PF7 : SCROLL BACK
PF10: PREVIOUS DISPLAY
00
EIBFN=X'0E02'
REPLY:
PF2 :
PF5 :
PF8 :
PF11:
SWITCH HEX/CHAR
WORKING STORAGE
SCROLL FORWARD
UNDEFINED
PF3 :
PF6 :
PF9 :
PF12:
UNDEFINED
USER DISPLAY
STOP CONDITIONS
ABEND USER TASK
70
ENTER
Exibio da tela APS a execuo do comando CICS LINK
TRANSACTION: AP99 PROGRAM: APCP099 TASK: 0021843 APPLID: CICABNT2 DISPLAY:
STATUS: COMMAND EXECUTION COMPLETE
EXEC CICS LINK
PROGRAM ('AAAAAAAA')
COMMAREA ('')
LENGTH (0)
OFFSET:X'001FD4'
RESPONSE: PGMIDERR
LINE:00927
ENTER: CONTINUE
PF1 : UNDEFINED
PF4 : SUPPRESS DISPLAYS
PF7 : SCROLL BACK
PF10: PREVIOUS DISPLAY
PF2 :
PF5 :
PF8 :
PF11:
EIBFN=X'0E02'
EIBRESP=27
SWITCH HEX/CHAR
WORKING STORAGE
SCROLL FORWARD
UNDEFINED
PF3 :
PF6 :
PF9 :
PF12:
00
REPLY:
END EDF SESSION
USER DISPLAY
STOP CONDITIONS
ABEND USER TASK
ENTER
Ocorrncia de ABEND
TRANSACTION: AP99 PROGRAM: APCP099
STATUS: AN ABEND HAS OCCURRED
EIBTIME
EIBDATE
EIBTRNID
EIBTASKN
EIBTRMID
=
=
=
=
=
105049
0103304
'AP99'
21843
'W164'
EIBCPOSN
EIBCALEN
EIBAID
EIBFN
EIBRCODE
EIBDS
EIBREQID
=
=
=
=
=
=
=
19
0
X'F5'
X'0E02' LINK
X'010000000000'
'........'
'........'
ABEND :
00
AT X'0020D0EA'
AT X'0020D0EB'
AT X'0020D0ED'
AEI0
REPLY:
ENTER: CONTINUE
PF1 : UNDEFINED
PF4 : SUPPRESS DISPLAYS
PF7 : SCROLL BACK
PF10: PREVIOUS DISPLAY
PF2 :
PF5 :
PF8 :
PF11:
SWITCH HEX/CHAR
WORKING STORAGE
SCROLL FORWARD
UNDEFINED
PF3 :
PF6 :
PF9 :
PF12:
ENTER
Pergunta se continua em EDF mode; se responder NO
TRANSACTION: AP99 PROGRAM:
TASK: 0021843 APPLID: CICABNT2 DISPLAY:
STATUS: ABNORMAL TASK TERMINATION
EIBTIME
EIBDATE
EIBTRNID
EIBTASKN
EIBTRMID
=
=
=
=
=
105049
0103304
'AP99'
21843
'W164'
EIBCPOSN
EIBCALEN
EIBAID
EIBFN
EIBRCODE
EIBDS
EIBREQID
=
=
=
=
=
=
=
19
0
X'F5'
X'0E02' LINK
X'010000000000'
'........'
'........'
ABEND :
AEI0
CONTINUE EDF? (ENTER YES OR NO)
ENTER: CONTINUE
PF1 : UNDEFINED
PF2 :
PF4 : SUPPRESS DISPLAYS
PF5 :
PF7 : SCROLL BACK
PF8 :
PF10: PREVIOUS DISPLAY
PF11:
00
AT X'0020D0EA'
AT X'0020D0EB'
AT X'0020D0ED'
REPLY: NO
SWITCH HEX/CHAR
WORKING STORAGE
SCROLL FORWARD
UNDEFINED
PF3 :
PF6 :
PF9 :
PF12:
71
00060
00120
00180
00240
00300
00360
00420
00480
00540
00600
00660
00720
00780
00840
00900
00960
PF1=N/A
PF2=LimpaCA PF3=FIM PF4=InicioCA PF5=LINKpgm PF6=FimCA PF7=PgUp
DFHAC2206 11:11:42 CICABNT2 Transaction AP99 has failed with abend AEI0.
Resource backout was successful.
72
OFFSET:X'001718'
RESPONSE: NORMAL
LINE:00626
ENTER: CONTINUE
PF1 : UNDEFINED
PF4 : SUPPRESS DISPLAYS
PF7 : SCROLL BACK
PF10: PREVIOUS DISPLAY
EIBFN=X'1802'
EIBRESP=0
REPLY:
PF2 :
PF5 :
PF8 :
PF11:
SWITCH HEX/CHAR
WORKING STORAGE
SCROLL FORWARD
UNDEFINED
PF3 :
PF6 :
PF9 :
PF12:
OFFSET:X'001718'
RESPONSE: NORMAL
LINE:00626
ENTER: CONTINUE
PF1 : UNDEFINED
PF4 : SUPPRESS DISPLAYS
PF7 : SCROLL BACK
PF10: PREVIOUS DISPLAY
PF2 :
PF5 :
PF8 :
PF11:
EIBFN=X'1802'
EIBRESP=X'00000000'
SWITCH HEX/CHAR
WORKING STORAGE
SCROLL FORWARD
UNDEFINED
PF3 :
PF6 :
PF9 :
PF12:
REPLY:
73
OFFSET:X'001718'
RESPONSE: NORMAL
LINE:00626
EIBFN=X'1802'
EIBRESP=0
REPLY:
ENTER: CONTINUE
PF1 : UNDEFINED
PF4 : SUPPRESS DISPLAYS
PF7 : SCROLL BACK
PF10: PREVIOUS DISPLAY
PF2 :
PF5 :
PF8 :
PF11:
SWITCH HEX/CHAR
WORKING STORAGE
SCROLL FORWARD
UNDEFINED
PF3 :
PF6 :
PF9 :
PF12:
00
EIBTIME
EIBDATE
EIBTRNID
EIBTASKN
EIBTRMID
=
=
=
=
=
114729
0103304
'AP99'
44270
'W164'
EIBCPOSN
EIBCALEN
EIBAID
EIBFN
EIBRCODE
EIBDS
EIBREQID
=
=
=
=
=
=
=
19
0
X'F5'
X'1802' RECEIVE
X'000000000000'
'........'
'........'
AT X'002030EA'
AT X'002030EB'
AT X'002030ED'
RESPONSE:
ENTER: CURRENT DISPLAY
PF1 : UNDEFINED
PF4 : EIB DISPLAY
PF7 : SCROLL BACK
PF10: UNDEFINED
00
REPLY:
PF2 :
PF5 :
PF8 :
PF11:
SWITCH HEX/CHAR
WORKING STORAGE
SCROLL FORWARD
UNDEFINED
PF3 :
PF6 :
PF9 :
PF12:
UNDEFINED
USER DISPLAY
UNDEFINED
REMEMBER DISPLAY
74
RESPONSE: NORMAL
PF 1 HELP
3 END
SYSID=CIT2 APPLID=CICABNT2
TIME: 15.43.29 DATE: 31.10.03
7 SBH 8 SFH 9 MSG 10 SB 11 SF
STATUS:
Discard
Inquire
Perform
Set
SYSID=CIT2 APPLID=CICABNT2
PF 1 HELP
3 END
9 MSG
75
i
STATUS:
Discard
Inquire
Perform
Set
SYSID=CIT2 APPLID=CICABNT2
PF 1 HELP
3 END
9 MSG
I
STATUS:
AUTInstmodel
AUTOinstall
AUXtrace
Connection
DEletshipped
DLidatabase
DSAs
DSName
DUmpds
FEConnection
FENode
FEPOol
FEPRopset
FETarget
FIle
Gtftrace
INttrace
IRBatch
IRC
Journalnum
Line
MODename
MONitor
Netname
PArtner
PItrace
PROFile
PROGram
STatistics
SYDumpcode
SYStem
TAsk
TClass
TDqueue
TErminal
TRAnsaction
TRDumpcode
TSqueue
VOlume
VTam
SYSID=CIT2 APPLID=CICABNT2
PF 1 HELP
3 END
9 MSG
I fi(tab*)
STATUS: ENTER ONE OF THE FOLLOWING OR HIT ENTER FOR DEFAULT
AUTInstmodel
AUTOinstall
AUXtrace
Connection
DEletshipped
DLidatabase
DSAs
DSName
DUmpds
FEConnection
FENode
FEPOol
FEPRopset
FETarget
FIle
Gtftrace
INttrace
IRBatch
IRC
Journalnum
Line
MODename
MONitor
Netname
PArtner
PItrace
PROFile
PROGram
STatistics
SYDumpcode
SYStem
TAsk
TClass
TDqueue
TErminal
TRAnsaction
TRDumpcode
TSqueue
VOlume
VTam
SYSID=CIT2 APPLID=CICABNT2
PF 1 HELP
3 END
9 MSG
76
I FI(TAB*)
STATUS: RESULTS - OVERTYPE TO MODIFY
Fil(TABA000 ) Rem
Fil(TABA001 ) Rem
Fil(TABA002 ) Rem
Fil(TABA003 ) Rem
Fil(TABA004 ) Rem
Fil(TABA006 ) Rem
Fil(TABA007 ) Rem
Fil(TABA011 ) Rem
Fil(TABA100 ) Rem
Fil(TABA209 ) Rem
Fil(TABA341 ) Rem
Fil(TABA400 ) Rem
Fil(TABA501 ) Rem
Fil(TABA502 ) Rem
Fil(TABA503 ) Rem
Fil(TABA504 ) Rem
Fil(TABA505 ) Rem
+ Fil(TABA506 ) Rem
SYSID=CIT2 APPLID=CICABNT2
TIME: 15.38.26 DATE: 31.10.03
7 SBH 8 SFH 9 MSG 10 SB 11 SF
RESPONSE: NORMAL
PF 1 HELP
3 END
I TRA(TAB*)
STATUS: RESULTS - OVERTYPE TO MODIFY
Tra(TAB ) Pri( 001 ) Pro(ABN00A ) Tcl(
Tra(TABS) Pri( 001 ) Pro(TABA0A ) Tcl(
Tra(TAB1) Pri( 001 ) Pro(TABP128 ) Tcl(
Tra(TAB2) Pri( 001 ) Pro(TABP129 ) Tcl(
Tra(TAB3) Pri( 001 ) Pro(TABP130 ) Tcl(
DFHTCL00
DFHTCL00
DFHTCL00
DFHTCL00
DFHTCL00
Ena
Ena
Ena
Ena
Ena
SYSID=CIT2 APPLID=CICABNT2
TIME: 15.40.01 DATE: 31.10.03
7 SBH 8 SFH 9 MSG 10 SB 11 SF
RESPONSE: NORMAL
PF 1 HELP
3 END
I PROG(TAB*)
STATUS: RESULTS - OVERTYPE TO MODIFY
Prog(TABADA ) Len(0045344) Cob Pro Ena
Res(000) Use(0000000019) Any Uex Ful
Prog(TABADG ) Len(0025136) Cob Pro Ena
Res(000) Use(0000000019) Any Uex Ful
Prog(TABADGFM) Len(0001488)
Pro Ena
Res(000) Use(0000000019) Any Uex Ful
Prog(TABA0A ) Len(0052848) Cob Pro Ena
Res(000) Use(0000000057) Any Uex Ful
Prog(TABA0G ) Len(0021368) Cob Pro Ena
Res(000) Use(0000000057) Any Uex Ful
Prog(TABA0GFM) Len(0001272)
Pro Ena
Res(000) Use(0000000057) Any Uex Ful
Prog(TABB1A ) Len(0077992) Cob Pro Ena
Res(000) Use(0000000022) Any Uex Ful
Prog(TABB1G ) Len(0025320) Cob Pro Ena
Res(000) Use(0000000022) Any Uex Ful
+ Prog(TABB1GFM) Len(0001000)
Pro Ena
Res(000) Use(0000000022) Any Uex Ful
RESPONSE: NORMAL
PF 1 HELP
3 END
)
)
)
)
)
Pri
Ced
Pri
Ced
Pri
Ced
Pri
Ced
Pri
Ced
Pri
Ced
Pri
Ced
Pri
Ced
Pri
Ced
SYSID=CIT2 APPLID=CICABNT2
TIME: 15.40.49 DATE: 31.10.03
7 SBH 8 SFH 9 MSG 10 SB 11 SF
77
Component ID. . . .
Message Number. . .
F3=Exit to CICS
DFHCMC01
Component ID. . . . TC
F3=Cancel
F7=Backward
F8=Forward
78
DFHCMC01
Component ID. . . .
F3=Exit to CICS
ASRA
EXPLANATION: The task has terminated abnormally because
of a program check.
SYSTEM ACTION: The task is abnormally terminated and CICS
issues either message DFHAP0001 or DFHSR0001. Message
DFHSR0622 may also be issued.
USER RESPONSE: Refer to the description of the associated
message or messages to determine and correct the cause of
the program check.
MODULE:
F3=Cancel
DFHSRP
F7=Backward
F8=Forward
79