Model-driven apps

Model-driven apps is one of the app types within Power Apps, the other two being canvas apps and portals.

History

Microsoft announced the preview of model-driven apps on the 21st of March 2018.

Much of the concept of model-driven apps comes from Microsoft Dynamics CRM. Model-driven apps has become the new UI for Dynamics, former CRM parts. This new UI has been designed to work on both on web, tables and phones. The same design tools are used for making customizations and the same forms and views etc. are used no matter if you run your application on web, tablet or phone. This UI has also gone under the name "unified interface" - a name which implies that it is one and the same interface for web, phone and tablet.

Main Concepts

The main building blocks for model-driven apps are entities, forms, fields, views, dashboards, charts and sitemap. Model-driven apps always has Dataverse as back-end, i.e. stores its data in Dataverse. The data model is decided and created before the actual app is created. When creating an app all you need is a name and then you specify in the sitemap what menu items should be included (e.g. entities, web resources or URLs).

The command bar is another part of model-driven apps. You can create new or modify existing command buttons. Use JavaScript or Power Fx to define how the buttons should behave. For a long time Ribbon Workbench has been used to modify commands (before - the Ribbon). Nowadays you can also use the native designer to modify buttons. Here is an article explaining the difference: Ribbon Workbench vs. Power Fx. Also see Model-driven commanding

The Dynamics apps Dynamics Sales and Dynamics Customer Service are examples of model-driven apps. There is also the possibility to create custom model-driven apps, either containing entities from Dynamics, custom entities only or with a combination of custom entities and entities from Dynamics.

Use Cases

Model-driven apps are typically used when there is a need for managing several things within one app. With Business Process Flows the user types in information and gets help with in what order, i.e. where in their business process, information should be added.

Microsoft Resources

Community Content

Cheatsheets

Videos

How-to

How to create the app when you have built the data model (created tables in Dataverse)

How to create Business Rules which will be used for the tables included in your Model-driven app

General videos

Articles

See also