Configurar un nodo de cliente
para utilizar dinámicamente un puerto y un nombre de host
establecidos en el entorno local, utilizando un flujo de mensajes con los nodos
MQInput,
Compute y
TCPIPClientOutput.
Escenario: Un nodo de cliente llama dinámicamente a un
puerto.
Instrucciones: Los pasos siguientes muestran cómo se alteran temporalmente
los detalles de conexión especificados en un nodo de salida de cliente
para que utilice dinámicamente un puerto y un nombre de host especificados
en el entorno local:
- Cree un flujo de mensajes llamado TCPIP_Task16
con un nodo MQInput, un nodo
Compute y un nodo
TCPIPClientOutput. Para obtener más información, consulte Crear un flujo de mensajes.
- Conecte el terminal de salida del nodo
MQInput al terminal de entrada de un
nodo
Compute.
- Conecte el terminal de salida del nodo
Compute al terminal de entrada de un
nodo
TCPIPClientOutput.
- En el nodo MQInput,
establezca la propiedad Nombre de
cola (en el separador Básicas) en
TCPIP.TASK16.IN1.
- En el nodo Compute, establezca la propiedad ESQL (en el separador Básicas) en:
BROKER SCHEMA Tasks
CREATE COMPUTE MODULE TCPIP_Task16_Compute
CREATE FUNCTION Main() RETURNS BOOLEAN
BEGIN
-- CALL CopyMessageHeaders();
CALL CopyEntireMessage();
set InputLocalEnvironment.Destination.TCPIP.Output.Hostname = 'localhost';
set InputLocalEnvironment.Destination.TCPIP.Output.Port = 14156;
RETURN TRUE;
END;
CREATE PROCEDURE CopyMessageHeaders() BEGIN
DECLARE I INTEGER 1;
DECLARE J INTEGER;
SET J = CARDINALITY(InputRoot.*[]);
WHILE I < J DO
SET OutputRoot.*[I] = InputRoot.*[I];
SET I = I + 1;
END WHILE;
END;
CREATE PROCEDURE CopyEntireMessage() BEGIN
SET OutputRoot = InputRoot;
END;
END MODULE;
- En el nodo TCPIPClientOutput, establezca las propiedades Detalles de la conexión (en el separador Básicas) en 9999.
- Guarde el flujo de mensajes.