Home » DCG Lab: “360 Customer View” Canvas app

DCG Lab: “360 Customer View” Canvas app

by Tony Pimpo
9 minutes read

We’ve had a focus on Power Apps content this week at the Dynamic Consultants Group blog. First, we covered the difference between a model-driven and Canvas app. Then we wrote about some exciting new mixed-reality capabilities that will be available for public preview in May 2020. 

Microsoft has invested time and effort into Power Apps, and we see the beginnings of what is possible with this platform. A few months ago, we showcased a custom Expense Tracker app, built by one of our developers, Joshua Kranhold. Following this, the Expense Tracker app was fast-tracked for use by our internal team. The Expense Tracker is just one example of how Canvas apps can be used to meet business requirements and reduce deployment complexity. 

This week, we’re showcasing the 360 Customer View, another Canvas app developed by Joshua. This showcase is part of a new feature article type on our blog, dubbed DCG Lab. DCG Lab is a focused initiative at Dynamic Consultants Group to spur innovation. It offers our talented team of developers the ability to showcase potential solutions using the Microsoft portfolio of products. Read on for a look at what we’ve been developing. 

What is 360 Customer View? 

In our previous article on the difference between model-driven and Canvas apps, we mentioned the ability to imbed a Canvas app into a model-driven app interface. Dynamics 365 is a model-driven app based on the Common Data Service (CDS). CDS underpins both model-driven and Canvas apps. In a nutshell, Canvas apps have a more customizable interface (versus model-driven apps) and are centered around addressing a smaller business requirement (like the Expense Tracker). 

The 360 Customer View is a Canvas app embedded into a unique tab on the Dynamics 365 Account form. One of the significant advantages of using a Canvas app in this way is that it is context-aware; the 360 Customer View displays information based on the Account record that you are on. 

What does the 360 Customer View do?

The idea behind the 360 Customer View is to give organizations a look at critical metrics that point to the business relationship’s health. Instead of forcing users to search for data with Advanced Find (or with a clunky chart), it brings critical points of information together in one place. To do so, it makes use of Microsoft Flow to retrieve data. In this example, data from a Business Central implementation is supplied to the Canvas app, providing the conduit for data to be surfaced to users of all types in Dynamics 365. 

Highlights 

  • Lifetime Customer Orders 
    • Dollar amount aggregation of all fulfilled orders. This value informs the Customer Rank relative to other accounts in the system. 
  • YTD Customer Orders 
    • View the value of customer orders received in the current year 
  • Total Order Count 
    • Get an idea of how many orders have been received for this customer over the entirety of the relationship 
  • YTD Order Count 
    • Compare total and YTD order count values for relative volume 
  • Total Invoice Count 
  • YTD Invoice Count 
  • Total Return Count 
    • Keep an eye on how the cost of returns affects profitability 
  • YTD Return Count 
    • Spot warning signs developed throughout the relationship 
  • Case Count 
    • Keep an eye on how past performance issues may be impacting the current relationship 
  • YTD Case Count 
  • Opportunity Count 
    • View how many opportunities have been received for this customer versus lifetime order value. Has most of the revenue come from one opportunity, or is it spread out? 
  • YTD Opportunity Count 
  • Customer Rank 
    • See how this account compares to others at a glance 

Development tips and tricks 

  • Adding a Canvas app into Dynamics 365 or another model-driven app is relatively simple. It can be done via an HTML IFRAME web resource in the form editor. This IFRAME can be inserted into a form tab or section. 
  • Instantiate variables used in your Flow at the beginning of the process, for easy reference 
  • These variables are passed through the HTML web resource in Dynamics 365 to the Canvas app. This includes the customer number and account GUID. The account GUID is passed to the Flow to query the data needed from Dynamics 365. The customer number is used to retrieve data from Business Central. This scenario assumes that the customer number in Dynamics 365 is parallel to the customer number in Business Central. The ability to draw from both data sets is key to providing an accurate picture of account health 
  • Using the out-of-the-box Flow Business Central data connector is not the best solution. Currently, not every record can be queried using this connector. That’s why for 360 Customer View, an HTTP request is being used. With an HTTP request, all Business Central records are available for querying. This is done via a token generated by an Azure app registration. Joshua covered how to do this in a previous blog postDynamics 365 WebAPI calls and Flow. 

Curiosity piqued? Is the 360 Customer View something your business could benefit from? This is one of many business needs that can be addressed via Canvas apps. Whether you’re looking to embed a Canvas app into your model-driven app or wanting to deploy a mobile app to your field, Power Apps has the toolset to accomplish the task. 

Our team is available to develop custom solutions like the 360 Customer View. We aim to meet the needs of your organization, using innovative methods. Contact us today for more information or to schedule a demo.