Power Apps and Power Automate become even more powerful when they work together. One common requirement is opening a Canvas App and automatically passing information to it so users don't have to manually search for a record.
Imagine an HR department that receives a new employee request. Instead of asking HR staff to open the app and search for the employee, a Power Automate flow can launch the app with the employee's information already loaded.
In this article, we'll build exactly that.
Business Scenario
Your company uses a SharePoint list called Employee Onboarding.
Whenever a hiring manager submits a new employee request, HR receives an email containing a button labeled Review Employee.
Selecting the button opens a Power Apps Canvas App that automatically displays the employee's onboarding record.
Instead of searching by name, the app receives these parameters:
Employee ID
Employee Name
Department
Manager
Start Date
This creates a much smoother experience for HR.
Step 1: Create the Canvas App
Create a blank Canvas App and connect it to your Employee Onboarding SharePoint list.
For this example, the list contains:
| Column | Type |
|---|---|
| Employee ID | Single line of text |
| Employee Name | Single line of text |
| Department | Choice |
| Manager | Person |
| Start Date | Date |
Add a gallery to display employee records and an edit form to update onboarding information.
Step 2: Configure the App to Receive Parameters
Canvas Apps can receive values when they are launched.
Inside the App.OnStart property, store the incoming parameters in variables.
For example, create variables for:
Employee ID
Employee Name
Department
Manager
Start Date
These variables can then be used throughout the application without repeatedly referencing the launch parameters.
Using variables also makes the app easier to maintain if additional parameters are added later.
Step 3: Filter the Employee Record
Once the Employee ID has been received, use it to locate the correct SharePoint record.
If a matching employee exists:
Display the record in the form.
Populate all employee information automatically.
Allow HR to begin the onboarding process immediately.
If no record is found:
Display a friendly message informing the user that the employee could not be located.
Provide an option to return to the home screen.
Step 4: Build the Power Automate Flow
Now create a flow that launches the app.
Example trigger options include:
When a SharePoint item is created
When an approval is completed
When an HR request is submitted
The flow should gather the employee details from the SharePoint list.
Next, generate a link that opens the Canvas App while including the employee information as query parameters.
Each parameter should be named clearly so the app can identify it when it opens.
For example, the flow may include values for:
Employee ID
Employee Name
Department
Manager
Start Date
The generated link can then be inserted into:
Outlook emails
Microsoft Teams messages
Adaptive Cards
Approval notifications
Step 5: Send the Email
Instead of asking HR to search manually, include a button such as:
Review Employee
When HR selects the button:
The Canvas App opens.
The employee information is passed automatically.
The correct onboarding record is displayed.
HR can immediately begin updating the record.
This saves time and reduces the risk of selecting the wrong employee.
Step 6: Test the Solution
Create a new onboarding request.
Verify that:
The email is received.
The button opens the Canvas App.
The employee information is passed correctly.
The correct record is displayed.
The form loads without requiring a manual search.
Repeat the test with multiple employees to ensure the parameters are consistently received.
Common Issues
The app opens but no record appears
Check that the Employee ID being passed matches the value stored in SharePoint.
Some fields are blank
Verify that each parameter name in the flow matches the name expected by the Canvas App.
Even small spelling differences can prevent values from being received.
Special characters cause problems
Names or departments containing spaces or symbols should be URL-encoded before being added to the app link. This ensures the values are transmitted correctly.
The app always shows the same employee
Confirm that the filtering logic is using the incoming Employee ID rather than a hardcoded value or a previously stored variable.
Best Practices
Use a unique identifier such as Employee ID instead of employee names.
Keep parameter names simple and consistent.
Validate incoming values before displaying data.
Display helpful error messages when records cannot be found.
Test with different types of data, including names containing spaces or special characters.
Store received parameters in variables so they can be reused throughout the app.
Benefits
Passing parameters directly into a Canvas App offers several advantages:
Eliminates unnecessary searching.
Reduces user input errors.
Opens the correct record immediately.
Improves the user experience.
Saves time for employees performing repetitive tasks.
Whether you're building HR solutions, IT service desks, inventory management systems, or approval workflows, passing parameters creates a faster and more intuitive experience for users.
Conclusion
Passing parameters from Power Automate to Power Apps is a simple technique that can dramatically improve productivity. By launching an app with the information users need already loaded, you remove unnecessary navigation and create a smoother workflow.
In our Employee Onboarding example, HR staff can review new employee requests with a single click instead of manually locating records. The same approach can be applied to countless business scenarios, making it an essential skill for anyone building solutions with Microsoft Power Platform.
forum Discussion (0 comments)
Join the Discussion
Login to share rich-text comments and reply to other members.
No comments yet. Be the first to share your thoughts!