· Pauline · How-to · 8 min read
So genehmigst du Event-Registrierungen mit mehrstufigen Freigaben in Dynamics 365
Erfahre, wie du Event-Registrierungen in Dynamics 365 mit mehrstufigen Genehmigungen umsetzt – mithilfe von Agent Flows, einer Kombination aus KI, menschlicher Prüfung und Status-Handling für ein reibungsloses Teilnehmererlebnis.
Bitte beachten: Der Inhalt ist zum Zeitpunkt der Erstellung korrekt. Es ist möglich, dass Microsoft in der Zwischenzeit Änderungen vorgenommen hat.
Auf dem diesjährigen Nordic Summit habe ich eine Demo vorbereitet, um zu zeigen, wie du Event-Registrierungen in Customer Insights Journeys mit den neuen mehrstufigen Genehmigungen in Agent Flows verwalten kannst.
Szenario: Ziele für die Verwaltung von Event-Registrierungen
Das wollte ich erreichen:
- Jede Person, die das Event-Registrierungsformular ausfüllt, soll zunächst auf die Warteliste gesetzt werden.
- Als Event-Manager möchte ich nur bekannten Kontakten und Kunden die Teilnahme erlauben.
- Sobald eine Registrierung genehmigt ist, soll der Prozess fortgesetzt und die Bestätigungs-E-Mail versendet werden.
- Wird eine Registrierung abgelehnt (z. B. weil der Kontakt von einem Wettbewerber stammt), soll das System die Registrierung stornieren.
- Als Event-Manager bin ich beschäftigt, daher soll mich KI unterstützen – aber mit einem Menschen im Entscheidungsprozess.

Warum nicht einfach die Standard-Warteliste verwenden?
Gute Frage! Normalerweise kannst du die maximale Event-Kapazität auf 0 setzen. Dadurch landen automatisch alle Registrierungen auf der Warteliste, und sogar der Button im Formular ändert sich zu „Auf die Warteliste setzen“.
Aber hier kommt der Haken:
- Um jemanden von der Warteliste zu registrieren, musst du zuerst die maximale Event-Kapazität erhöhen.
- Danach setzt du den Status der Person manuell auf „Registriert“.
- In dieser Zeit könnte sich jemand anderes direkt registrieren.
Es funktioniert, kann aber schnell unübersichtlich werden. Ich hoffe, ich konnte das hier verständlich erklären.
Hinweis, bevor wir einsteigen (Feature ist in der Vorschau)
In diesem Artikel zeige ich dir den Ansatz mit Agent Flows. Und ja – dieses Feature befindet sich aktuell noch im Preview-Status.
Event- und Registrierungs-Tabellen anpassen (Voraussetzungen)
Schritt 1: Benutzerdefinierte Felder zum Event hinzufügen
Für dieses Szenario fügen wir dem Event zwei neue Felder hinzu:
- Genehmigungsprozess erforderlich? (Ja / Nein) → Damit wird sichergestellt, dass die Genehmigungslogik nur für Events greift, bei denen sie wirklich benötigt wird.
- Event-Kapazität festlegen (Ganze Zahl) → Dieses Feld definiert die tatsächliche Event-Kapazität, da das Standardfeld „Maximale Event-Kapazität“ standardmäßig auf 0 gesetzt wird.

Vergiss nicht, beide Felder zum Event-Formular hinzuzufügen.
Schritt 2: Geschäftsregel erstellen
Als Nächstes erstellen wir eine Geschäftsregel, um die Konfiguration zu vereinfachen:
- Wenn Genehmigungsprozess erforderlich = Ja, blendet die Regel die Standardfelder für den Wartelistenprozess aus und setzt sie automatisch.
- Das verhindert Verwirrung bei Event-Managern und vermeidet versehentliche manuelle Änderungen.
Hier ein Beispiel meiner Geschäftsregel in der Textansicht. Du kannst sie gerne an deine eigenen Anforderungen anpassen. Wichtig ist, dass das Feld „Maximale Event-Kapazität“ auf 0 gesetzt wird und „Event auf Warteliste setzen“ auf Ja steht.
IF
Approval process needed? equals "Yes"
THEN
Show field Set event capacity
Set Set event capacity as Business Required
Hide field Maximum event capacity
Hide field Waitlist this event
Set default value of Maximum event capacity to 0
Set Waitlist this event to "Yes"
ELSE
Hide field Set event capacity
Set Set event capacity as Not Business Required
Show field Maximum event capacity
Show field Waitlist this eventSchritt 3: Event-Registrierungs-Tabelle anpassen
Jetzt wechseln wir zur Event-Registrierungs-Tabelle und nehmen zwei Anpassungen vor:
Feld „Statusgrund“ aktualisieren
- Für den inaktiven Status fügst du einen neuen Wert „Abgelehnt“ hinzu. So können wir später im Prozess klar zwischen stornierten und abgelehnten Registrierungen unterscheiden.
Formelfeld erstellen
- Dieses Feld übernimmt den Wert aus dem Event-Feld „Genehmigungsprozess erforderlich?“. Diese Information benötigen wir später für die Trigger-Konfiguration im Flow.

