M9 CICS
-
Upload
alfredo-huerta-pinto -
Category
Documents
-
view
4 -
download
0
description
Transcript of M9 CICS
-
CICS
Febrero de 2008
-
CICSCICS
Customer Customer
InformationInformation
ControlControl
SystemSystem
-
OLTP (onOLTP (on--line transaction procesing)line transaction procesing)
SISTEMA OPERATIVO
CICS
USUARIO PROGRAMASFICHEROS
Y BASES
DE DATOS
-
Mdulos del CICSMdulos del CICS
KCKCControl de TareasControl de Tareas
SCSCControl de MemoriaControl de Memoria
PCPCControl de ProgramasControl de Programas
TCTCControl de terminalesControl de terminales
FCFCControl de FicherosControl de Ficheros
TDTDControl datos Control datos
transitoriostransitorios
TSTSControl memoria Control memoria
temporaltemporal
BMS, IC, DCBMS, IC, DC
-
Tablas del CICSTablas del CICS
TCTTCTTerminalesTerminales
PCTPCTTransaccionesTransacciones--
>Programas>Programas
PPTPPTProgramasProgramas
FCTFCTFicherosFicheros
DCTDCTFichero datos Fichero datos
transitoriostransitorios
-
ConversacinConversacin
Conversacional:Conversacional:1. Visualizar pantalla
2. Esperar respuesta
3. Recibir respuesta
4. Actualizar fichero
5. Visualizar un mensaje de O.K.
No conversacional:No conversacional:
Se realiza la tarea y el programa
desaparece
-
PseudoconversacionalPseudoconversacional
Transaccin 1:Transaccin 1:
1. Visualizar pantalla
Transaccin 2:Transaccin 2:
3. Recibir respuesta
4. Actualizar fichero
5. Visualizar un mensaje de O.K.
-
Funcionamiento del CICSFuncionamiento del CICS
TCTC PCPC
ACCT
1
2
3
Librera
-
Funcionamiento del CICSFuncionamiento del CICS
BMSBMS PCPC
Men
5
3
Librera
PROGRAMA
ACCT00
4
-
Funcionamiento del CICSFuncionamiento del CICS
BMSBMS PCPC FCFC
Seleccin
8
Librera
PROGRAMA
ACCT01
7
Fichero
6
-
Proceso de compilacinProceso de compilacin
FuenteTraductor
Informe
Traductor
Fuente
traducido Compilador
Informe
Compilador
Objeto Linkeditor
Informe
Linkeditor
Load
-
Restricciones programas CICSRestricciones programas CICS
No se pude utilizar:No se pude utilizar: La INPUT-OUTPUT SECTION dentro de la
ENVIRONMENT DIVISION
La FILE SECTION dentro de la DATA DIVISION
Los verbos: READ WRITE OPEN CLOSE ACCEPT DISPLAY TRACE SORT Etc.
-
Formato comandos CICSFormato comandos CICS
EXEC CICS
RECEIVE MAP(A)
END-EXEC
MOVE TO DFHEIV0
MOVE A TO DFHC0070
CALL DFHEI1 USING DFHEIV0 DFHC0070
Caracteres no
imprimibles
El traductor se encarga
de definir las variables
necesarias en nuestro
programa
-
Ficheros soportadosFicheros soportados
DAM (Direct Access Method)DAM (Direct Access Method)
VSAM (Virtual Storage Access Method)VSAM (Virtual Storage Access Method)
KSDS (Key Sequenced Data Set)
ESDS (Entry Sequenced Data Set)
RRDS (Relative Record Data Set)
-
Gestin de erroresGestin de errores
EXEC CICS
HANDLE CONDITION
DUPREC(prrafo)
ERROR(prrafo)
END-EXEC
01 C-RESP PIC S9(8) COMP.
EXEC CICS
RECEIVE MAP(A)
RESP(C-RESP)
END-EXEC
IF C-RESP = DFHRESP(MAPFAIL) ...
-
Transferencia de controlTransferencia de control
Va CALLVa CALL
Tal y como se haca en los programas batch
Va LINKVa LINK
Equivale a una PERFORM. El programa llamado se
ejecuta y al terminar se devuelve el control a la
siguiente instruccin
Va XCTLVa XCTL
Equivale a un GOTO. El programa llamador se
descarga de la memoria y se ejecuta el programa
llamado
Va RETURN (opcin TRANSID)Va RETURN (opcin TRANSID)
Slo puede emitir un RETURN con opcin TRANSID
un programa que devuelve control al CICS
-
LINKLINK
EXEC CICS
LINK
PROGRAM(nombre)
[COMMAREA(identificador)]
[LENGTH(identificador)]
END-EXEC
-
XCTLXCTL
EXEC CICS
XCTL
PROGRAM(nombre)
[COMMAREA(identificador)]
[LENGTH(identificador)]
END-EXEC
-
RETURNRETURN
EXEC CICS
RETURN
TRANSID(nombre)
[COMMAREA(identificador)]
[LENGTH(identificador)]
END-EXEC
-
STARTSTART
EXEC CICS
START
TRANSID(nombre)
[COMMAREA(identificador)]
[LENGTH(identificador)]
[INTERVAL(hhmmss) COMP-3]
END-EXEC
-
RETRIEVERETRIEVE
EXEC CICS
RETRIEVE
[INTO(identificador)]
[LENGTH(identificador)]
END-EXEC
-
Paso de datos Paso de datos
El programa llamador:El programa llamador:
Define la COMMAREA en la WORKING-STORAGE SECTION con cualquier nombre
El programa llamado:El programa llamado:
Recibe los datos en un rea de la LINKAGE SECTION que debe llamarse DFHCOMMAREA.
Puede determinar la longitud de este rea a travs de EIBCALEN
La COMMAREA se pasa por referenciaLa COMMAREA se pasa por referencia
-
Control de terminalesControl de terminales
EXEC CICS
SEND
MAP(nombre)
[MAPSET(nombre)]
[ERASE]
[FREEKB]
END-EXEC
EXEC CICS
RECEIVE
MAP(nombre)
[MAPSET(nombre)]
END-EXEC
-
Lectura de ficherosLectura de ficheros
EXEC CICS
READ
DATASET(nombre)
INTO(rea-datos)
[LENGTH(long.)]
RIFLD(clave)
[KEYLENGTH(long.) GENERIC]
[GTEQ | EQUAL]
[UPDATE]
END-EXEC
-
Browse de ficherosBrowse de ficheros
EXEC CICS
STARTBR | RESETBR
DATASET(nombre)
RIFLD(clave)
[REQID(nmero)]
[KEYLENGTH(long.) GENERIC]
[GTEQ | EQUAL]
END-EXEC
EXEC CICS
ENDBR
DATASET(nombre)
[REQID(nmero)]
END-EXEC
-
Browse de ficherosBrowse de ficheros
EXEC CICS
READNEXT | READPREV
DATASET(nombre)
INTO(rea-datos)
[LENGTH(long.)]
RIFLD(clave)
[KEYLENGTH(long.)]
[REQID(nmero)]
END-EXEC
-
Escritura de ficherosEscritura de ficheros
EXEC CICS
WRITE
DATASET(nombre)
FROM(rea-datos)
[LENGTH(long.)]
RIFLD(clave)
[KEYLENGTH(long.)]
END-EXEC
EXEC CICS
REWRITE
DATASET(nombre)
FROM(rea-datos)
[LENGTH(long.)]
END-EXEC
-
Borrado/liberacin de registrosBorrado/liberacin de registros
EXEC CICS
DELETE
DATASET(nombre)
[RIFLD(clave)]
END-EXEC
EXEC CICS
UNLOCK
DATASET(nombre)
END-EXEC
-
Datos temporalesDatos temporales
Datos transitoriosDatos transitorios
Definidos previamente
Slo se leen una vez
Permiten el arranque de transacciones
Extraparticin
Intraparticin
Memoria temporalMemoria temporal
Borrado explicito
Acceso secuencial o directo
Memoria o disco
-
Colas TD (Transient Data)Colas TD (Transient Data)
EXEC CICS
WRITEQ TD
QUEUE(nombre)
FROM(rea-datos)
[LENGTH(long.)]
END-EXEC
EXEC CICS
READQ TD
QUEUE(nombre)
INTO(rea-datos)
[LENGTH(long.)]
END-EXEC
EXEC CICS
DELETEQ TD
QUEUE(nombre)
END-EXEC
-
Colas TS (Temporary Storage)Colas TS (Temporary Storage)
EXEC CICS
WRITEQ TS
QUEUE(nombre)
FROM(rea-datos)
[LENGTH(long.)]
[ITEM(rea-datos) [REWRITE]]
[MAIN | AUXILIARY]
END-EXEC
EXEC CICS
READQ TS
QUEUE(nombre)
INTO(rea-datos)
[LENGTH(long.)]
NUMITEMS(rea-datos)
[ITEM(rea-datos) | NEXT ]
END-EXEC
-
Colas TS (Temporary Storage)Colas TS (Temporary Storage)
EXEC CICS
DELETEQ TS
QUEUE(nombre)
END-EXEC
-
BMS (Basic Map Support)BMS (Basic Map Support)
Permite la definicin de mapas para la Permite la definicin de mapas para la
visualizacin de datos formateadosvisualizacin de datos formateados
Tres macros:Tres macros:
DFHMSD: define un mapset
DFHMDI: define un mapa
DFHMDF: define un campo
Genera un fichero con la definicin a Genera un fichero con la definicin a
incluir en nuestro programaincluir en nuestro programa
-
Definicin de mapasDefinicin de mapas
MAP DFHMSD TYPE=MAP,MODE=INOUT,LANG=COBOL,CTRL=FREEKB, X
TIOAPFX=YES,STORAGE=AUTO
JK01 DFHMDI SIZE=(24,80)
TRANS DFHMDF POS=(01,01),ATTRB=(FSET,UNPROT,BRT), X
LENGTH=04
DFHMDF POS=(01,30),LENGTH=21,ATTRB=(ASKIP,BRT), X
INITIAL=' CAPTURA DE PEDIDOS '
ACTCODE DFHMDF POS=(03,09), X
ATTRB=(FSET,UNPROT,IC,BRT),LENGTH=03
HDGKEY2 DFHMDF POS=(04,68),ATTRB=(FSET,NUM,BRT), X
PICOUT='Z(7)',JUSTIFY=LEFT
DRKTRAN DFHMDF POS=(03,13),ATTRB=(FSET,ASKIP,DRK), X
LENGTH=04
-
Transacciones CICSTransacciones CICS
CEMT: CEMT:
Master Terminal Transaction
CECI: CECI:
Command Level Interpreter Transaction
CEBR: CEBR:
Temporary Storage Browse Transaction
CEDF: CEDF:
Command Level Execution Diagnostic
Tansaction
CEDA:CEDA:
Resource Definition on-line
-
CEMTCEMT
CEMT InquireALL
(nombre*)
FIle
PROGram
TDqueue
TErminal
TRAnsaction
TSqueue
CEMT
Discard
Inquire
Perform
Set
CEMT Set PRogram nombre NEwcopy
-
Ejercicio IEjercicio I
Definir el siguiente mapa:
----+----1----+----2----+----3----+----4----+----5----+
EJ01 MANTENIMIENTO EMPLEADOS
=======================
Accin.....: X (A,B,M,C)
Nmero.....: 999999
Nombre.....: XXXXXXXXXXXXXXXXXXXXXXXXX
Apellidos..: XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Edad.......: 99
Ciudad.....: XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Autonoma..: XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
-
Ejercicio IEjercicio I
Realizar el programa EJCICS01 de forma que muestre el mapa anterior:
La primera vez con todos los campos en blanco y desbloqueados.
Se verificar el cdigo de accin, visualizando un mensaje de error, si el cdigo es
errneo.
Si el cdigo seleccionado es A se verificar que se han tecleado todos los campos y que
el nmero de empleado no existe ya en la tabla EMPINFO, si se han pasado las
validaciones se dar de alta en la tabla y se volver a visualizar el mapa con todos los
campos desbloqueados.
Si el cdigo seleccionado es B se verificar que se ha tecleado el nmero de empleado y
que existe en la tabla EMPINFO, si se han pasado las validaciones se eliminar de la
tabla y se volver a visualizar el mapa con todos los campos desbloqueados.
Si el cdigo seleccionado es M se verificar que se han tecleado todos los campos y que
el nmero de empleado existe en la tabla EMPINFO, si se han pasado las validaciones
se modificar en la tabla y se volver a visualizar el mapa con todos los campos
desbloqueados.
Si el cdigo seleccionado es C se verificar que se ha tecleado el nmero de empleado y
que existe en la tabla EMPINFO, si se han pasado las validaciones visualizar el mapa
con los datos de la tabla.
-
CCustomer ustomer IInformation nformation CControl ontrol SSystemystem
Producto de I.B.M. utilizado para el manejo de Producto de I.B.M. utilizado para el manejo de aplicaciones ON LINEaplicaciones ON LINE
Plataforma en el Mainframe por la cual programas Plataforma en el Mainframe por la cual programas Cobol son capaces de realizar procesos Cobol son capaces de realizar procesos transaccionales en una terminaltransaccionales en una terminal
CICS
-
FIN DE MODULO
-
FIN DE MODULO
-
42
Derechos de autorDerechos de autor
Este producto has sido elaborado porEste producto has sido elaborado por
Jorge Godnez Rodrguez.Jorge Godnez Rodrguez.
Derechos reservadosDerechos reservados
Prohibida su reproduccin parcial o total