I have created a perfectly working forms in my PowerApps which uses CDS as a data source with a purpose to get customer data.
Currently, I'm trying to add Microsoft Flow in it where it needs an approval if the customer who input the form is below 18 years old (Example)
I researched Flow and there have something like a "Trigger", which appears to have PowerApps and CDS as a trigger. May I know which trigger should I use instead?
Below is the CDS trigger and PowerApps trigger
The flow is whenever a user select Yes, it will automatically pushed for an approval.
If the user input age is 18 years old, it will send to person A for approval
if the user input age is above 18 years, it will send to person B for approval
So in short theres two question I would like to ask:
1) which trigger should I use? CDS trigger or PowerApps trigger?
2) how do I do an IF statement for sending different person for approval depending on the user input in the form on my PowerApps?
The major difference between the two triggers is that, the PowerApps trigger is triggered when an action is performed on the canvas app(this could happen on a button click), while the CDS connector triggers when something is changed on CDS side(any kind of creation or update). If you want to send the approval first and then save the record, it would be convienient to use the PowerApps trigger while in a case where you want to save the record first and trigger the flow only when the record is created succesfully, then use the CDS trigger.
If you already have a predefined set of email address then you can use an if condition as:
Flow: You can get the age from created record on CDS and add an if condition in the expression editor as:
if(Age > 18,'EmailAddress1','EmailAddress2')
Here, Age will be the dynamic content attribute.
Create a variable in flow to accept the email address and use the conditional statement to sent the email as:
FlowName.Run(If(Value(DataCardValue12.Text) > 18, "Email Address1","Email Address2")
This will send the appropriate email address to the flow.
Note: If you are using PowerApps connector to send the approval first, then you need to create variables in the flow to get data from your canvas apps. You can add both the condition in powerapps or the flow.
Hope this Helps!
If this reply has answered your question or solved your issue, please mark this question as answered. Answered questions helps users in the future who may have the same issue or question quickly find a resolution via search. If you liked my response, please consider giving it a thumbs up. THANKS!
Thanks for the reply, if I want to use the PowerApps trigger, how do I reference a certain option answer that the user selected? (in this case : email address) and base on that make a IF flow according to user's answer?
Please check the following documentation:
You can pass the chosen option and the type of option as parameters and then do something like a condition inside Flow.
https://docs.microsoft.com/en-us/power-automate/add-condition or a Switch condition.
On the Condition you will have something like
If (SelectedOption Equals 'Email') -> Do something to Email's value.
From your canvas app create a new flow:
After that, you will have a new tab with Flow that you can edit:
A new tab will be opened and then select "PowerApps button" template.
Add a new step (for example Create a new record).
Then if you select one of the fields, you will have the option to choose the Dynamic content called "Ask in PowerApps". If you click there, it will generate a parameter that should be provided when you call the flow from your canvas app:
Going back to your canvas app, with just one parameter you have to call your Flow like this:
Check it out!
Fill out a quick form to claim your user group badge now!
Find out where you can attend!
Features releasing from October 2019 through March 2020
The largest Power BI, Power Platform, and Data conference in New Zealand