Personalización de TRM y ELM con COMTIContext

Los desarrolladores del Integrador de transacciones (TI) pueden pasar mensajes de solicitud de transacción con formato personalizado (TRM) o mensajes de escucha mejorados (ELM) de un programa cliente al sistema CICS y recibir TRM o ELMs con formato personalizado.

Los TRM o LOSM personalizados se pasan a través de datos de contexto. Los datos de contexto se incluyen en el parámetro COMTIContext opcional definido en el código de la aplicación cliente y deben ser el parámetro final en la llamada al método. Un TRM destinado al host debe definirse como un tipo definido por el usuario (UDT) para el modelo COM o una estructura para el modelo .NET Framework. El nombre del UDT debe comenzar con los caracteres TRMIN. Una respuesta de TRM del host también debe definirse como udT. El nombre del UDT debe comenzar con los caracteres TRMOUT. Algunos ejemplos de nombres de TRM válidos son: TRMINMyVeryOwn, TRMINStandard, TRMOUTMyVeryOwn y TRMOUTStandard.

La biblioteca o estructura de tipos puede contener varias definiciones de TRM, pero solo debe incluir un TRM para cada dirección (es decir, un TRMIN y un TRMOUT) en el parámetro COMTIContext en una sola llamada de método. Por ejemplo, en Visual Basic cada matriz COMTIContext se declara como una matriz dinámica de dimensiones única de variantes (es decir, no se especifica el número de repeticiones).

Si define varias TRM para la misma dirección, el tiempo de ejecución de TI usa solo el primer TRM que encuentra en la matriz de contexto. (En algunas circunstancias, es posible que el primer TRM encontrado no siempre sea el primero que agregó a la matriz de contexto). El tiempo de ejecución de TI omite los TRM restantes de la matriz hasta que se destruye el TRM en uso. Para asegurarse de que el tiempo de ejecución de TI usa el TRM correcto, no agregue varias TRM diseñadas para la misma dirección a una matriz de contexto.

Nota

La aplicación cliente que manipula la matriz Context debe poder tener acceso al archivo adecuado en tiempo de ejecución. Si usa Visual Basic6.0, la aplicación debe poder acceder a COMTIContext.dll. Si usa Visual Basic .NET, la aplicación debe poder acceder a Microsoft.HostIntegration.TI.ClientContext.dll.

Nota

Cuando se usa Visual Basic .NET, la estructura de datos utilizada como TRM personalizado debe estar asociada a un parámetro dentro del ensamblado. Por lo tanto, debe crear un método ficticio dentro del ensamblado, un parámetro asignado al método y la estructura de datos que se usará como TRM. Si no lo hace, se impide hacer referencia a la estructura dentro de la aplicación .NET de Visual Basic. No se requería asociar un UDT a un método en Visual Basic 6.0 porque Visual Basic 6.0 permitía hacer referencia a udT no asociados a métodos.

Consulte también

Mensajes de solicitud de transacciones
Cómo pasar un TRM personalizado