Session 6 (Final) — Based on the course by Barbara Andrews, Lead Microsoft Technical Trainer
Manually triggered via a button — in a mobile app, Power App, or physical IoT button. Perfect for on-demand tasks.
Responds to events: new email, updated record, file added to SharePoint. Event-driven and hands-free.
Runs at set intervals (e.g., every 2 weeks on Tuesdays at 10am). Ideal for reports, data syncs, reminders.
Replicates user actions on a desktop or browser. Essential for legacy systems lacking APIs. Can record and replay.
User specifies intent; AI determines the optimal action sequence. Makes automation more accessible and intuitive.
| Trigger type | Activates when | Best for | Example |
|---|---|---|---|
| Data change | A record is added, modified, or deleted | Real-time updates and notifications | New item in SharePoint list → notify team in Teams |
| Scheduled | A set time interval is reached | Routine recurring tasks | Every morning, check for pending account renewals and send alerts |
| Button press | User manually triggers via mobile app, Power App, or IoT button | On-demand tasks for field workers | Technician taps a button to log a service request instantly |
All approvers must agree — a single rejection halts the process. Ideal for legal contracts, compliance reviews.
First approver's input finalizes the decision. Perfect for budget approvals or urgent requests where speed matters.
Tailored options beyond approve/reject — e.g., "request more information." Useful for IT or procurement teams needing detailed feedback.
Collects every approver's input. Ideal for hiring panels or cross-functional reviews where collective feedback is essential.
| Method | How it works | Best for | Example |
|---|---|---|---|
| Manual testing | Trigger the flow by performing the initiating action yourself (e.g., submit a form, add a file) | Straightforward flows; observing real-time behavior and validating under specific conditions | Submit a training registration to verify confirmation emails are sent correctly |
| Previous run data | Replay the flow using data from a past execution — no need to recreate original trigger conditions | Complex flows with conditional branching; fine-tuning logic; enterprise-grade flows across multiple systems | Refine certification tracking logic without re-triggering the whole upstream process |
| Method | Access granted | Best for | Example |
|---|---|---|---|
| Co-ownership | Full edit and manage access | Team-based flows requiring collaborative maintenance | A shared contract approval flow maintained by the legal team |
| Run-only permissions | Execute the flow only — no visibility into the design | Frontline staff triggering automated tasks without needing to understand underlying logic | Customer service reps trigger a ticket routing flow with one click |
| Send a copy | Recipient gets their own copy to customize; original is unchanged | Training, templates, distributing standardized automation to other departments | IT sends a software request flow to a regional office to customize locally |
In Power Automate, create a new Automated Cloud Flow. Name it "Registration Notification 6." Select trigger: Dataverse → "When a row is added, modified, or deleted." Rename the trigger step to "When a session registration is added." Set Change type = Added, Table = Session Registrations, Scope = Organization.
Add action: Dataverse → "Get a row by ID." Table = Event Sessions. Row ID = dynamic → select "Event Session" value from the trigger. Rename step to "Get event session."
Add action: Dataverse → "Get a row by ID." Table = Events. Row ID = dynamic → select "Event" value from the "Get event session" step (use Show More to find it). Rename step to "Get event."
Add action: Dataverse → "Get a row by ID." Table = Contacts. Row ID = dynamic → select "Participant value" from the Session Registration trigger (use Show More). Rename step to "Get participant."
Add action: "Send an email notification (V2)." Sign in with admin account if prompted. Enable "Use dynamic content." Set To = participant email (from "Get participant"). Subject = "Registration Confirmation." Body = build using dynamic content: First Name (Get participant), Session Name (Get event session), Session Date (Get event session), Event Name (Get event), Duration Hours (Get event session), Speaker name. Save the flow.
| Step | Action | Table | Data retrieved |
|---|---|---|---|
| Trigger | When row is added | Session Registrations | New registration event; provides Session ID and Participant ID |
| Step 2 | Get a row by ID | Event Sessions | Session name, date, duration, speaker |
| Step 3 | Get a row by ID | Events | Event name, location, date |
| Step 4 | Get a row by ID | Contacts | Participant first name, email address |
| Step 5 | Send email notification V2 | — | Composes and sends personalized confirmation email using dynamic values from all previous steps |
Click to reveal answers ↓