Freigeben über


Benutzerdefinierte Aktionen aus einem Workflow erstellen und bearbeiten

Dieses Thema bezieht sich auf Dynamics 365 Customer Engagement (on-premises). Die Power Apps-Version dieses Themas finden Sie unter: Benutzerdefinierte Aktionen aus einem Workflow konfigurieren

Sie können eine benutzerdefinierte Aktion von einem Workflow aktivieren, ohne Code zu schreiben. Weitere Informationen: Benutzerdefinierte Aktionen aus einem Workflow aufrufen.

Möglicherweise müssen Sie auch eine Aktion erstellen, die bewirkt, dass ein Entwickler sie in Code verwenden kann, oder Sie müssen eine vorher definierte Aktion bearbeiten. Denken Sie wie bei Workflowprozessen dabei an Folgendes:

  • Was soll die Aktion bewerkstelligen?

  • Unter welchen Bedingungen soll die Aktion ausgeführt werden?

Anders als bei Workflowprozessen müssen Sie die folgenden Optionen nicht einstellen:

  • Starten bei: Aktionen starten, wenn der Code die für sie generierte Meldung aufruft.

  • Bereich: Aktionen werden immer im Kontext des aufrufenden Benutzers ausgeführt.

  • Im Hintergrund ausführen: Aktionen sind immer Echtzeitworkflows.

Im Gegensatz zu Workflowprozessen verfügen Aktionen über Eingabe- und Ausgabeargumente. Weitere Informationen: Prozessargumente definieren

Erstellen von Aktionen

Wichtig

Wenn Sie eine Aktion erstellen, die als Teil einer Lösung eingeschlossen sein soll, die verteilt wird, erstellen Sie sie im Kontext der Lösung. Navigieren Sie zu Einstellungen>Lösungen, und suchen Sie die nicht verwaltete Lösung, deren Teil diese Aktion sein wird. Wählen Sie dann auf der Menüleiste Neu>Prozess aus. Dadurch wird sichergestellt, dass das dem Namen der Aktion zugeordnete Anpassungspräfix konsistent mit den anderen Komponenten in der Lösung ist. Nachdem Sie die Aktion erstellt haben, können Sie das Präfix nicht mehr ändern.

Wie Workflowprozesse haben Aktionen die folgenden Eigenschaften im Dialogfeld Prozess erstellen.

Prozessname
Nachdem Sie einen Namen für den Prozess eingegeben haben, wird ein eindeutiger Name für ihn erstellt, indem alle Sonderzeichen oder Leerzeichen vom Prozessnamen entfernt werden.

Kategorie
Diese Eigenschaft legt fest, dass es sich um einen Aktionsprozess handelt. Eine spätere Änderung ist nach dem Speichern des Prozesses nicht möglich.

Entität
Bei Aktionsprozessen können Sie eine Entität auswählen, um den Kontext für den Workflow bereitzustellen, wie bei anderen Arten von Prozessen, Sie haben aber auch die Möglichkeit zur Auswahl von Keine (global). Verwenden Sie dies, wenn Ihre Aktion nicht den Kontext einer bestimmten Entität erfordert. Eine spätere Änderung ist nach dem Speichern des Prozesses nicht möglich.

Typ
Verwenden Sie diese Eigenschaft, um zu wählen, ob Sie eine neue Aktion von Grund auf erstellen oder von einer vorhandenen Vorlage ausgehen.

Aktionen bearbeiten

Sie müssen Prozesse deaktivieren, bevor Sie sie bearbeiten können.

Sie können eine Aktion bearbeiten, die als Teil einer nicht verwalteten Lösung erstellt oder einer Lösung hinzugefügt wurde, die in Ihrer Organisation eingerichtet wurde. Ist die Lösung eine verwaltete Lösung, können Sie sie möglicherweise nicht bearbeiten. Der Lösungsherausgeber hat die Möglichkeit, die verwalteten Eigenschaften zu bearbeiten, sodass die Aktion, die mit einer verwalteten Lösung installiert wurde, nicht bearbeitet werden kann.

Wenn eine Aktion gespeichert wird, wird ein eindeutiger Name auf der Grundlage des Prozessnamens generiert. Diesem eindeutigen Namen wird das Anpassungspräfix des Lösungsherausgeber hinzugefügt. Dies ist der Name der Meldung, die ein Entwickler in seinem Code verwendet.

