Vínculo de CICS LU6.2

El modelo de programación de vínculos de CICS LU6.2 es uno de los modelos más sencillos que puede utilizar para implementar la funcionalidad TI.

En la ilustración siguiente se resume el flujo de trabajo que se produce entre el cliente, la transacción reflejada CICS predeterminada y el programa de transacción del sistema central. Los números entre paréntesis indican el orden aproximado en el que se producen los eventos. Después de la ilustración se muestra una descripción más detallada de los eventos.

Image that shows a Transaction Integrator sending and receiving parameters with DPL information from a CICS Mirror Transaction.
Integración de transacciones que envía y recibe parámetros con información de DPL desde una transacción reflejada CICS

El modelo de programación de vínculos de CICS LU6.2 funciona de la siguiente manera:

  1. Una aplicación invoca un método en TI.

  2. El runtime de TI llama al proxy de TI.

  3. El proxy de TI hace lo siguiente:

    1. Lee en el ensamblado y los metadatos que creó anteriormente el diseñador de TI.

    2. Asigna los tipos de datos de .NET Framework a los tipos de datos COBOL.

      A continuación, el proxy de TI realiza estas acciones:

    3. Llama a las rutinas de conversión para convertir los datos de la aplicación en tipos COBOL del equipo central.

    4. Compila el búfer del flujo de datos plano que representa el cuaderno de copia o la declaración de COBOL.

    5. Pasa el mensaje al componente de transporte SNA.

  4. TI envía la solicitud CSMI de nombre de procesamiento de transacciones que se especifica en el método de componente TI a la transacción reflejada CICS con información de DPL y el protocolo LU6.2. (IBM proporciona a CSMI CICS en los sistemas de requisitos previos de TI).

    La transacción reflejada de CICS es un procesamiento de transacciones de CICS especial que actúa como puerta de enlace entre los procesamientos de transacciones que se ejecutan en regiones de CICS diferentes, lo que les permite intercambiar datos a través de COMMAREA. TI aprovecha este método estándar de comunicación entre los procesamientos de transacciones de CICS para acceder a los TP del sistema central. CSMI controla todas las propiedades de transacciones y APPC que se necesitan en la comunicación. El TRANID de este procesamiento de transacciones es CSMI.

    El Enlace de programa distribuido (DPL) es el protocolo que se utiliza al comunicarse con CSMI. TI usa DPL para comunicarse con CSMI.

  5. CSMI (la transacción reflejada de CICS) toma el control y emite un comando EXEC CICS Link al procesamiento de transacciones del servidor solicitado en CICS. (El nombre de este programa se puede asociar al entorno remoto (RE) y al nombre del método en el diseñador de TI).

  6. La transacción reflejada de CICS pasa el COMMAREA que contiene los campos de entrada al TP del servidor.

    COMMAREA es un área de comunicación de hasta 32 KB que contiene todos los datos que se transmiten al programa del sistema central y desde este. Muchos TP de CICS, escritos en COBOL, usan esta área del código de transacción del sistema central para intercambiar datos. Al utilizar CICS Link con el modelo de programación LU6.2, TI aparece en el TP del sistema central simplemente como otro TP de CICS que intercambia datos a través de COMMAREA.

    El TP de servidor es el TP que TI invoca en nombre de la aplicación cliente. Contiene la lógica de negocios que se ejecuta y se identifica con su TRANID en la llamada al método de la aplicación cliente.

    Nota

    El término TP de servidor se usa para identificar el TP al que está accediendo TI. Esta aclaración es necesaria porque el acceso a las aplicaciones del sistema central puede implicar una serie de TP (y, por lo general, lo hace).

  7. Cuando se termina de procesar el TP de servidor, emite un comando EXEC CICS RETURN que devuelve los datos del área COMMAREA a la transacción reflejada de CICS con todos los campos de salida actualizados.

  8. Si es necesario, la transacción reflejada de CICS devuelve los datos de salida a TI.

  9. El proxy de TI recibe los datos de respuesta y procesa dicha respuesta. El proxy de Automation de TI:

    1. Recibe el mensaje del componente de transporte SNA.

    2. Lee el búfer de mensajes.

      El proxy de Automation de TI:

    3. Asigna los tipos de datos COBOL a los tipos de datos de .NET Framework.

    4. Llama a las rutinas de conversión para convertir los tipos COBOL del equipo central en los datos de la aplicación.

  10. El runtime de TI devuelve los datos convertidos a la aplicación COM o .NET Framework que invocó el método.

    Solo se admite el modelo de flujo con CICS Link, por lo que los conjuntos de registros no delimitados no se admiten para esta clase de TP. Se admiten conjuntos de registros de tamaño fijo (es decir, conjuntos de registros delimitados).

    CSMI también controla las interacciones de sincronización de nivel 2 con TI y, por lo tanto, proporciona de forma transparente la funcionalidad 2PC para los programas de esta clase.

    Es posible que los programas CICS existentes ya estén estructurados así. En lugar de que TI emita la solicitud LU 6.2, es posible que otro TP de CICS ya haya emitido un comando EXEC CICS Link para ejecutar el programa CICS que se muestra en la ilustración anterior. En ese caso, tanto el TP de CICS existente como el componente de TI pueden coexistir y ejecutar el mismo programa CICS.

Nota

CSMI es el nombre predeterminado de la transacción reflejada, pero puede especificar otro nombre.

Host Integration Server incluye código de ejemplo que muestra cómo implementar el modelo de programación cicS LU6.2 Link. El código de ejemplo se encuentra en \installation directory\SDK\Samples\AppInt. Inicie Microsoft Visual Studio, abra el tutorial que desea usar y siga las instrucciones del archivo Léame.

Consulte también

Componentes del Integrador de transacciones
Convertir tipos de datos de Automation a OS/390 COBOL]
Conversión de tipos de datos de COBOL para OS/390 a Automation
Componentes de CICS
Runtime de TI
Selección del modelo de programación adecuado
Modelos de programación