Sie können untergeordnete Nachrichtenflüsse genauso in Ihre Nachrichtenflüsse einschließen wie integrierte
oder benutzerdefinierte Knoten.
Sie können auch ebenso mit anderen Knoten verbunden werden. Da ein untergeordneter Fluss einmalig definiert und in mehreren Nachrichtenflüssen verwendet werden kann (und sogar in mehreren Nachrichtenflussprojekten), kann er folgende Vorteile bieten:
- Wiederverwendung und reduzierte Entwicklungszeit.
- Eine konsistente Methode zum Erreichen einer bestimmten Funktion sowie eine verbesserte Verwaltbarkeit (betrachten Sie einen untergeordneten Fluss wie ein Programmierungsmakro oder Inline-Code, der einmalig geschrieben, aber an mehreren Stellen verwendet wird).
- Flexibilität. Wenn Sie einige oder alle Eigenschaften der Knoten im untergeordneten Fluss weitergeben, können Sie einen untergeordneten Fluss auf einen bestimmten Kontext zuschneiden (indem beispielsweise die Informationen der Ausgabewarteschlange oder Datenquelle aktualisiert werden).
Sie müssen jedoch berücksichtigen, dass ein untergeordneter Fluss kein einzelner Knoten ist, und dass sich die Anzahl der Knoten im Nachrichtenfluss erhöht, wenn er eingefügt wird. Dies kann sich negativ auf die Leistung auswirken.
Es folgen einige Beispiele zur Verwendung eines untergeordneten Flusses:
- Sie können einen untergeordneten Fluss definieren, der eine allgemeine Aktionsfolge bereitstellt, die im Fall eines Fehlers für mehrere Nachrichtenflüsse gilt. Es kann beispielsweise sein, dass Sie über eine allgemeine Fehlerbehebungsroutine verfügen, bei der die Nachricht über den Warehouse-Knoten in eine Datenbank geschrieben und von einer Fehlerbehebungsroutine in eine Warteschlange zur Verarbeitung eingereiht wird. Die Verwendung dieser Routine in mehreren Nachrichtenflüssen oder an mehreren Stellen in einem Nachrichtenfluss ermöglicht eine effiziente und konsistente Verwendung von Ressourcen und verhindert, dass solche Routinen bei jedem Auftreten eines Fehlers erneut erstellt werden.
- Möglicherweise verfügen Sie über eine allgemeine Kalkulation, die für Nachrichten ausgeführt werden soll, die mehrere verschiedene Nachrichtenflüsse durchlaufen. Sie könnten beispielsweise auf Wechselkurse in einer Datenbank zugreifen und diese für die Berechnung von Preisen in verschiedenen Währungen heranziehen. Der untergeordnete Fluss für die Währungsberechnung kann in jeden Nachrichtenfluss eingefügt werden, für den er sich eignet.

Verwenden Sie den Durchgangsknoten, um die Versionssteuerung eines untergeordneter Nachrichtenflusses während der Ausführung zu aktivieren.
Mit dem Durchgangsknoten können Sie eine Bezeichnung zu Ihrem Nachrichtenfluss oder untergeordneten Nachrichtenfluss hinzufügen.
Wenn Sie diese Bezeichnung mit der Schlüsselwortersetzung aus Ihrem System zur Versionssteuerung kombinieren, können Sie ermitteln, welche Version eines untergeordneten Nachrichtenflusses in einen implementierten Nachrichtenfluss eingefügt wurde.
Sie können diese Bezeichnung für Ihre eigenen Zwecke verwenden. Wenn Sie die richtigen Versionsschlüsselwörter in die Bezeichnung eingefügt haben, können Sie den Wert der Bezeichnung an folgenden Stellen sehen:
- Mit dem Befehl mqsireadbar in der Brokerarchivdatei (BAR)
- In den Eigenschaften eines implementierten Nachrichtenflusses im Message
Brokers Toolkit, wenn er zuletzt in einem bestimmten Broker implementiert wurde
- Während der Laufzeit, wenn Sie den Benutzertrace für diesen Nachrichtenfluss aktivieren.
Die Nachricht, die er an seinem Ausgangsterminal weitergibt, ist dieselbe Nachricht, die er an seinem Eingangsterminal empfangen hat. Beispiel: Wenn Sie einen untergeordneten Fluss zur Fehlerverarbeitung entwickeln, der in verschiedene Nachrichtenflüsse eingeschlossen werden soll, möchten Sie diesen untergeordneten Fluss eventuell modifizieren. Unter Umständen soll die modifizierte Version jedoch anfänglich nur einer Teilmenge der Nachrichtenflüsse zuführen, in der sie enthalten ist.
Geben Sie einen Wert für die Instanz des Durchgangsknotens an, der festlegt, welche Version des untergeordneten Flusses eingeschlossen wurde.

Die Verwendung von untergeordneten Flüssen wird in folgendem Beispiel veranschaulicht:
Die Verwendung von untergeordneten Flüssen wird im Beispielprogramm 'Error Handler' und im Beispielprogramm 'Coordinated Request Reply' veranschaulicht.
Das Fehlerbehandlungsbeispiel verwendet einen untergeordneten Nachrichtenfluss zum Erfassen von Fehlerinformationen und Speichern der Informationen in einer Datenbank.
Das Beispielprogramm 'Coordinated Request Reply' (Koordinierte Anforderungsantwort) verwendet einen untergeordneten Nachrichtenfluss zur Kapselung der Speicherung der 'ReplyToQ'- und 'ReplyToQMgr'-Werte in einer WebSphere MQ-Nachricht, so dass die Verarbeitungslogik problemlos in anderen Nachrichtenflüssen wieder verwendet werden kann und die Substitution alternativer Implementierungen möglich ist.