Wenn Sie eine Aktion bearbeiten, stehen Ihnen die folgenden Optionen zur Verfügung:

Prozessname
Wenn der Prozess erstellt und der eindeutige Name des Prozesses generiert wird, können Sie den Prozessnamen bearbeiten. Möglicherweise möchten Sie eine Namenskonvention verwenden, die das Finden bestimmter Prozesse erleichtert.

Eindeutiger Name
Wenn eine Aktion gespeichert wird, wird ein eindeutiger Name auf der Grundlage des Prozessnamens generiert. Diesem eindeutigen Namen wird das Anpassungspräfix des Lösungsherausgeber hinzugefügt. Dies ist der Name der Meldung, die ein Entwickler in seinem Code verwendet. Ändern Sie diesen eindeutigen Namen nicht, wenn der Prozess aktiviert und Code vorhanden ist, der den Aufruf der Aktion mit diesem Namen erwartet.

Wichtig

Nachdem die Aktion aktiviert wurde und Code für die Verwendung eines eindeutigen Namens geschrieben wird, darf dieser eindeutige Name nicht geändert werden, ohne auch den referenzierenden Code zu ändern.

Rollback aktivieren
Normalerweise machen Prozesse, die Transaktionen unterstützen, den gesamten Vorgang rückgängig, wenn ein Teil davon fehlschlägt. Es gibt einige Ausnahmen davon. Manche Aktionen, die Entwickler in Code einrichten, und die von der Aktion initiiert werden, unterstützen möglicherweise keine Transaktionen. Zum Beispiel: Wenn der Code in anderen Systemen Aktionen ausführt, die sich außerhalb des Bereiches der Transaktion befinden. Diese können von der Aktion, die in einer App ausgeführt wird, nicht rückgängig gemacht werden. Einige Meldungen in der Plattform unterstützen keine Transaktionen. Aber alles, was Sie mit der Benutzeroberfläche der Aktion tun können, unterstützt Transaktionen. Alle Aktionen, die Teil eines Echtzeitworkflows sind, gelten als "in Transaktion", bei Aktionen können Sie dies jedoch deaktivieren.

Fragen Sie den Entwickler, der diese Nachricht verwendet, um festzulegen, ob sie in Transaktion sein muss oder nicht. Im Allgemeinen sollte eine Aktion in Transaktion sein, wenn die Aktionen, die vom Geschäftsprozess ausgeführt werden, sinnlos sind, wenn sie nicht alle erfolgreich ausgeführt werden. Das klassische Beispiel ist die Übertragung von Geldbeträgen zwischen zwei Bankkonten. Wenn Sie Geld von einem Konto abheben, müssen Sie es auf das andere einzahlen. Wenn einer dieser Vorgänge fehlschlägt, schlagen beide fehl.

Notiz

Sie können Rollback nicht aktivieren, wenn eine benutzerdefinierte Aktion direkt von einem Workflow aus aufgerufen wird. Sie können Rollback aktivieren, wenn eine Aktion von einer Dynamics 365 Customer Engagement (on-premises)-Webdienstemeldung ausgelöst wird.

Aktivieren als
Wie bei allen Prozessen können Sie den Prozess als Vorlage aktivieren und als Ausgangspunkt für Prozesse verwenden, die einem ähnlichen Muster folgen.

Prozessargumente definieren
In diesem Bereich geben Sie alle Daten an, die die Aktion für ihren Start erwartet, sowie die Daten, die von der Aktion ausgegeben werden. Weitere Informationen: Prozessargumente definieren

Hinzufügen von Phasen, Bedingungen und Aktionen
Wie bei anderen Prozessen geben Sie an, welche Aktionen auszuführen sind und wann sie ausgeführt werden sollen. Weitere Informationen: Phasen, Bedingungen und Aktionen hinzufügen

Prozessargumente definieren

Wenn ein Entwickler eine Meldung verwendet, kann er mit einigen Daten beginnen, die in die Meldung eingegeben werden. Um beispielsweise einen neuen Anfragedatensatz zu erstellen, gibt es möglicherweise den Anfragetitelwert, der als das Eingabeargument eingegeben wird.

