One of my favorite classic features of Dynamics 365/CRM is the marketing list. While it is never on the top of anybody’s list of top features, and the legacy campaign features with which it is associated are long in the tooth, static marketing lists have some unique capabilities that give them utility outside of marketing contexts.
Marketing lists are very useful for data cleanup, as they allow users to build lists of leads, accounts, or contacts. These lists can be built using one or more advanced finds, lookups, and ad-hoc records. So if you want to bulk delete unqualified leads that are over X months old, and also delete 500 newer junk leads, marketing lists are a great way to put together the list of records to be deleted before running your bulk delete job.
Once you build your marketing list, you can easily select companies, contacts, or leads related to the marketing list in Advanced Find and schedule the deletion with Dynamics bulk delete.
Advanced find does a great job of returning records that meet a certain criteria, but doesn’t do so well telling you what is not there. For example, I can easily get companies with a related contact, but I can’t easily get companies that do NOT have a related contact. Note that FetchXML does allow left outer joins for “not-in” queries, but Advanced Find cannot build these queries. When you don’t have the time, budget, or developers sitting around to write a custom “not-in” query, marketing lists can be a poor man’s alternative.
Let’s consider the scenario where we want to get a list of companies that don’t have any related contacts:
- Create a new marketing list. Select “Static” for list type and “Account” for target.
- Use advanced find to add all active companies to the list.
- Use advanced find to remove companies from the list where related contact contains data.
The resulting list is a list of companies that do not have any related contacts.
Got any other novel/alternate uses for Marketing Lists or any other standard application features? Send them to firstname.lastname@example.org.