変更の始まり

WebSphere MQ メッセージ・グループ内のメッセージの送信

MQOutput ノードは、WebSphere® MQ メッセージ・グループを形成する複数メッセージを送信できます。メッセージ・グループ・オプションを指定するために、Compute ノードを構成して MQMD フィールドを設定してください。

メッセージ・フローには以下の MQMD フィールドを設定する必要があります。
  • GroupId
  • MsgSeqNumber
  • MsgFlags
Compute ノードは以下の目的で使用できます。これらのフィールドの設定法を示しています。
DECLARE MSGNUM INT 0;
  DECLARE MSGTOTAL INT 5;
  WHILE MSGNUM < MSGTOTAL DO
    SET MSGNUM = MSGNUM + 1;
    CALL CopyMessageHeaders();
    -- Manually set the groupId since we cant ask the queue manager to generate one.
    -- the UUIDASBLOB function could be used here to generate one, but this must be done
    -- outside the loop to keep the same groupId throughout!
    SET OutputRoot.MQMD.GroupId = X'000000000000000000000000000000000000000000000001';
    SET OutputRoot.MQMD.MsgSeqNumber = MSGNUM;
    SET OutputRoot.MQMD.MsgFlags = MQMF_MSG_IN_GROUP;
    IF (MSGNUM = MSGTOTAL) THEN
      SET OutputRoot.MQMD.MsgFlags = MQMF_LAST_MSG_IN_GROUP;
    END IF;
    SET OutputRoot.XML.TestCase = MSGNUM;
    PROPAGATE;
  END WHILE;
  RETURN FALSE;

メッセージ・フローが 1 つの入力メッセージから複数のメッセージを送信している場合、GroupId 値を作成し、MsgSeqNumber 値を増分し、MsgFlags フィールドを設定できます。この ESQL 例は、これを行う方法を示しています。しかし、メッセージ・フローが複数の入力メッセージから複数のメッセージを送信している場合には、フロー・インスタンス間で GroupId 値と MsgSeqNumber 値を保管する必要があります。共用変数を使用すると、これが可能です。

メッセージ・グループ化の詳細については、WebSphere MQ バージョン 6 インフォメーション・センター・オンラインの「アプリケーション・プログラミング・ガイド」セクション、あるいは WebSphere MQ ライブラリー Web ページ のバージョン 5.3 ブックを参照してください。メッセージ・グループ化で重要となる WebSphere MQ フィールドについての詳細は、WebSphere MQ バージョン 6 インフォメーション・センター・オンラインの「アプリケーション・プログラミング・リファレンス」セクション、あるいは WebSphere MQ ライブラリー Web ページ のバージョン 5.3 ブックを参照してください。

関連資料
MQOutput ノード
関連情報
WebSphere MQ バージョン 6 インフォメーション・センター・オンライン
WebSphere MQ ライブラリー Web ページ
特記事項 | 商標 | ダウンロード | ライブラリー | サポート | フィードバック

Copyright IBM Corporation 1999, 2009Copyright IBM Corporation 1999, 2009.
最終更新 : 2009-02-20 12:43:00

ac25710_

変更の終わり