Wenn die Meldung abgeschlossen ist, muss der Entwickler möglicherweise einige dadurch geänderte oder generierte Daten an einen anderen Vorgang in seinem Code übergeben. Diese Daten sind das Ausgabeargument.

Ein- und Ausgabeargumente müssen einen Namen, einen Typ sowie Informationen dazu, ob sie immer erforderlich sind, haben. Sie können auch eine Beschreibung angeben.

Der Name der Meldung und Informationen zu allen Prozessargumenten sind gemeinsam die "Signatur" der Meldung. Nachdem eine Aktion aktiviert wurde und in Code verwendet wird, darf sich die Signatur nicht ändern. Wenn sich diese Signatur ändert, schlägt jeder Code, der diese Meldung verwendet, fehl. Die einzige Ausnahme dazu kann das Ändern eines der Parameter sein, so dass das Argument nicht immer erforderlich ist.

Sie können die Reihenfolge der Argumente ändern, indem Sie diese sortieren oder nach oben oder unten verschieben, da die Argumente nach Namen und nicht nach Reihenfolge identifiziert werden. Das Ändern der Beschreibung führt auch nicht zur Beschädigung des Codes, der die Meldung verwendet.

Aktionsprozessargumenttypen

Die folgende Tabelle beschreibt die Aktionsprozessargumenttypen.

Typ Beschreibung
Boolean Ein true- oder false-Wert.
DateTime Ein Wert, der Datums- und Uhrzeitinformationen speichert.
Dezimal Ein Zahlenwert mit dezimaler Präzision. Wird verwendet, wenn die Präzision sehr wichtig ist.
Entität Ein Datensatz für die angegebene Entität. Wenn Sie Entität auswählen, wird die Dropdownliste aktiviert und ermöglicht Ihnen die Auswahl des Entitätstyps.
EntityCollection Eine Sammlung von Entitätsdatensätzen.
EntityReference Ein Objekt, das den Namen, den Typ und die ID eines Entitätsdatensatzes enthält, der sie eindeutig identifiziert. Wenn Sie EntityReference auswählen, wird die Dropdownliste aktiviert und ermöglicht Ihnen die Auswahl des Entitätstyps.
Gleitkomma Ein Zahlenwert mit dezimaler Präzision. Wird verwendet, wenn Daten aus einer nicht absolut präzisen Messung stammen.
Integer Eine ganze Zahl.
Zahlung Ein Wert, der Daten zu einem Geldbetrag speichert.
Picklist Ein Wert, der eine Option für ein OptionSet-Attribut darstellt.
String Ein Textwert.

Notiz

EntityCollection-Argumentwerte können nicht auf der Benutzeroberfläche für Bedingungen oder Aktionen festgelegt werden. Diese werden für Entwickler zur Verwendung in benutzerdefiniertem Code bereitgestellt. Weitere Informationen: Erstellen Ihrer eigenen Aktionen.

Hinzufügen von Phasen und Schritten

Aktionen sind ein Prozesstyp, der den Echtzeitworkflows sehr ähnlich ist. Alle Schritte, die in den Echtzeitworkflows verwendet werden können, sind auch in Aktionen möglich. Informationen zu den Schritten für Echtzeitworkflows und Aktionen finden Sie unter Workflowphasen und -schritte.

Zusätzlich zu den Schritten, die für Echtzeitworkflows verwendet werden können, besitzen Aktionen auch den Schritt Wert zuweisen. In Aktionen können diese nur verwendet werden, um Ausgabeargumente festzulegen. Sie können den Formular-Assistenten verwenden, um Ausgabeargumente auf bestimmte Werte zu setzen, oder, wahrscheinlicher, auf Werte aus dem Datensatz, auf dessen Grundlage die Aktion operiert, von über n:1-Beziehungen mit diesem Datensatz verknüpften Datensätzen, von in einem früheren Schritt erstellten Datensätzen, oder auf Werte, die Teil des Prozesses selbst sind.

Siehe auch

Aktionen
Aufrufen angepasster Aktionen aus einem Workflow
Überwachung von Echtzeitworkflows und -Aktionen
Workflowprozesse
Geschäftsprozessfluss, Übersicht
Überwachen und Verwalten von Workflowprozessen
Erstellen Ihrer eigenen Aktionen