Freigeben über


Auslösen von Flows, wenn eine Zeile hinzugefügt, geändert oder gelöscht wird

Der Trigger Wenn eine Zeile hinzugefügt, geändert oder gelöscht wird wird immer dann ausgeführt, wenn eine Zeile einer ausgewählten Tabelle oder der Umfang geändert bzw. erstellt wird.

Anforderungen

  • Um einen Flow zu erstellen, der beim Erstellen, Ändern oder Löschen einer Zeile ausgelöst wird, müssen Sie über Berechtigungen auf Benutzerebene für das Erstellen, Lesen, Schreiben und Löschen in der Tabelle Callback-Registrierung verfügen.

  • Abhängig von den Bereichen, die im Flow definiert wurden, kann es zudem erforderlich sein, dass der Benutzer mindestens über diese Leseberechtigung für die gleiche Tabelle verfügt. Sie erhalten weitere Informationen über Umgebungssicherheit.

Die folgenden Informationen sind erforderlich, um den Trigger Wenn eine Zeile hinzugefügt, geändert oder gelöscht wird zu verwenden.

  • Auslöserbedingung
  • Name der Tabelle
  • Geltungsbereich

Anmerkung

Power Automate verwendet entweder den klassischen Cloud-Flow-Designer oder den Cloud-Flow-Designer mit Copilot. Um herauszufinden, welchen Designer Sie verwenden, gehen Sie zum Abschnitt Hinweis unter Den Cloud-Flow-Designer mit Copilot-Funktionen verstehen.

Legen Sie die Parameter direkt auf der Karte für den Auslöser Wenn eine Zeile hinzugefügt, geändert oder gelöscht wird fest.

Screenshot von

Auslöserbedingung

Die Auslöser-Bedingung, Änderungstyp, definiert genau, welche Kombination von Änderungen an einer Zeile den Flow ausführen würde.

Wenn der Flow durch die Erstellung, Aktualisierung oder Löschung einer Zeile ausgelöst wird, ist der Wert von triggerOutputs()['body/SdkMessage'] jeweils Create, Update oder Delete.

Wenn eine einzelne Zeile in einer Tabelle mehrfach aktualisiert wird, wertet Power Automate den Trigger für jede Aktualisierung aus, auch wenn die Werte, die in der Zeile aktualisiert werden, mit dem vorherigen Wert identisch sind. Diese Aktualisierungen können zu mehreren Flow-Ausführungen führen.

Name der Tabelle

Die Liste Tabellenname filtert die Zeilen, um genau anzugeben, welche Art von Zeilen sich ändern soll, bevor der Flow ausgelöst wird. Siehe Tabellen in Dataverse.

Der Trigger Wenn eine Zeile hinzugefügt, geändert oder gelöscht wird unterstützt das Auslösen von Flows auf Beziehungen vom Typ 1:N oder N:N nicht.

Geltungsbereich

Die Liste Bereich gibt an, welche Zeilen überwacht werden sollen, um zu bestimmen, ob der Flow ausgeführt werden soll.

Hier wird erklärt, was jeder Bereich bedeutet:

Geltungsbereich Zeilenbesitzebene
Unternehmenseinheit Aktionen werden auf Zeilen ausgeführt, die jedem in Ihrer Geschäftseinheit gehören.
Organisation Aktionen werden von jeder Person innerhalb der Umgebung ausgeführt.
Übergeordnet:Untergeordnete Unternehmenseinheit Aktionen werden für Zeilen ausgeführt, die einer beliebigen Person in Ihrer Geschäftseinheit oder einer untergeordneten Geschäftseinheit gehören.
User Aktionen werden für Zeilen ausgeführt, deren Besitzer Sie sind.

Erweiterte Optionen

Sie können zusätzliche Eigenschaften festlegen, um granularer zu definieren, wann der Flow ausgeführt wird und unter welchem Benutzerprofil er ausgeführt wird.

Um auf die erweiterten Optionen zuzugreifen, wählen Sie Erweiterte Optionen anzeigen aus.

Screenshot der erweiterten Optionen

Filterbedingungen

Verwenden Sie Filterbedingungen, um Bedingungen für das Auslösen von Flows festzulegen.

Spalten filtern

Verwenden Sie das Feld Auswählen-Spalten , um die spezifischen Spalten der Zeile zu definieren, die die Ausführung des Flows auslösen sollen, wenn sie in der Anforderung enthalten sind, als durch Kommas getrennte Liste eindeutiger Spaltennamen. Schließen Sie in Aktualisierungsanforderungen nur Spalten mit geänderten Werten ein. Der Flow wird ausgeführt, wenn die enthaltenen Werte mit den vorhandenen Werten übereinstimmen.

