Desarrollando en Cobol y Natural sobre Plataforma Mainframe

jueves, 29 de enero de 2015

Transacción CEBR: Visualización de Colas CICS (1)

La transacción CEBR es una herramienta que nos puede ser muy útil para trabajar de una forma sencilla con las Colas TS y las Colas TD. Recordemos que las Colas CICS son instrumentos auxiliares que se utilizan para almacenar información (fundamentalmente de forma temporal) que pueda ser utilizada por nuestros programas Cobol.

La transacción CEBR (BROWSE TEMPORARY STORAGE) sirve para visualizar el contenido de las Colas TS (Temporary Storage) y de las Colas TD (Transient Data). Sin más que indicar el nombre de la Cola deseada, la herramienta nos permitirá examinar el contenido de la misma en nuestra pantalla.



Al introducir la transacción CEBR en el terminal CICS, el sistema nos redirigirá al menú principal de la herramienta, que tendrá el aspecto siguiente.



A continuación estudiaremos los procedimientos a seguir para examinar tanto una Cola TS como una Cola TD. A pesar de tratarse de entidades Cola, vamos a ver que la forma de acceso al contenido difiere ligeramente si trabajamos con una TS o con una TD.

A) Visualización de una Cola TS

Para visualizar el contenido de una Cola TS (Temporary Storage) tendremos que situarnos en la línea de comandos e introducir la instrucción Q (QUEUE). Junto a ella, habrá que especificar el nombre de la Cola TS cuyo contenido deseamos examinar.

ENTER COMMAND ===> Q COLA_TS

En nuestro ejemplo, vamos a consultar el contenido de una Cola denominada COLA_TS. Por tanto, tras pulsar INTRO, la transacción CEBR mostrará la siguiente pantalla.



Tal y como se puede observar, en COLA_TS aparecen dos items (los cuales habrán sido cargados en la cola, previamente, mediante algún proceso). En la primera posición aparece el mensaje "ESTO_ES_UNA_COLA_TS" y en el segundo item aparece el texto "ESTO_TAMBIEN".

Opcionalmente, tenemos la posibilidad de borrar el contenido de la Cola TS sin más que introducir la instrucción PURGE en la línea de comandos. Su ejecución procedería a borrar todos los items, dejando la Cola totalmente vacía.

ENTER COMMAND ===> PURGE

En líneas generales, el proceso de visualización de una Cola TS es bastante simple, y no precisa seguir más pasos que los comentados previamente.

Del mismo modo que hoy hemos visto las Colas TS, el próximo día seguiremos viendo cómo se puede trabajar con las Colas TD mediante la herramienta CEBR. Tal y como hemos dicho más arriba, aunque en ambos casos estemos hablando de Colas CICS, el procedimiento de acceso al contenido cambia ligeramente según nos enfrentemos a un tipo de Cola u otro.

Y con esto terminamos. Sencillamente nos queda convocaros para la segunda parte del post, donde procederemos a examinar el resto de posibilidades que nos ofrece CEBR.

Saludos.

jueves, 8 de enero de 2015

Transacción CMSG: Servicio de mensajería CICS

En el post de hoy vamos a hablar de una nueva transacción secundaria, denominada CMSG, cuya funcionalidad nos permitirá el envío de mensajes de un terminal CICS a otro. Aunque hoy en día existen muchas alternativas de comunicación, nunca está de más saber cómo funciona el servicio de mensajería en CICS.

La transacción CMSG (MESSAGE SWITCHING) permite el envío de mensajes a través del CICS, sin más que especificar el código de terminal en el que deseamos que se visualice el texto. Puede ser empleada para, desde un terminal CICS origen, enviar un mensaje tanto a un único terminal como a un grupo de terminales destino.



Operar con esta herramienta es muy sencillo. Simplemente tendremos que introducir la transacción CMSG y, seguidamente, el código del terminal destino y el mensaje de texto que deseamos enviar. A continuación veremos un par de ejemplos, uno en el que se envía información a un terminal único y otro cuyo destino es un grupo de terminales.

