2016-06-28 7 views
0

MQ入力ノードを使用してメッセージを受信し、メッセージに含まれるソース・システムの値に基づいて、トピック・ストリングを形成し、メッセージ。私の流れがどのように見えるかです:複数のトピック・ストリング(IBM Integration Bus)にメッセージをパブリッシュする

MQInput - >計算 - >出版

そして、私が使用してトピックの値を移入: SETをOutputRoot.Properties.Topic = 'ます。topicName /' || sourceName;

メッセージに1つの送信元システムが含まれている場合、これは問題なく動作します。

しかし、メッセージには複数のソースシステムが含まれている可能性があります。上記のコマンドを使用して、複数のトピック文字列でメッセージを公開することはできますか? (このようなもの)

SET OutputRoot.Properties.Topic = 'トピック/' || sourceName1;

SET OutputRoot.Properties.Topic = 'トピック/' || sourceName2;

ご意見をお寄せください。

答えて

1

異なるトピック文字列を設定してComputeノードから2つのメッセージを伝播する必要があります。

PROPAGATE ESQLステートメントを使用して返信せずにメッセージを伝播できます。 だからあなたのコードは次のようになります。

<Create message in OutputRoot> 

SET OutputRoot.Properties.Topic = 'TopicName/' || sourceName1; 
PROPAGATE DELETE NONE; 

SET OutputRoot.Properties.Topic = 'TopicName/' || sourceName2; 
RETURN TRUE; 
0

プロパティでは、あなたは、各プロパティの値を1つのみ設定することができます。

あなたがやりたいことをするには、複数のメッセージを生成する必要があります。これは、上記のようにESQLのPROPAGATEキーワードを使用して行います。

関連する問題