Creating/Replacing Marketing Lists in Dynamics 365 from Power BI

Colin Maitland, 08 November 2020

In this article, I will introduce a demonstration of a custom Power Apps Canvas App, named ‘Marketing List App’, that is used to create new or replace existing static Marketing Lists in Dynamics 365 populated with a list of Supporters selected in a Power BI report.

It is possible to create and update static and dynamic Marketing Lists in Dynamics 365 using New and Manage Members.

The Manage Members functionality for static Marketing Lists provides options to add or remove members from the Marketing List using the various methods displayed in the Manage Members dialogue.


It is also possible to create static Marketing Lists in Dynamics 365 using Copy to Static.


However, it is not always possible to use Advanced Find in Dynamics 365 for to selecting the members to be added to a Marketing List. In these cases, a Power BI report and embedded Power Apps Canvas App might be used instead.

Here is an example of some criteria in a Power BI report that are used to select which members are to be added to a new or replaced static Marketing List. Some of these criteria, such as ‘Date Range (Giving Summary)’ and ‘Giving Range’, cannot be selected using Advanced Find in Dynamics 365 because the Giving Summary that these criteria are based on does not exist in Dynamics 356. It is calculated and exists only in the Power BI data model.

After selecting the list of a Supporters based on these criteria and a range of other criteria, and after completing two additional steps, the Marketing List App that embedded in the Marketing List App Power BI report may then be used to create new or replacing existing Dynamics 365 Marketing Lists.

The following images show the Marketing List App. This is a simple one screen app that contains options for creating new Marketing Lists or replacing existing Marketing Lists. In this implementation Contacts are referred to as Individuals, Accounts are referred to as Organisations and collectively they are referred to as Supporters.


You will notice in this example, that there are 25,794 selected Supporters. For this number of Supporters, the time required for the Refresh step is 30 seconds, for the ‘Create new Marketing Lists’ step is 5 seconds, or for the ‘Replace existing Marketing Lists’ step is 10 seconds. Prior, to this there is a step for making the list of Supporters available to the Marketing List App that takes 20 minutes to complete. Overall, these are very fast times, where it might be expected to take hours if adding or removing this number of members from a Marketing List one at a time.
This image shows two static Marketing Lists in Dynamics 365 that were created using either the create or replace options in the Marketing List App.


The two most technically challenging aspects in implementing this functionally with respect to the large number of selected Supporters are firstly making all the Supporters available to the Marketing List App and secondly creating new or replacing existing Marketing Lists in a timely manner. Any number of Supporters from 1 to 150,000 may need to be processed.

My subsequent articles will describe how the end-to-end process has been implemented to solve these challenges.