Canvas PowerApps are great for building simple apps that make us more efficient and help remove obstacles to collecting data. In this blog post I am going to showcase an example PowerApp that I have built which significantly improves the speed in which a user can record a customer visit as an Appointment in Dynamics 365.

The Scenario

The scenario I am tackling is one in which Account Managers visit their customers on an often adhoc basis and want to be able to quickly record a visit in Dynamics 365. The purpose of tracking these visits with customers is so that the visit data can be used to identify which customers are getting the attention they need and which ones aren’t.  Combined with other data, machine learning scenarios can be conducted to do things like proactively predict customer churn rates, identify customers that are most likely to leave, or reduce or stop purchasing products and services.  But the data needs to be captured first.

Account Managers are busy people and do not have time, or the inclination to carry out 10+ taps on their phone or tablet just to create a simple appointment record in Dynamics 365.  There must be a simpler way!

The Solution

The solution is based on a Canvas PowerApp showing the Account Manager the Account records for customers that are at the same location that he or she is currently at. With one click the user can add an Appointment to the Account record.  This enables an Account Manager to attend a visit with a customer and then quickly record their visit on the spot.

The solution was built using the following…

Example PowerApp Architecture

1. Canvas PowerApp containing the following components

a. Gallery – listing all of the Accounts from Dynamics 365 within a certain radius of the users current location
b. A Bing maps control which shows the user’s and Account locations
c. A slider control that allows the user to change the search radius
d. Gallery controls to add an new appointment quickly without details, add new appointment with details and show the Account on the map
e. Confirmation label to confirm when the Appointment is created in Dynamics 365

Example PowerApp Quick Visit

2. Microsoft Flow which carries out the following steps

a. Triggered from the add appointment action in the PowerApp
b. Creates the appointment in Dynamics 365 based on the selected Account
c. Returns the successful result back to the PowerApp to confirm the Appointment was created.

Quick Visit Flow Example Powerapp

The Result

With one click a new appointment is added to Dynamics 365.

Example PowerApp - Appointment in Dynamics


This example PowerApp has been turned into a working prototype but only time will tell how well this app works in the real world. I’m looking forward to seeing how this goes but expect that the number of Appointments captured in Dynamics 365 would increase dramatically. If you have a scenario where this applicable to your business and want to try it out, please fell free to get in touch.

6 replies on “Example PowerApp: Quick Capture Customer Visits into Dynamics 365

    1. A bit of a long story but it is possible. I will write a post on this with all the details but here is a summary….

      Create a Test PowerApp/Flow/CDS environment and build the PowerApp and Flow in there. The Flow will connect to a sandbox Dynamics 365 instance.

      You can then export the PowerApp\Flow package (in preview) to a zip file from the Test environment and upload it into the Prod environment. Once in the Prod environment you need to edit the Flow connection to the Prod Dynamics 365 environment instead of the Test one.

      Quite clunky and could be error prone with the connection to Dynamics but it is a relatively simple process.

      For the end user testing on a phone, they can see all apps from the different environments that they have been given access to. So they use the PowerApp in either the Test or the Prod environment.

      I hope this answers your question.


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s