A) Envío de mensaje a un terminal

Para enviar un mensaje a un terminal determinado, tendremos que indicar el código del terminal destino en una sentencia como la siguiente.

CMSG M='HOLA DESDE CICS',R=L701,S

En dicha línea se incluye la transacción CMSG, la cláusula R (ROUTE) con el código del terminal requerido (en nuestro caso, queremos enviar el mensaje al terminal L701), la cláusula M (MSG) con el mensaje de texto que vamos a enviar a la ubicación destino (en el ejemplo, "HOLA DESDE CICS") y el comando S (SEND).

Tras pulsar INTRO, en el terminal CICS L701 aparecerá la siguiente pantalla con el mensaje enviado a través de CMSG.



Como se puede apreciar, se muestra el texto "HOLA DESDE CICS", que era el mensaje que queríamos emitir desde nuestro terminal origen.

B) Envío de mensaje a un grupo de terminales

Si queremos enviar un mensaje a un grupo de terminales destino, tendremos que incluir dicho grupo en la cláusula R (ROUTE) de la transacción CMSG.

CMSG M='REINICIO DE CICS EN 15 MINUTOS',R=ALL,S

Por ejemplo, la sentencia anterior ejecutará el envío al grupo ALL (es decir, a todos los terminales del CICS) del mensaje "REINICIO DE CICS EN 15 MINUTOS". Obviamente, en R podemos incluir cualquier grupo de terminales que tengamos predefinido.

Si, tras introducir la transacción anterior, pulsamos INTRO, en todas las ubicaciones del CICS aparecerá la siguiente pantalla.



Aunque en la imagen anterior sólo se muestra el resultado de un terminal específico, en realidad en cualquiera de ellos se mostrará el mensaje "REINICIO  DE CICS EN 15 MINUTOS" (correspondiente al texto lanzado desde el terminal origen).

Como vemos, enviar mensajes desde nuestro terminal (mediante CMSG) es algo sencillo, tanto si queremos enviar un texto a un terminal único como si tenemos que publicar un comunicado destinado a todos los terminales de nuestro CICS. La operativa no tiene mayor complejidad que la indicada.

Evidentemente, CMSG se encuadra dentro de lo que hemos venido denominando transacciones secundarias de CICS. Se trata de una herramienta cuyo uso no es imprescindible en nuestro día a día pero, a pesar de ello, es conveniente saber cómo funciona por si en algún momento tenemos que recurrir a ella.

Eso es todo. Esta transacción no tiene mayor historia y estamos seguros de que, con los ejemplos mostrados, habrá quedado claro cómo es su funcionamiento.

Saludos.

viernes, 2 de enero de 2015

Transacción CEOT: Información del Terminal CICS

Hoy vamos a examinar una herramienta (transacción) muy sencillita cuya utilización nos permite acceder a la información asociada a nuestro Terminal. Fundamentalmente se emplea para determinar el código del Terminal que estamos empleando, aunque también muestra otro tipo de información.

La transacción CEOT (TERMINAL STATUS) sirve para ver el estado de nuestro Terminal CICS y configurar los parámetros asociados al mismo. A pesar de ello, en general sólo se suele utilizar cuando se precisa saber cuál es el código del Terminal desde el que tenemos que introducir los comandos CICS.



Si limpiamos la pantalla de una sesión CICS e introducimos la transacción CEOT, el primer menú que nos aparecerá en el terminal será el siguiente.



Como podemos ver, en la parte de arriba se muestra la configuración que tiene actualmente asociada nuestro terminal (STATUS).

STATUS:  RESULTS - OVERTYPE TO MODIFY
Ter(L701) Tra(CEOT) Pri(000) Pag Ins Ati Tti Net(LCL701  )
   Acq Uct
 
                                               

El primer dato (el más usado) es el código del terminal TER, que en nuestro caso es el L701. A continuación, también se indican la transacción TRA (CEOT), la Prioridad PRI (000) y el nombre de la Red NET (LCL701).