Diese Eigenschaft gilt nur für die Bedingung Aktualisieren. Erstellen und Löschen gelten für alle Spalten einer Zeile.

Diese Eigenschaft wird für virtuelle Tabellen nicht unterstützt.

Filterausdruck

Mit dem Filterausdruck können Sie einen Filterausdruck im OData-Stil definieren, um die Triggerbedingungen noch genauer zu definieren. Der Flow wird nur ausgeführt, wenn der Ausdruck mit True bewertet wird, nachdem die Änderung in Dataverse gespeichert wurde. In den folgenden Beispielen wird der Flow ausgelöst, wenn firstname auf „John“ aktualisiert wird.

Beispiele für Zeilen filtern:

firstname eq 'John'

contains(firstname,'John')

Um zu erfahren, wie Sie diese Filterausdrücke konstruieren, gehen Sie zu den Beispielen unter Standardfilteroperatoren und Abfragefunktionen.

Im Gegensatz zu den Beispielen in den Referenzlinks darf Ihr Ausdruck die Zeichenfolge $filter= nicht enthalten. Diese Zeichenfolge gilt nur, wenn Sie die APIs direkt verwenden.

Wartebedingung mit Verzögerung bis

Verwenden Sie einen Zeitstempel im OData-Stil in der Verzögerung bis Eigenschaft, um den Flow-Trigger bis zu einer bestimmten UTC-Zeit zu verzögern.

Der Hauptvorteil der Verwendung der Dataverse-Eigenschaft Verzögern bis statt der standardmäßigen Aktion Verzögern bis besteht darin, dass die Dataverse-Eigenschaft Verzögern bis nie abläuft, sodass die Flow-Ausführung lange warten kann.

Identitätswechsel mit Ausführen als verwenden

Der Flowbesitzer muss die Microsoft Dataverse-Berechtigung Vorgänge im Namen anderer Benutzer ausführen (prvActOnBehalfOfAnotherUser) besitzen. Die Sicherheitsrolle Delegieren enthält dieses Recht standardmäßig. Sie können sie in jeder Sicherheitsrolle aktivieren. Weitere Details finden Sie unter Einen anderen Benutzer verkörpern.

Wenn Sie Flows mit dem Trigger Wenn eine Zeile hinzugefügt, geändert oder gelöscht wird erstellen, können Sie jede Microsoft Dataverse-Aktion im Flow so festlegen, dass sie im Kontext eines anderen Benutzers anstelle des Flowbesitzers ausgeführt werden soll.

Befolgen Sie diese Schritte, um sich als Benutzer auszugeben.

  1. Wählen Sie im Designer einen Wert für Ausführen als aus, um Microsoft Dataverse mitzuteilen, welchen Benutzerkontext Sie für nachfolgende Dataverse-Aktionen verwenden möchten.
  2. Wählen Sie für jede Dataverse-Aktion, die Sie als einen anderen Benutzer ausführen möchten, die Auslassungspunkte in der oberen rechten Ecke (...) und dann die Einstellung Verbindung des Aufrufers verwenden aus.

Für die Schritte, in denen sie nicht ausgewählt ist, wird vom Standardbenutzer ausgegangen. Dies ruft die zugrunde liegenden APIs gemäß dem ausgewählten Benutzer und nicht als Flowbesitzer auf. Wenn nichts angegeben ist, wird standardmäßig der Flowbesitzer verwendet, der den Flow erstellt hat – im Wesentlichen der Autor.

Hier sind die anderen Optionen:

  • Flow-Besitzer: Der Benutzer, der den Flow erstellt hat.

  • Zeilenbesitzer: Der Besitzer der Microsoft Dataverse-Zeile, die eine Änderung erfahren hat, wodurch der Flow ausgelöst wurde. Wenn eine Zeile einem Team gehört, wird diese Option als Flowbesitzer ausgeführt.

  • Ändernder Benutzer: Der Benutzer, der die Aktion an der Microsoft Dataverse-Zeile durchgeführt hat, wodurch der Flow ausgelöst oder geändert wurde.

Darüber hinaus ermöglichen Direktflows das Ausführen der Schritte aller anderen Connectors, wie zum Beispiel Microsoft Teams, Microsoft 365 Outlook, oder SharePoint im selben Flow über die Verbindung des Aufrufers. Führen Sie dazu die folgenden Schritte aus:

  1. Gehen Sie zur Seite mit der Flowübersicht.

  2. Wählen Sie Bearbeiten in den Einstellungen Nur ausführende Benutzer aus.

  3. Wechseln Sie im Bereich Verwalten von Berechtigungen zum Ausführen zur Registerkarte Benutzer und Gruppen und wählen Sie dann unter der Liste Verwendete Verbindungen die Option Von einem Nur-Benutzer ausgeführt.