Hace algunas semanas comenzamos a revisar el funcionamiento de la transacción CEDF de depuración CICS. Aunque ya vimos cuáles eran las pantallas básicas de la herramienta, nos quedó pendiente mostrar cómo se visualizaría en el depurador el proceso de envío y de recepción de datos entre un Mapa y un programa Cobol.
En la primera parte estuvimos viendo cuáles eran los pasos iniciales a seguir para navegar por CEDF (ver post Transacción CEDF - Herramienta CICS de depuración - 1). A continuación, continuaremos mostrando cuáles serían las etapas correspondientes si quisiéramos simular, desde el depurador, el proceso de comunicación entre un Mapset y el programa que lo invoca.
6º) Si ahora pulsamos INTRO, se mostrará en pantalla el mapa enviado y
podremos operar sobre él del mismo modo que lo haríamos si no
estuviésemos en modo depuración.
7º)
En el ejemplo que estamos tratando, procedemos a introducir el valor
'3' en
el campo EQUIPO y, a continuación, pulsamos la tecla INTRO. De este
modo, pasamos de nuevo a una pantalla con estado "COMMAND EXECUTION
COMPLETE".
Como vemos en la imagen, el comando ejecutado es EXEC CICS RECEIVE MAP
y el MAP asociado es el JJ0005M. En el parámetro INTO, que es la
información que nuestro programa Cobol recibe del terminal, vemos que
aparece el valor '003' (el número de equipo que hemos introducido
previamente en el mapa).
8º) Si pulsamos INTRO se mostrará de nuevo el mapa con la información que se ha recuperado para el elemento solicitado
(el '003', en nuestro caso). Como vemos, ya aparecen rellenos los
campos N+PTOS, GOLES FAVOR y GOLES CONTRA, que inicialmente estaban
vacíos.
9º) A continuación, pulsando INTRO pasaremos otra vez a la pantalla con estado "COMMAND EXECUTION COMPLETE", en la que se ha ejecutado el comando EXEC CICS SEND MAP.
Podemos ver que los parámetros ahora muestran la siguiente información:
MAP ('JJ0005A')
FROM ('......6.003...21REAL MADRID ...3.53 ...1.6'...)
LENGTH (74)
MAPSET ('JJ0005M')
TERMINAL
ERASE
NOHANDLE
El
parámetro FROM muestra la información que se envió al mapa y se mostró
en el terminal. En el ejemplo, en el contenido de esta línea podemos
apreciar el nombre del equipo (REAL MADRID), los puntos (53), los goles a
favor (60) y los goles en contra (21). Esto siempre nos será de mucha
ayuda para ver qué es lo que realmente se está intentando enviar desde
el programa Cobol hacia el Mapset.
10º) Finalmente, pulsando otra vez INTRO, pasaremos a una pantalla en la que se nos muestra el estado TASK TERMINATION, lo que
significa que ha terminado la ejecución de la tarea de la transacción y se devuelve el control al CICS.
Para salir del CEDF tendremos que acordarnos de indicar 'NO' en el campo REPLY de la ventana y pulsar la tecla INTRO.
REPLY: NO
De
este modo volveremos al terminal CICS y ya nos encontraremos fuera de
la funcionalidad del entorno de depuración de esta valiosa herramienta.
Al
principio, puede parecer un poco complejo ir navegando por todas las
pantallas de la transacción CEDF. Sin embargo, en realidad se trata de
un proceso bastante repetitivo y, en cuanto lo hayamos usado un par de
veces, no tardaremos en acostumbrarnos a interpretar los datos
proporcionados por este Debugger.
Como hemos dicho al
principio, se trata de una herramienta muy útil (y casi imprescindible a
la hora de detectar los errores con rapidez). Obviamente, existen
otras formas de detectar los problemas en nuestros programas Cobol pero,
si nos acostumbranos a usar CEDF, pronto nos daremos cuenta de que el
proceso de depuración nos ayuda a que la búsqueda sea mucho más rápida.
Pues
nada, esperamos que, con lo comentado, sea suficiente para que os
hagáis una idea de cómo es el funcionamiento de la transacción CEDF.
Ahora ya es decisión vuestra aprender a utilizarla (o no).
Saludos.
No hay comentarios:
Publicar un comentario