Podemos observar que en esta línea de STATUS aparecen ciertos campos en color verde: estos son los valores que nos permite modificar el sistema. Se corresponden con las siguientes características: PAGESTATUS, ATISTATUS, TTISTATUS y UCTRANST.

A este respecto, en la parte de abajo de la pantalla se nos muestran cuáles serían los posibles valores que podría tomar cada uno de estos cuatro campos.

CEOT SYNTAX:                       
 < Pageable | Autopageable >       
 < Ati | Noati >                   
 < Tti | Notti >                   
 < Uctran | Nouctran | Tranidonly >


Pulsando sobre cualquier campo del apartado STATUS accederíamos a una nueva pantalla en la que se nos presentaría, de forma más detallada, la configuración actual asociada a nuestro terminal. Del mismo modo que en el menú anterior, aquí los campos modificables también aparecen en color verde.



A continuación, en los puntos siguientes, vamos a detallar cuáles serían las diferentes opciones de las que dispondríamos en cada una de las características modificables.

1º) PAGESTATUS: Aquí podremos introducir Pageable o Autopageable. Con Pageable las páginas sucesivas de una serie se irán mostrando en el terminal conforme el usuario vaya solicitando pasar a la siguiente. Con Autopageable, en cambio, todas las páginas de la serie se irán enviando al terminal de forma automática.

2º) ATISTATUS: Disponemos de las opciones Ati o Noati. Con Ati el terminal estará disponible para ser usado por las transacciones arrancadas automáticamente desde CICS. Con Noati, como es fácil deducir, no estará disponible.

3º) TTISTATU: Podríamos introducir Tti o Notti. Tti indica, simplemente, que nuestro terminal puede ser usado por transacciones CICS. Notti, por contra, nos estaría indicando que no podría ser utilizado por las transacciones arrancadas desde nuestro terminal.

4º) UCTRANST: En este caso disponemos de tres opciones, que se aplicarían a la sesión que tengamos abierta: Uctran, Nouctran o Tranidonly. La opción Uctran activaría la traducción de mayúsculas para las aplicaciones que vayamos a ejecutar (de manera que no se distinguiría entre mayúsculas y minúsculas), mientras que Nouctran la desactivaría. Finalmente, Tranidonly indicaría que se debe emplear la traducción de mayúsculas únicamente para los códigos de Transacciones (y no para el resto de cosas que hagamos en las aplicaciones arrancadas).



Con todo lo indicado anteriormente, ya nos debería quedar una visión global bastante clara de la información que se puede obtener (y modificar) mediante el comando CEOT. Como vemos, aunque casi todo el mundo la utilizar para identificar su código de terminal, en realidad sirve para algunas cosas más.

En realidad, no hay mucho más que comentar. Se trata de una transacción muy sencilla y de uso bastante limitado. Pero, como siempre decimos, es importante conocer el alcance de estos comandos secundarios, pues algún día nos puede hacer falta modificar la configuración de nuestro terminal.

Y nada más. Como siempre, confiamos en que el post os haya servido para resolver las dudas relacionadas con CEOT. Guardadlo por ahí por si en algún momento tenéis que rescatarlo...

Saludos.

jueves, 1 de enero de 2015

Feliz Año Nuevo 2015

Nos acercamos un momento al blog simplemente para escribir unas palabras y desearos un feliz año nuevo. Pasadlo muy bien tanto hoy como el resto de días de Navidad que aún nos quedan por disfrutar. Estas son fechas para estar más tiempo con la familia, así que aprovechadlas.



Por nuestra parte, este va a ser nuestro único contacto con la programación durante el día de hoy. No hay que preocuparse ni tener prisa. En 2015 aún nos van a quedar otros 364 días para ir aprendiendo y practicando con todos esos lenguajes que queremos incorporar a nuestro repertorio...

¡Feliz Año Nuevo 2015!

Saludos.

Related Posts Plugin for WordPress, Blogger...