Power Automate-Aktionen über die Web-API aufrufen

Abgeschlossen

Dataverse enthält eine Funktion, mit der Hauptbenutzer eigene benutzerdefinierte Geschäftslogiksätze erstellen können, die Aktionen heißen. Aus Entwicklersicht wird eine Aktion als wiederverwendbarer Vorgang definiert, der möglicherweise beobachtbare Nebeneffekte hat. Zu diesen Nebeneffekten gehört es, Zeilen zu erstellen oder zu aktualisieren.

Dataverse verfügt über mehrere vorgefertigte Aktionen, und Entwickler können mit der Funktion Benutzerdefinierte API von Dataverse benutzerdefinierte Aktionen erstellen.

Eine Funktion von Aktionen ist Ihre Fähigkeit, über die Dataverse-Web-API diese aufzurufen. Infolgedessen können Sie Automatisierungsfunktionen mit geringem Programmierbedarf so einschließen, dass Sie sie in nahezu jedem Szenario verwenden können, indem Sie über die zugehörige Web-API-Anforderung und -Antwort mit ihnen interagieren.

In dieser Lektion wird die Erstellung von Aktionen nicht detailliert beschrieben, da grundlegende Kenntnisse in diesem Bereich vorausgesetzt werden. Wenn Sie weitere Informationen zum Erstellen von Aktionen benötigen, finden Sie diese in der Dokumentation. Detaillierte Informationen zum Erstellen von Dataverse-Aktionen finden Sie im Abschnitt Benutzerdefinierte APIs erstellen.

Aktionen mit der Web-API ausführen

Wenn in Ihrer Dataverse-Umgebung eine neue Aktion erstellt wird, erstellt das Framework auch eine entsprechende Web-API-Anforderungsnachricht. Sie können diese Anforderungen mithilfe eines POST-Vorgangs ausführen, der dem folgenden Beispiel ähnelt:

POST [Organization URI]/api/data/v9.2/WinOpportunity HTTP/1.1
Accept: application/json
Content-Type: application/json; charset=utf-8
OData-MaxVersion: 4.0
OData-Version: 4.0

{
 "Status": 3,
 "OpportunityClose": {
  "subject": "Won Opportunity",
  "opportunityid@odata.bind": "[Organization URI]/api/data/v9.2/opportunities(b3828ac8-917a-e511-80d2-00155d2a68d2)"
 }
}

Das obige Beispiel ist ein HTTP-Anforderungsaufruf an die WinOpportunity “ für eine Verkaufschance, deren opportunityid-Wert opportunityid b3828ac8-917a-e511-80d2-00155d2a68d2 lautet.

Vordefinierte Dataverse-Aktionen aufrufen

Dataverse umfasst eine Reihe vorhandener Aktionen, mit denen Sie allgemeine Vorgänge ausführen können. Einige dieser Aktionen gelten möglicherweise nur für modellgesteuerte oder Dynamics 365-Apps. Beispielsweise berechnet die Aktion CalculatePrice den Preis in einer Verkaufschance, einem Angebot, einer Bestellung bzw. einer Rechnung, sodass sie nur für eine Dynamics 365 Sales-App gilt, in der diese Funktion vorhanden ist.

Weitere Informationen zu den vordefinierten Aktionen, die über die Web-API verwendet werden können, finden Sie unter Referenz zu Web-API-Aktionen.

Ungebundene im Vergleich zu gebundenen Aktionen

Eine Aktion kann als ungebunden erstellt werden, d. h., sie hat keine dazugehörende Dataverse-Tabelle. Alternativ kann dies gebunden erstellt werden, was bedeutet, dass die Logik an eine bestimmte Tabellenzeile gebunden ist. Für SQL-Entwickler sind diese Aktionen mit gespeicherten Prozeduren (ungebundene Aktionen) und Triggern (gebundene Aktionen) vergleichbar. Im Gegensatz zu SQL-Triggern können Sie gebundene Aktionen jedoch auch bei Bedarf ausführen, indem Sie eine entsprechende Tabellenzeile-ID als zugehörigen Parameter angeben.

Ungebundene Aktionen sind für die generische Logik von Vorteil, die möglicherweise außerhalb des Kontexts einer bestimmten Tabellenzeile ausgeführt werden muss, z. B. die zuvor erwähnte Aktion „WinOpportunity“. Sie müssen die ID dieser Zeile in dem URI der Anforderung angeben, um eine gebundene Aktion für eine bestimmte Zeile auszuführen:

POST [Organization URI]/api/data/v9.2/contacts(94d8c461-a27a-e511-80d2-00155d2a68d2)/Microsoft.Dynamics.CRM.contoso_AddNoteToContact HTTP/1.1
Accept: application/json
Content-Type: application/json; charset=utf-8
OData-MaxVersion: 4.0
OData-Version: 4.0

{
 "NoteTitle": "New Note Title",
 "NoteText": "This is the text of the note"
}

Im vorherigen Beispiel wird eine benutzerdefinierte Aktion namens contoso_AddNoteToContact aufgerufen, die zuvor in der Lösung für einen Kontakt mit der ID 94d8c461-a27a-e511-80d2-00155d2a68d2 erstellt wurde. Dann werden die Parameter „NoteTitle“ und „NoteText“ an die Aktion übergeben. Das erwartete Verhalten für diese Prozedur besteht darin, dass dem entsprechenden Kontakt ein neuer Hinweis mit dem angegebenen Titel und Text hinzugefügt wird.

Weitere Informationen

Weitere Informationen zum Aufrufen von Aktionen im Code finden Sie unter Web-API-Aktionen verwenden.