メッセージ・フローを MQInput、Compute、および TCPIPClientOutput ノードと併用して、ローカル環境で設定されたポートとホスト名を動的に使用するようにクライアント・ノードを構成します。
シナリオ: クライアント・ノードは動的にポートを呼び出します。
説明: 以下のステップは、ローカル環境で設定されたポートとホスト名を動的に使用するように、クライアント出力ノード上で指定されている接続の詳細を指定変更する方法を示しています。
- MQInput ノード、Compute ノード、および TCPIPClientOutput ノードを使用して、TCPIP_Task16 というメッセージ・フローを作成します。 詳しくは、メッセージ・フローの作成を参照してください。
- MQInput ノードの Out ターミナルを Compute ノードの In ターミナルに接続します。
- Compute ノードの Out ターミナルを TCPIPClientOutput ノードの In ターミナルに接続します。
- MQInput ノードで、「キュー名」プロパティー (「基本」 タブ上) を TCPIP.TASK16.IN1 に設定します。
- Compute ノードで、「ESQL」プロパティー (「基本」 タブ上) を以下のように設定します。
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;
- TCPIPClientOutput ノードで、「接続の詳細」プロパティー (「基本」 タブ上) を 9999 に設定します。
- メッセージ・フローを保存します。