Dynamics CRM: How to Build Applications

Dynamics CRM

Dynamics CRM is no longer just a traditional CRM, it has now become a platform to create business applications. You will probably hear it as Dynamics 365 with apps like Sales, Customer Service, Marketing, Project Service Automation and Field Service. These are some of the applications that come pre-built with Dynamics 365. It also allows you, as a system customizer, to create your own apps.

Why would you want to create your own apps?

Well you are already using one of the applications, so you already have Dynamics 365. And in most cases a need for a new app also requires some information sharing with the existing application. This should not require you to build a whole new system/database or buy another system and work on integrating the different systems. This is one of the reasons why you would want to build an app with Dynamics 365 to provide a solid platform to create new business applications and eliminate some of the pain points in integrating multiple systems.

The new app designer application within Dynamics 365 lets you create an app and secure it based on security role. This security format makes it available only to its audience so you can create multiple applications for different users, giving them a different user interface. It will still share the same data behind the scenes.

dynamics 365

In the above screenshot you can see multiple apps like Customer Service, Customer Service Hub etc. There will always be a Dynamics 365 custom app that refers the traditional Dynamics CRM Online which had all the apps together in the same sitemap. Just by looking at the list of apps you will see that there are some applications labeled as Web vs. Unified Interface. Eventually you will only be able to create apps in the Unified Interface, but right now we are in the transition phase where the old web interface is still there.

You can think of an application as a subset of the Dynamics 365 entities with different navigation and a limited sitemap focused for the users assigned to the application. You can navigate to Settings->My Apps->Create new App. Applications can also be bundled within a solution so you can create them in a sandbox environment. Then when you’re ready, you can import it to the production environment using solutions in Dynamics 365.

When creating an app there is a choice of creating it as a Web Client or Unified Interface client. You can also provide a suffix for your application so it is easy to access using a URL. You can also create an app from an existing app. The first step is to create a sitemap for your application which takes care of adding the entities, forms and views which you can then further modify to suit your needs.

The sitemap configuration here allows you to create the menu and the sub-area within your app sitemap menu. If it created as a Unified interface client, then the menu becomes the fly-out menu to the left. Otherwise with the web client, it uses the traditional sitemap menu on the top. In the sitemap you can add an entity, dashboard, web resource and a direct URL. Thus you can create your app with entity links as well as other artifacts like dashboard or a custom web resource. This then lets you really customize the interface and make it look like a very different interface as compared to the traditional Dynamics 365 look & feel.

 

Once the entity/dashboard is selected, you can head back into the app designer main section. Here you can see that it automatically adds the entity forms, views, charts and dashboard related to the entities selected. You can add additional entities without them showing up in the sitemap and also choose global dashboard and business process flows available in the system.

I can rename the Account entity to a completely different name like customers and create another app with it still named as Accounts. I would have to modify the sitemap name, change the view names available with each application and select only the relevant charts and dashboards specific to the app that you are creating. All this is just standard feature and no customizations yet. You can combine multiple entities, dashboards and web resources to create an application for the desired audience, while maintaining data integrity between different applications.

Another important aspect to keep in mind when creating applications using App Designer is that the traditional CRM security still applies within different applications. If you create an app with the account, contact, lead, quote and order entity and give access to the application to a security role for a user, then they can open the app. If they don’t have access to the entity using traditional CRM security roles then they won’t be able to see the entity information. So, when designing the applications also make sure to create a separate security role just for the app and then apply the security role to different users who need access to it.

In order to make it available to the security roles assigned to the application, you will need to publish the app and the sitemap design. Once the application is published then it is available as an option to them under https://home.dynamics.com or directly using the URL.

The idea of creating applications with only a subset of entities also works in the favor of user adoption. If you compare the sitemap of the out-of-the-box Dynamics CRM and an app then you can see the differences in the number of entities and navigation available to the user. You keep the user focused on their data and the business process they need to follow when you create an app specifically for them and yet share the underlying data with other users in the system. This increases system adoption and confidence of the users within the system.

A Couple Things to Keep In Mind When Building Apps

The Unified interface has very fast response & load times compared to the Web Client interface. Yet there are still some parts of the system which are not compatible with Unified interface, like advanced find and personal settings. You will still be taken to the traditional web interface when interacting with those components. Microsoft is still working on making all aspects of the system Unified Interface compatible but until then we have a hybrid experience for a short time. At the same time the integration of Dynamics 365 administration is moving to the PowerApps platform and things are getting ported over there. You will see the mention of PowerApps across all D365 customization and with the introduction of canvas apps within PowerApps and its integration within D365 apps will lead to various user interfaces and experience that it would delight the customer and drive up user adoption

KTL Solutions is Here to Help

KTL Solutions has been building applications, both customized and standard, on Dynamics 365 for years. We know how the platform works and can guide you through the process. If you need help customizing an application, or would even just like some Dynamics 365 training, get in touch with KTL Solutions. Our team of experts will be able to help you with all your Dynamics 365 needs.

 

Is Azure Right for You?

Fortune 500 companies rely on Azure for analytics, computing, database, mobile, networking, storage, and more.

Download Now