Anfang des InhaltsbereichsHintergrunddokumentation Definition als synchrone oder asynchrone Methode Dokument im Navigationsbaum lokalisieren

Berücksichtigen Sie bei der Entscheidung, ob Sie eine Methode als synchrone und asynchrone Methode definieren wollen, das Umfeld der späteren Verwendung der Methode in einer Aufgabe:

Definition als ...

Verwendung

asynchrone Methode

Eine Aufgabe, die sich auf eine asynchrone Objektmethode bezieht, muß mit mindestens einem beendenden Ereignis definiert sein. Wenn Sie eine asynchrone Methode definieren, müssen Sie sicherstellen, daß nach der Durchführung der Methode eines der beendenden Ereignisse ausgelöst wird.

Zur Laufzeit wird das entsprechende Workitem nur beendet, wenn eines der definierten, beendenden Ereignisse eintrifft.

synchrone Methode

Eine Aufgabe, die sich auf eine synchrone Objektmethode bezieht, kann mit beendenden Ereignissen definiert sein.

Zur Laufzeit wird das entsprechende Workitem in der Regel dadurch beendet, daß die synchrone Methode erfolgreich durchlaufen wurde. Das Workitem wird aber auch beendet, wenn eines der definierten, beendenden Ereignisse eintrifft.

Wann definieren Sie asynchrone Methoden?

Sie definieren eine Methode als asynchrone Methode, wenn Sie wollen, daß eine Aufgabe, die diese Methode verwendet, ausschließlich über Ereignisse beendet wird. Gründe für die Definition einer Methode als asynchrone Methode können sein:

Die Funktion innerhalb der Methode nutzt den Verbucher

Die Methode wird durch ein Ereignis beendet, das bei erfolgreicher Verbuchung erzeugt wird.

Hinweis

Wenn Sie die Methode in diesem Fall trotzdem als synchrone Methode definieren, können durch Verbuchungsabbrüche oder -verzögerungen die Daten des Workflow und die aktuellen Daten auf der Datenbank inkonsistent werden.

Die Methode kann auch außerhalb des Workflow aufgerufen werden

Wenn es passieren kann, daß ein Benutzer die in der Methode gekapselte Funktion auch außerhalb des Workflow aufruft, obwohl das Objekt zeitgleich auch unter der Kontrolle eines Workflow bearbeitet wird, sollten Sie die Methode als asynchrone Methode implementieren. Es ist dann unerheblich, ob der Aufruf der Funktion innerhalb oder außerhalb des Workflow-Systems erfolgt. Nach dem Eintreffen des Ereignisses wird der Workflow fortgesetzt.

In der Aufgabe wird eine asynchrone Methode mit umfassender Funktionalität aufgerufen

Durch die beendenden Ereignisse erhält diese Aufgabe ihren spezifischen Charakter.

Beispiel

In einer Aufgabe soll ein bestimmter Auftrag für die Faktura freigegeben werden. In der Aufgabe rufen Sie dazu die (allgemeine) Methode Auftrag bearbeiten auf und tragen als beendendes Ereignis das Ereignis Fakturasperre gelöscht ein.

Die Aufgabe, soll auch durch solche Ereignisse beendet werden können, die sich nicht notwendigerweise aus der Methodenbearbeitung ergeben

Beispiel

Die Aufgabe, in der die Methode Kundenauftrag bearbeiten ausgeführt wird, wird auch durch das Ereignis Kunde zahlungsunfähig beendet.

Wann definieren Sie synchrone Methoden?

Sie definieren eine Methode als synchrone Methode, wenn Sie Bearbeitungsergebnisse als Methodenparameter oder als Ergebnis nutzen wollen.

Weitere Gründe für die Definition einer Methode als synchrone Methode können sein:

Die Funktion innerhalb der Methode nutzt keinen Verbucher

Die Methode soll "einfach nur" ausgeführt werden

Beispiel

Die Methode Display zum Anzeigen eines Objektes.

Die Methode soll innerhalb der Bearbeitung einer Aufgabe mehrfach aufgerufen werden können

Die Bearbeitung der Aufgabe ist erst dann beendet, wenn der Bearbeiter im Business Workplace den Bearbeitungsstatus auf beendet setzt.

Beispiel

Die Methode Brief schreiben.

Es stehen keine geeigneten Ereignisse zur Verfügung

Es stehen keine Ereignisse zur Verfügung, die als beendende Ereignisse geeignet sind, und Sie haben keine Möglichkeit, die fehlenden Ereignisse zu erzeugen.

Ende des Inhaltsbereichs