Bing Maps PCF Control

Bing Maps PCF ControlOverviewThis PCF control allows you to display information for a view that contains latitude and longitude information within Bing Maps. The Info Box for each pushpin that is created on the map also gives you the ability to open the selected record.Additional FeaturesMap will default to a bounding box defined by the location data being shown.Will work with dataset that are 5k+ in size.DownloadThe latest release is always available here.

Convert Markdown Documents to PDF Using md-to-pdf

Convert Markdown Documents to PDF Using md-to-pdfAzure DevOps now has an option to link your Wiki to a repo. With this change I decided to start creating all my documentation in Markdown and then to supply my users with PDF output for things such as user guide. This allows me to source control my documents and still supply users with clean looking outputs. Here is how i went about doing this.Create Documents Folder/PackageI started by creating a new folder for my documents and running the npm init command.Install md-to-pdf from NPMInstall the md-to-pdf npm package by running npm i --save-dev md-to-pdfCreate Index.js fileCreate a index.js file in the root directory of your folder and copy the following code.const mdToPdf = require('md-to-pdf'); const config = { "pdf_options": { "format": "Letter", "margin": "15mm", "displayHeaderFooter": true, "headerTemplate": "<style>section {padding-left…

PCF Color Picker

For anyone looking for a PCF Color Picker I just released one out on GitHub! It utilizes React and the Office UI Fabric controls.

GitHub Project
Solution File

Dynamics BPF Javascript: NEW onPreStageChange Handler!

If you are utilizing the UCI interface there is a new JavaScript handler available for the Business Process Flows (BPF), onPreStageChange.  Unlike the onStageChange handler onPreStageChange fires before the actual business process has been changed so that you can evaluate if you want the change to occur and prevent it if needed.

With this new handler we can now get rid of many of the Synchronous workflows used previously to evaluate the changes made to a BPF.  By removing these workflows the overall performance of your BPF changes should be increased.  Additionally calling JavaScript code being before the change also eliminates additional problems such as the users clicking the Next/Previous multiple times before the workflows have been fired (Tip #360
To utilize the new handler you will needed to create a function and then pass that function into the addOnPreStageChange function provided under executionContext.getFormContext().data.process.  It is best practice to pass a function r…

Icon Resources for Dynamics

Below are resources that you can utilize within your Dynamics project for generating icons.

Image Icons
Font Imager
Microsoft Dynamics CRM Icon Pack
Microsoft Dynamics 365 Icon Pack for 2017
Metro Studio - Additional Info On How to Use from PowerObjects

React Icons
These are icon libraries that can be utilized within a React PCF control.
Office UI Fabric

Rollup Field Refresh on UCI Form

In the web client version of Dynamics when you hovered over a rollup field it would show a refresh icon to the right of the field.  In the Unified Client Interface (UCI) version of Dynamics to recalculate the field you can click on the Calculator icon to the left of the field name and a Recalculate button will appear.

Custom Flow Connector For Parsing Address

While working on a demo of the Business Cards Scanner component for PowerApps I found that the component only returns the address as a single line and not as parsed address components (UPDATE: The Business Card Scanner does not split the address fields into the same level of detail as the Contact/Account entities).  After looking around for flow connectors that could parse the data I only found one from Pitney Bowes.  Looking around there are a lot APIs available for address parsing but they are not currently available on Flow so I decided to build my first custom Flow connector to utilize one of these APIs.

Address Labs ( does not require an API key to use and since I'm only doing a few calls for my demos it worked well for me.  You can also check out their document on GitHub (

One of the easiest ways to create a custom connector to flow is to use a Postman collection.

After downloading Pos…