Workflow-Events im Basissystem
Im Basissystem stehen mehrere Workflow-Events zur Verfügung.
| Ereignis | Beschreibung | Zweck | Benutzen | Quelle | Thread | Listener |
|---|---|---|---|---|---|---|
| activityComplete | Zeichenfolgewert, der von Aktivitätsdefinitionen zur Antwort auf den onActivityComplete Event Handler verwendet wird. | Informiert Datensätze in der Tabelle „Workflow-Ausführungsaktivität [wf_executing]“ über den Abschluss anderer Aktivitäten im selben Workflowkontext. | Wenn die Aktivität den booleschen Wert für wf_executing.notify_termination festlegen darf, dann wird der Wert während des onExecute-Event auf true (activity.notify_termination = true) festgelegt. |
Workflow-Engine, Prozessabbrüche | Aktueller Thread, aktueller Mutex | Join-Aktivität |
| otherEvent | Zeichenfolgewert, der von der Join-Aktivität verwendet wird, um auf ein otherEvent zu reagieren. | Informiert Datensätze in der Tabelle „Workflow-Ausführungsaktivität [wf_executing]“ über ein otherEvent, das abgeschlossen wurde. | Die Join-Aktivität wechselt von n-Anzahl vorhergehender Aktivitäten. Diese vorhergehenden Aktivitäten erstellen alle einen wf_executing-Datensatz, der eine Überprüfung auslöst, ob der Datensatz bereits vorhanden ist. Wenn Join bereits existiert, dann legt das vom ausführenden Übergang erstellte Join den Datensatz wf_executing zum Löschen fest. | Join-Aktivität | Aktueller Thread, aktueller Mutex | Join-Aktivität, onOtherEvent Event Handler |
| timer | Zeichenfolgewert, der von Workflow-Aktivitäten verwendet wird, um auf eine abgelaufene Timer-Aktivität zu reagieren. | Ermöglicht, dass wf_executing-Datensätze über eine abgeschlossene Timer-Aktivität informiert werden, die das Timer-Event ausgelöst hat. | Die Timer-Aktivität plant einen Job, der ein Skript aufruft. Das Skript ruft fireEvent (wf_executing, Timer) auf. | Timer-Aktivität über einen geplanten Job | Worker-Thread, privater Mutex | Timer-Aktivität, onTimer Event Handler |
| execute | Zeichenfolgewert, der von Workflow-Aktivitäten verwendet wird, um auf eine abgelaufene Timer-Aktivität zu reagieren. | Informiert einen Datensatz in der Tabelle wf_executing mit dem Anfangsstatus Executing mit der Hauptaufgabe fortzufahren. | Die Workflow-Engine erstellt für jeden ausgeführten Übergang einen ausführenden Datensatz mit dem Status Executing. Nach der Erstellung wird der ausführende Datensatz zur Verarbeitung in eine Warteschlange gestellt. Für jedes Element in der Warteschlange werden die Rhino-Globals festgelegt, die Aktivitätsdefinition, die den ausführenden Datensatz steuert, wird instanziiert und die run()-Funktion wird aufgerufen. Wenn der Status eines Datensatzes Executing lautet, ruft diese Funktion immer onExecute auf. | Workflow-Engine, über den WFActivity Handler | Aktueller Thread, aktueller Mutex | Alle Aktivitäten, onExecute Event Handler |
| execute (spezifisch für Lock) | Zeichenfolgewert, der von der Lock-Aktivität verwendet wird, um auf eine Wartesperre zu antworten, die bereit ist, einen weiteren Versuch durchzuführen, eine bestimmte Sperre zu erhalten. Diese Ausführung unterscheidet sich von der vorherigen Ausführung, da sie in angegebenen Intervallen auf einem separaten Thread aufgerufen und als externes Event behandelt wird. | Informiert einen wf_executing-Datensatz, der auf die Ausführung wartet, dass das angegebene Warteintervall abgelaufen ist und versucht werden sollte, die Sperre erneut zu erhalten. | Von der Lock-Aktivität wird ein Job mit einem Skript geplant, von dem die Methode fireEvent (wf_executing, 'execute') der Workflow-Skripteinbindung verwendet wird. | Lock-Aktivität über eine regelmäßige Aufgabe | Worker-Thread, privater Mutex | Lock-Aktivität, onExecute Event Handler |
| determineApprovalState | Zeichenfolgewert, der von Genehmigungsaktivitäten verwendet wird, um auf eine Änderung des allgemeinen Genehmigungsstatus des aktuellen Datensatzes zu reagieren. | Informiert wf_executing-Datensätze für Genehmigungsaktivitäten über eine Genehmigung, die abgeschlossen ist und das Timer-Event ausgelöst hat. | Genehmigungskoordinator registriert für das Event und löst das Event aus. Die untergeordneten Genehmigungen haben Listener, die ihren Genehmigungsstatus bestimmen. | Genehmigungskoordinator löst das Event während seines onExecute aus | Aktueller Thread, aktueller Mutex | Genehmigungskoordinator. Genehmigung - Benutzer und Genehmigung - Gruppe haben alle onDetermineApprovalState Event Handler. Wenn der Status nicht Beantragt lautet, gilt die Aktivität als abgeschlossen und der Genehmigungsstatus (Genehmigt, Abgelehnt, Abgebrochen ) ist auf die Spalte wf_executing.result festgelegt. |
| cancel (aus den Aktivitätsdefinitionen) | Zeichenfolgewert, der von Workflow-Aktivitäten verwendet wird, um auf eine Abbruchanforderung zu reagieren. | Informiert alle wf_executing-Datensätze in einem Kontext darüber, dass der Workflow abgebrochen wird. | Von der Ende-Aktivität wird das globale workflow.broadcastEvent ('cancel') verwendet, um die aktuell laufenden wf_executing-Datensätze zu unterbrechen. Dies ändert den Status dieser Datensätze zu Abgebrochen. | Ende-Aktivität | Aktueller Thread, aktueller Mutex | Alle Aktivitäten, onCancel-Event-Handler |
| cancel (außerhalb des aktuellen Kontextes) | Zeichenfolgewert, der von Workflow-Aktivitäten verwendet wird, um auf eine Abbruchanforderung zu reagieren. | Dieses Event ist das gleiche wie das vorstehende Abbruch-Event und wird ebenso behandelt. Die Verwaltung dieses Event unterscheidet sich jedoch geringfügig. Das Event informiert alle wf_executing-Datensätze in einem Kontext darüber, dass der Workflow abgebrochen wird. Das Event wird über den onCancel Event Handler jeder ausführenden Aktivitätsdefinition verwaltet, das Event wird jedoch anders aufgerufen. Insbesondere wird der Aufruf zum Abbrechen von außerhalb einer Aktivitätsdefinition durch den aktuellen Mutex blockiert. Dies ist insofern ein wesentlicher Unterschied, als das Event eine aktuell ausgeführte Aktivität nicht unterbricht, die noch innerhalb der Parameter des aktuellen Mutex agiert. | Jedes Skript kann über die Workflow-Skripteinbindung den Befehl„ cancel“ für einen bekannten ausführenden Kontext aufrufen. Zum Beispiel var w = neuer Workflow(); w.cancel(Kontext); //wobei Kontext ein GlideRecord des abzubrechenden Kontexts ist. |
Jede Skripteinbindung, regelmäßige Aufgabe, UI-Aktion oder andere Quelle | Aktueller Thread, privater Mutex | Alle Aktivitäten, onCancel Event Handler |
| stop (siehe Ende-Aktivität) | Die Ende-Aktivität prüft, ob dieses Event vorhanden ist. | Wenn das Stopp-Event das aktuelle Event ist, dann wird der Abbruchvorgang der Ende-Aktivität umgangen. | Nur in der Ende-Aktivität. | Jedes Skript kann das Stopp-Event über eine Skripteinbindung oder eine Workflow-Aktivität Skript ausführen auslösen oder übertragen | Aktueller Thread, aktueller Mutex | Dieses Event wird von der Ende-Aktivität verwendet, um die Abbrechen-Aktivität auszuschließen und das Ende eines Workflows zu ermöglichen, auch wenn dieser abgebrochen wurde. |
| listener | Zeichenfolgewert, der die Workflow (Unterablauf)-Aktivität als Event auslöst. | Wenn ein Hauptworkflow einen Unterablauf aufruft, behält der Workflow die ID des Kontextes des Unterablauf im Scratchpad bei. Wenn der Unterablauf abgeschlossen ist, wird das Listener-Event über eine Business Rule (Geschäftsregel) ausgelöst. | Das Listener-Event wird nach Abschluss eines Unterablaufs an den übergeordneten Kontext übergeben und von der Aktion onListener der Workflow-Aktivität verwaltet. | Business Rule, die durch die Aktualisierung eines Workflows mit einem übergeordneten Element ausgelöst wird | Aktueller Thread, aktueller Mutex | Dieses Event wird von einem Unterablauf verwendet, um den übergeordneten Flow darüber zu informieren, dass er abgeschlossen ist. Der übergeordnete Workflow reagiert auf dieses Event und wird fortgesetzt. |
| probe_complete | Zeichenfolgenwert, der im Workflow durch eine Orchestration-Aktivität ausgelöst wird, um anzuzeigen, dass der MID-Server eine Aufgabe ausgeführt hat. | Das probe_complete-Event wird von Orchestration-Sensorprozessoren über die Workflow-Hilfsfunktion handleEventById ausgelöst. | Der onProbe_complete Event Handler befindet sich im WebServiceActivityHandler und wird von den meisten Orchestration-Aktivitäten verwendet. | Event, mit dem ein Workflow wiederhergestellt wird, der darauf wartet, dass der MID-Server eine Aufgabe oder Aktivität verarbeitet | Worker-Thread, privater Mutex | Orchestration-Aktivitäten |
| pause | Zeichenfolgewert, der von einem SLA an einen Workflow gesendet wird, um die Timer-Aktivität anzuhalten. | Wenn ein SLA angehalten ist, müssen die SLA-Workflows angehalten werden, wenn ein Timer ausgeführt wird. | Die Verwendung erfolgt ausschließlich für den SLA-Timer. | SLA | Business Rule-Thread, privater Mutex | Timer-Aktivität |
| resume | Zeichenfolgewert, der von der Timer-Aktivität verwendet wird, um einen angehaltenen Timer fortzusetzen (siehe Pause). | Wenn ein SLA wieder aufgenommen wird, müssen auch die SLA-Workflows wieder aufgenommen werden. | Die Verwendung erfolgt ausschließlich für den SLA-Timer. | SLA | Business Rule-Thread, privater Mutex | Timer-Aktivität |