Hier ist die Formel, die ich verwendet habe:
$"{{
""approval"":""{Event.'Approval process needed?'}""
}}"Genehmigungs-Flow erstellen (Agent Flow oder Power Automate)
Wie bereits erwähnt, kannst du zwischen einem „klassischen“ Power-Automate-Flow oder einem Agent Flow wählen. Wenn du mit KI in deinem Genehmigungsprozess experimentieren möchtest, nimm einen Agent Flow aus Copilot Studio.
1. Trigger: Event-Registrierungs-Tabelle
- Starte den Flow mit „Wenn eine Zeile hinzugefügt, geändert oder gelöscht wird“ für die Event-Registrierungs-Tabelle.
- Füge in den Trigger-Einstellungen eine Bedingung hinzu, sodass der Flow nur läuft, wenn Genehmigungsprozess erforderlich = Ja ist.

Da dieses Feld auf dem Event liegt (und nicht direkt auf der Registrierung), könntest du auch eine Bedingung nach dem Trigger einbauen. Das würde den Flow aber für alle Registrierungen starten – was ineffizient ist. Stattdessen nutzen wir direkt das Formelfeld in der Trigger-Bedingung:
@equals(json(triggerOutputs()?[‘body/pk_eventdata’])?[‘approval’],’1′)Optional: Du kannst zusätzlich eine Bedingung einbauen, sodass der Flow nur startet, wenn der Statusgrund = Warteliste ist.
2. Event- und Kontaktdaten abrufen
Event-Datensatz abrufen → benötigte Spalten:
owninguser,msevtmgt_maximumeventcapacity,msevtmgt_eventid.- Expand Query mit
owninguser($select=domainname)→ so können wir die Genehmigung später an den Event-Besitzer senden.
- Expand Query mit

- Kontaktdatensatz abrufen und das übergeordnete Konto laden → Ich benötige das Konto, um das Segment zu prüfen (benutzerdefiniertes Feld). Ist das Konto im Gold-Segment, soll die Registrierung direkt genehmigt werden. Du kannst diesen Schritt überspringen, wenn du andere Kriterien verwendest.


- Vergangene Event-Teilnahmen prüfen → Füge eine „List rows“-Aktion auf der Check-ins-Tabelle für diesen Kontakt hinzu.

- Ergebnis in einer Boolean-Variable speichern → true, wenn der Kontakt an früheren Events teilgenommen hat, sonst false.

3. Variablen vorbereiten
- Ganzzahl-Variable für die maximale Event-Kapazität initialisieren → Diese erhöhen wir später, wenn eine Registrierung genehmigt wird.

4. Mehrstufige Genehmigung hinzufügen
Füge die Aktion „Run a multistage approval“ ein und konfiguriere drei Schritte:

KI-Stufe
- Füge einen Prompt hinzu (mit dynamischen Werten aus Dataverse).
- Du kannst sogar Dokumente (z. B. aus SharePoint) für zusätzlichen Kontext einbinden.
- Nutze Beispieldaten, um deinen Prompt zu testen und die Argumentation der KI zu sehen.
- Definiere Ergebnisse für Genehmigt, Abgelehnt oder Fehlgeschlagen.

Bedingungsstufe
- Prüfe
WebinarAttendance→ ob der Kontakt an früheren Events teilgenommen hat.

Human in the Loop (Event-Besitzer)
Trage Folgendes ein:
- Genehmigungstyp
- Titel
- Zugewiesen an → dynamischer Wert = Event Owner
- (Optional) Details, Item-Link und Beschreibung

