-
Book Overview & Buying
-
Table Of Contents
Microsoft Power Apps Cookbook
By :
One of the best features present in canvas apps is the ability to access multiple external connectors from the same app. We can leverage this strength by embedding a canvas as a component.
These are sample scenarios in which this can be very helpful:
Now let's see how we can integrate a canvas into our model-driven solution.
Project table. Then, go to the Forms tab to edit the main form.Title.Project table as its data source. You will notice a new control called ModelDrivenFormIntegration, as shown, which acts as a gateway between the model-driven form and the canvas app:
Figure 2.19 – ModelDrivenFormIntegration
It works just like the SharePointIntegration control we saw in the previous chapter's Embedding an expense tracking list with SharePoint list Power Apps recipe but with only one action available. Its primary purpose is to act on data refresh.

Figure 2.20 – Project columns in the canvas app
Let's pretend our company is in the middle of its cloud migration, and we still use a legacy ERP system to control customers' support rights. We can build a canvas app with a custom connector, a data gateway, or a Power Automate cloud flow to get data from the on-premises system. This solution can give support representatives more insight into the customer's rights related to the ticket.
Open a ticket with an associated project. If you click on the Project column value, it will navigate to the project form to display the related information about the project:
Figure 2.21 – Project table navigation
As soon as the project table form appears, the model-driven integration control will notify the canvas app of the currently selected record. That will execute the OnDataRefresh action logic you specified in your app:
Figure 2.22 – Canvas app integrated into the model-driven form
This integration shows just one of the situations where a canvas app can aid a model-driven solution to accomplish something that would require adding a code solution or a third-party component. Make sure you know all the possibilities of each type of app to leverage each one's skills.