また、同じ仕方でそれらを他のノードに接続することもできます。 サブフローは一度定義すれば、複数のメッセージ・フローで使用できるので (複数のメッセージ・フロー・プロジェクトでも使用可)、サブフローには以下の利点があります。
ただし、サブフローは単一のノードではないので、それを組み込めばメッセージ・フロー内のノード数が増えて、パフォーマンスに影響を与えるかもしれないことを覚えておく必要があります。
サブフローの使用については、次の例をご覧ください。
Passthrough ノードは、サブフローの中で、Input ノードに続く最初のノードとして使用することができます。
これにより、このノードがどのサブフローの中に組み込まれているかを識別します。ID (ラベル) を、必要にかなうあらゆる方法で指定できます。
例えば、ノードが構成されているフローのレベルまたはバージョンを識別することができます。
Passthrough ノードは、メッセージの処理をまったく行いません。
このノードが out ターミナルに伝搬するメッセージは、in ターミナルで受信したメッセージと同一です。
例えば、いくつかのメッセージ・フローに組み込まれるエラー処理サブフローを開発している場合に、このサブフローを変更する必要が生じるかもしれません。
しかし、初めは、この変更済みバージョンを、組み込み先のメッセージ・フローのサブセットにだけ導入したいと思うかもしれません。
Passthrough ノードのインスタンスに、組み込んだサブフローのバージョンを識別する値を設定することができます。
次は、サブフローの使用例です。
サブフローの使用例が、Error Handler サンプルおよびCoordinated Request Reply サンプルに示されています。 Error Handler サンプルでは、サブフローを使用してエラーについての情報をトラップし、情報をデータベースに保管します。Coordinated Request Reply サンプルでは、処理ロジックを他のメッセージ・フローで再利用しやすくし、代替インプリメンテーションを置換できるようにするために、サブフローを使用して ReplyToQ および ReplyToQMgr 値の保管を WebSphere MQ メッセージ内でカプセル化します。