I am creating a series of blog posts that collectively are designed to help anyone preparing for the Microsoft Dynamics 365 Customer Engagement Core exam. (aka MB-200) In this post I will look at concepts around the app designer.
You can see below that we have a section of the exam which covers user experience design. Within this section we can see that the site map and app designer are mentioned.
Notice that the “implement App Designer” heading is shown in red! This is because in November 2018 the MB 200 exam was revised to explicitly mention the app designer. This perfectly demonstrates why I like to encourage people to always check out the skills measured statement. As things can change!! You can access the skills measured statement for the MB 200 exam using the link shown below.
From Power Apps we can create three types of apps! Canvas Apps, Portals and Model-driven apps. For the purpose of this post my focus is model-driven apps as Dynamics 365 is “mainly” a model-driven app.
Model-driven apps comprise of all the entities, forms, views (and more) that make up you Dynamics 365 application.
The App Designer can be used to create task-based “model-driven” apps. Often users will find the full navigation of Dynamics 365 daunting, Apps can be used to only show just the sections of the Dynamics 365 that are relevant to them. Imagine you have a user who only needs to work with the contact and cases entities, the concept of an app is to give them just the required options and as a result provide them with an easy to navigate application.
An APP is effectively a collection of related entities, dashboards, and business process flows. Which provide the user with a tailored experience.
In previous versions of “CRM” we would have often only controlled what entities would show for a given with security roles. And when more customizations were required we’d directly make changes to the site map. Alterations to the site map required a developer to export a solution, edit the resulting XML and then re-import. This process was time-consuming and not intuitive. The App Designer now provides the ability to quickly edit the site map without this complexity. It contains a rich interface that allows advanced configuration of the site map without the need for any XML knowledge.
Apps can form part of your Dynamics 365 solution and can be enabled / disabled for specific roles.
Users can access apps from the navigation bar or directly as each app will also have its own URL.
Creating a model-driven App
There are many options available to us whilst creating applications, in this simple overview I may not cover every option!
Note: These are revision notes for the MB-200 exam not a full training guide! I therefore encourage you to experiment with creating some applications to learn the full capabilities.
From make.powerapps.com we can create new apps or amend existing ones. This can be achieved from the “Apps” option (shown above) or by opening a suitable solution and accessing the apps within that solution. Personally I would always edit an app in the context of a solution!
Having selected the option to create a new model-driven app, either from the apps option or from your solution …. You will now give the App a name, notice that a unique name will be automatically assigned. (the unique name will be given a prefix from your solution publisher. In my case this meant “neil_”. If you haven’t set a publisher yours might be “new_”.)
I have then given a description. (Notice that this might show under the app image in your app tiles.)
The solution will have a default image but you can change this. You can see that I have uploaded an image as web resource and then used that. (My image is 64×64 png.)
Importantly notice the Unified Interface URL. User will be able to pick the app but they can also navigate directly to it using the url shown.
We also have options to base this new app on an existing app. (Doing that might save you loads of time!)
Now the app designer will load and I can begin the process of building the application. Within the App Designer I am going to define four things;
- Site Map – the site map is the main navigation areas that will be available
- Dashboards – the dashboards to appear in the app
- Business Process Flows – which business process flows will be included
- Entities – what forms, views and charts will be presented
As you use the designer, you will add required components. Then click save. You can now select the validate option to receive any information about incorrectly configured items. And once any issues have been resolved you can use the publish option to make the app live.
Possibly the first thing you will want to create will be the site map. The site map is essentially the areas, groups and sub areas available within the app. The area is the main navigation. (Shown at the bottom of your app in the Unified Interface.) Each area can then have one or more groups. And each group has one or more sub area items. The sub area items can be dashboards, entities, web resources or urls. You can see a simple example below that highlights the various areas of the side map.
The designer screen used to create the above app is shown below. I have selected the sitemap option and then dragging areas, groups and sub areas into my sitemap as required. Each of these will have properties that you define in the properties tab on the right hand side. For a sub area, for example I will select a type of dashboard, entity, web resource or url. And then continue to define which entity etc etc.
As I add entities (etc) into my site map they may be added automatically into the app designer view. Below you can see that the account, case, contact and opportunity entities are showing, this is because I added them into my site map.
Notice that next to each entity I (by default) get all forms, views, charts and dashboards for that entity. You might want to change that!
As you add components, you’ll enter options for each one. For example, on entities you’ll select the required Forms, Views, Charts and dashboards. To try to illustrate this I have selected my accounts entity. Then by selecting forms I can use the components tab to either include all forms or just specific ones.
Also notice that we can control which dashboards and business process flows are visible in this application. It is a common task (for me) to select just the dashboards the target users would need. Why show them everything when all they want is access to one or two dashboards???
Whilst creating your app you can use the validate option. This may trigger a number of warning or dependencies messages to display.
Say you select a form that has a sub grid from another entity, this will show as a dependency. If you deploy this app into another environment you will need to ensure all of the required dependent components exist or the deployment will fail.
You may also get warnings that you haven’t restricted the forms / views on an entity. As it might be common to want to only present the user with the views and forms they require.
Having validated your app and fixed any errors you can publish it. Obviously you can publish an app with warnings!
Once your app is published, users will be able to access it in the My Apps area of advanced settings, from the side navigation or by direct access using the apps unique url.
Apps can be made available to all roles or specific security roles. Use the manage roles option to access a dialog to control which roles can see this application.
Below you can see the dialog to manage roles. (Notice that I can amend the app url if required.)
Tip: As I created these notes several “guides” told me to select the “My Apps” option in advanced settings. That has worked for me in the past. But I found the “My Apps” option wasn’t present for me. So, as an alternative …. In make.powerapps.com under apps, select your app. Then click “Share”. Here you will see details on how to share the app. Including a reference to the “my apps” page. Clicking on the “my apps” link will load it. (This solved my problem of it not being in the navigation of my advanced settings!)
I hope I have covered the key points connected with Apps that you will need to be aware of for the MB-200 exam. As already mentioned the App Designer is very powerful, I therefore encourage you to include a significant amount of hands-on practice as part of your exam preparation.