Multi-Instanz-Aktivitäten
Multi-Instanz-Aktivitäten sind Aktivitäten, die alle angegebenen Teilnehmer zugleich in ihren Körben finden und ausführen können.
Haben alle Teilnehmer ihre Aktivität weitergeleitet, wird die Transition zur Folgeaktivität beschritten.
Da viele Teilnehmer diese Aktivität zugleich ausführen, ist es in der Regel notwendig, mit lokalen Variablen zu arbeiten und die einzelnen Werte über ein EndActivity-Event zusammenzuführen.
Beispiel:
Alle Teilnehmer einer Aktivität geben über Optionsschaltflächen eine positive oder negative Bewertung ab. |
|
Die Auswertung erfolgt über ein EndActivity-Event. Gibt es mehr positive Bewertungen als negative, erhält die Variable 'ergebnis' den Wert '1'.
lCount = thisprocess.CurrentActivity.MultiInstances.Countlpos = 0
lneg = 0
for i = 0 to lCount -1
if Clng ( thisprocess.CurrentActivity.MultiInstances.Item(i)
GetDataFieldByName("bewertung.Value) = 0 then
lpos = lpos +1
else
lneg = lneg +1
end if
next
if lpos > lneg then
ergebnis.Value = 0
else
ergebnis.Value = 1
end if
Dieses Ergebnis kann bei der Folgeaktivität über die Variable 'ergebnis' angezeigt werden.
Einer Multi-Instanz-Aktivität, die bereits ausgeführt wird, kann per Skript eine weitere Instanz hinzugefügt werden.