
Sie haben im Workflow-Container ein mehrzeiliges Containerelement definiert, das zur Laufzeit eine Liste mit gleichartigen Werten enthält. Die genaue Anzahl der Werte ist zur Definitionszeit unbekannt.
Für jeden Wert aus dieser Liste soll eine bestimmte, immer gleiche Funktionalität als Schritt im Workflow ausgeführt werden.
Die Materialien, die im Zusammenhang mit einem Auftrag stehen, sind in einem mehrzeiligen Containerelement des Workflow-Containers abgelegt.
Für jedes Material soll eine Bestandsprüfung vorgenommen werden.
Neben der tabellengesteuerten, dynamischen Parallelverarbeitung gibt es noch die explizit ausmodellierte Parallelität und den Arbeitsvorrat. Weitere Informationen finden Sie unter Realisierungsmöglichkeiten einer parallelen Verarbeitung .
Folgende Voraussetzungen müssen immer erfüllt sein, um die parallel zu verarbeitenden Schritte bereitzustellen:
Der Workflow-Container enthält ein mehrzeiliges Containerelement
Ein mehrzeiliges Containerelement wird mit einer Datentypreferenz angelegt und kann daher immer nur eine Liste von Werten, die sich auf dieselbe Datentypreferenz beziehen, aufnehmen.
Ein mehrzeiliges Containerelement kann eine Liste mit Objektreferenzen sein.
Auf der Registerkarte Sonstiges haben Sie das mehrzeilige Containerelement aus dem Workflow-Container eingetragen
Ein mehrzeiliges Containerelement des Workflow-Containers kann auf verschiedene Weise aufgebaut werden:
Datenfluss aus einem mehrzeiligen Containerelement eines Aufgabencontainers (Ergebnis oder Rückgabeparameter einer Methode) in das mehrzeilige Containerelement des Workflow-Containers
wiederholter Datenfluss , z.B. in einer Schleife , aus einem einzeiligen Containerelement eines Aufgabencontainers in das mehrzeilige Containerelement des Workflow-Containers
Datenfluss in das mehrzeilige Import-Containerelement des Workflow-Containers beim Start des Workflows
Die tabellengesteuerte Parallelverarbeitung umfasst zwei Aspekte:
Erzeugung von parallelen Schritten entsprechend der Anzahl der Werte
Operation auf dem jeweils aktuellen Wert des mehrzeiligen Containerelements
Das mehrzeilige Containerelement sollte nur 99 Werte aufweisen.
Erzeugung von parallelen Schritten entsprechend der Anzahl der Werte
Das System führt einen Schritt einer Workflow-Definition in parallelen Verarbeitungszweigen so oft aus, wie Werte in dem mehrzeiligen Containerelement enthalten sind.
Zur Laufzeit generiert das Workflow-System aus dem Schritt so viele parallel zu verarbeitende Workitems, wie zu dem Zeitpunkt Werte in dem mehrzeiligen Containerelement enthalten sind
Ein Dialogschritt wird für jeden Wert des mehrzeiligen Containerelements durch ein Workitem im Business Workplace der Empfänger repräsentiert. Hintergrundschritt werden automatisch vom System ausgeführt.
Zur Definitionszeit muss die Anzahl der Werte nicht bekannt sein
Operationen auf dem jeweils aktuellen Wert des mehrzeiligen Elements
In jedem der parallel erzeugten Schritte ist ein Wert aus dem mehrzeiligen Containerelement der aktuelle Wert. Sie können zusätzlich einen Datenfluss vom jeweils aktuellen Wert des mehrzeiligen Containerelements auf ein einzeiliges Containerelement des Aufgabencontainers bzw. des Ereigniscontainers definieren.
Sie verwenden das mehrzeilige Containerelement im Datenfluss vom Workflow-Container zum Aufgabencontainer.
Der jeweils aktuelle Wert des mehrzeiligen Containerelementes kann in dem entsprechenden, parallel zu verarbeitenden Schritt verwendet werden.
Sie definieren bei der Aktivität einen Datenfluss von dem mehrzeiligen Containerelement des Workflow-Containers zu einem (einzeiligen) Containerelement des Aufgabencontainers. Das Containerelement des Aufgabencontainers muss dieselbe Datentypreferenz haben wie das mehrzeilige Containerelement.
Folgende Fälle sind möglich:
Das mehrzeilige Containerelement enthält eine Liste mit Objektreferenzen, für die Sie den Datenfluss zum Element _WI_Object_ID des Aufgabencontainers definieren
In diesem Fall führen Sie auf n Objekten ( n = Anzahl der Werte, n > 1) n mal dieselbe Einzelschrittaufgabe aus. Alle n erzeugten Workitems haben die gleichen Eingabeparameter.
Das mehrzeilige Containerelement enthält eine Liste mit ABAP-Dictionary-Referenzen oder Objektreferenzen, die allerdings nicht als _WI_Object_ID benutzt werden.
In diesem Fall führen Sie auf einem Objekt m mal dieselbe Objektmethode aus. Allerdings haben die m Workitems dann einen variablen Parameter.
Falls das mehrzeilige Containerelement eine Liste von Benutzern enthält, können Sie einen Schritt von allen Benutzern parallel ausführen lassen. Dies wird beispielsweise bei den dynamischen Workflow-Wizards genutzt. Dazu tragen Sie als zuständigen Bearbeiter &<MehrzeiligesElement>[&_WF_PARFOREACH_INDEX&]& ein. Sie können auch die F4-Eingabehilfe verwenden.
Eine Kombination beider Fälle ist nicht möglich.
Bei der Datenflussdefinition von und zu dem mehrzeiligen Containerelement verwenden Sie als Ausdruck für den Workflow-Container &<MehrzeiligesElement>[&_WF_PARFOREACH_INDEX&]&.
Wenn die Tabelle leer ist, wird der Schritt übersprungen.
Fehler bei der Ausdrucksauswertung halten den Workflow im Fehlerzustand an. Fehlermeldungen werden im Workflow-Protokoll aufgezeichnet.