Using Common Data Service with canvas and model apps
As mentioned in Chapter 1, “Describe the business value of Power Platform,” Power Apps supports two basic app types for internal users: canvas and model apps. (A third type, portal apps, is intended to create websites for external users.)
Canvas apps are relatively simple and give the developer a great deal of control over the user experience the app provides. Power Apps offers canvas apps with standard functions such as read, write, search, and delete based on the structure of the data used by the app. Developers can use Power Platform connectors to access data sources directly, or they can use Common Data Service. It is possible to create more complex canvas apps, but the configuration process can become time-consuming for the developer.
Model apps are typically more complex than canvas apps, and they always use Common Data Service as a data source. Model apps also have less flexibility as far as the user experience is concerned; they use the Dynamics 365 framework. After the developer has created the data model, Power Apps generates a user interface that is appropriate for it. In fact, some of the Dynamics 365 Customer Engagement modules are essentially model-driven Power Apps. This makes it easier for developers to create more complex apps than it would be to manually create them from a blank canvas.
Describe entities, fields, and relationships
Common Data Service is a cloud-based data storage solution, which means it is available to any users with internet access and appropriate credentials. As with most of Microsoft’s cloud-based products, Common Data Service uses Azure Active Directory (AAD) for user authentication and authorization. Organizations that are Microsoft 365 subscribers can use their same user accounts to access Common Data Service data; Dynamics 365 subscribers are already accessing their Common Data Service data with their AAD user accounts.
Power Platform developers can create multiple Common Data Service database instances to accommodate the needs of various apps and users. Each database instance can support up to 4 terabytes of storage; additional storage is also available for purchase.