Speichere die mehrstufige Genehmigung und schließe das Fenster.
5. Dynamische Eingaben zuordnen
In der Genehmigungsaktion siehst du nun die Felder für dynamische Eingaben. Befülle sie mit Daten aus Event, Kontakt und Konto.
In meinem Fall sind das:
- Segment:
outputs(‘Get_a_row_by_ID_-_Get_contact’)?[‘body/accountid/pk_segment_code’] - EmailAddress:
outputs(‘Get_a_row_by_ID_-_Get_contact’)?[‘body/emailaddress1’] - EventOwner:
outputs(‘Get_a_row_by_ID_-_Get_event’)?[‘body/owninguser/domainname’] - ItemLink:
https://orgd2c266c8.crm4.dynamics.com/main.aspx?appid=2c5e66c7-f38b-f011-b4cc-6045bd9979f4&pagetype=entityrecord&etn=msevtmgt_eventregistration&id=triggerOutputs()?[‘body/msevtmgt_eventregistrationid’](In echten Szenarien solltest du dafür eine Umgebungsvariable verwenden – hier ist es für die Demo vereinfacht.) - WebinarAttendence:
variables(‘Past Webinar Attendence’)
Im letzten Schritt fügen wir eine Bedingung basierend auf dem Genehmigungsergebnis hinzu.

Wenn das finale Ergebnis der Genehmigung „Approve“ ist, erhöhen wir die Variable für die maximale Event-Kapazität um 1 und aktualisieren das Feld am Event entsprechend.

Anschließend aktualisieren wir den Statusgrund der Event-Registrierung auf „Registriert“.

Wird die Genehmigung abgelehnt, aktualisieren wir den Statusgrund der Event-Registrierung auf „Abgelehnt“ und den Status auf „Inaktiv“ (unser neuer Statusgrund, den wir zu Beginn hinzugefügt haben).

Kommunikations-Journey umsetzen
Ich gehe hier nicht zu sehr ins Detail bei der Journey, die die verschiedenen Bestätigungs-E-Mails versendet, zum Beispiel:
- „Du bist auf der Warteliste“
- „Du bist registriert“
- „Leider müssen wir deine Registrierung ablehnen“
Wenn du einen richtig guten Deep Dive zu diesem Setup möchtest, empfehle ich dir Amey Holdens Artikel zu diesem Thema.
Für diesen Use Case empfehle ich Option 1.

Zusammenfassung und Ergänzungen
Puh, das ist ein ziemlich langer Artikel geworden! Ich hoffe, du konntest Schritt für Schritt gut folgen.
Ein kurzer Hinweis von meiner Seite: Ich bin bei der KI-Stufe im Genehmigungsprozess auf einige Probleme gestoßen. Ab und zu habe ich einen „Bad Gateway“-Fehler erhalten. Den genauen Grund habe ich noch nicht herausgefunden – meine Vermutung ist, dass es mit dem Preview-Status zusammenhängt. Wenn du das auch erlebt hast und mehr dazu weißt, teile deine Erfahrungen gern in den Kommentaren.
Stornierungen nicht vergessen
Ein letzter Punkt, den du berücksichtigen solltest: Was passiert, wenn jemand seine Registrierung storniert, nachdem sie bereits genehmigt wurde?
In diesem Fall brauchst du einen zusätzlichen Flow, der:
- erkennt, wenn ein Kontakt seine Event-Registrierung storniert,
- die maximale Event-Kapazität aktualisiert (einen Platz wieder freigibt),
- sicherstellt, dass die nächste Registrierung automatisch wieder auf der Warteliste landet.
Mehr zu mehrstufigen Genehmigungen
Das Tolle an mehrstufigen Genehmigungen ist, dass du so viele Schritte hinzufügen kannst, wie du möchtest. Denk zum Beispiel an zusätzliche Prüfungen für Compliance, Partner-Freigaben oder interne Reviews.
Und wenn du mehr darüber sehen möchtest, wie KI in mehrstufigen Genehmigungen eingesetzt werden kann, empfehle ich dir Reza Dorranis Video.
Und das war’s! Mit diesen Schritten hast du jetzt einen strukturierten Genehmigungsprozess für Event-Registrierungen mit Agent Flows – einen Prozess, der dir Kontrolle gibt, Verwirrung reduziert und für ein reibungsloses Erlebnis deiner Teilnehmenden sorgt.
Hast du Fragen, Ideen oder Anmerkungen? Meld dich gern.