So habe ich diese Anforderung, die in einem Dokument dauert, und von dem ein oder mehrere Dokumente in der Ausgabe erstellt werden müssen.IBM Integration Bus, Best Practices für den Aufruf mehrerer Dienste
Während dieses Vorgangs muss festgestellt werden, ob das Dokument bereits vorhanden ist, da verschiedene Vorgänge für das Erstellen und Aktualisieren von Szenarios gelten.
In geraden Code, würde dies einfach sein (konzeptuell)
InputData in = <something>
if (getItemFromExternalSystem(in.key1) == null) {
createItemSpecificToKey1InExternalSystem(in.key1);
}
if (getItemFromExternalSystem(in.key2) == null) {
createItemSpecificToKey2InExternalSystem(in.key1, in.key2);
}
createItemFromInput(in.key1,in.key2, in.moreData);
In der Tat eine Art "gewährleisten diese Daten vorhanden sind".
Jedoch, in IIB Wie würde ich das erreichen? Wenn ich einen Unterablauf für den Get/create-Zyklus verwende, wäre die Ausgabe des Unterflusses unabhängig vom Ergebnis der letzten Operation, wird vom Unterfluss als die neue "Nachricht" des Flusses zurückgegeben, aber wirklich, tue ich nicht Achten Sie auf den Wert aus dem Subflow "Sicherstellen, dass Daten vorhanden sind". Ich muss stattdessen weiter an meiner ursprünglichen Nachricht arbeiten, aber immer noch warten, bis die verschiedenen Subflows fertig sind, bevor ich mein endgültiges "createItem" ausführen kann