Building A CRM Demo For Financial Services (Part 1)

Bring Him Home…

For more than 6 years I have been selling Microsoft Dynamics CRM to a wide spectrum of customers in the financial services industry, and a significant part of my pre-sales role involves building and delivering demonstrations of our software to a variety of audiences, from senior business executives through to enterprise architects. Over the years my knowledge of the industry has grown (particularly in the business/commercial/corporate banking sector) and I have developed a number of demos that help me sell the value of CRM, and that go well beyond the out-of-box configuration and sample data.

One of the challenges I face is there is never enough time to package up each demo (configurations, sample data, customisations, demo scripts etc.) to a sufficiently high quality level for someone else to be able to make use of quickly & easily. For example, over the last few months I have built and refined a fairly comprehensive demo around some business banking requirements, but trying to explain how all the moving parts work would take me ages. Instead, I’ve opted to write a series of short blog posts to show off different aspects of the demo. I’m not sure how far I’ll get, but since it’s fairly quiet in the office over the next couple of weeks (it is summer vacation time after all), this would seem as good a time as any.

OK. Let’s start at the end. For those of you adventurous folk who want to go mad and just get the whole demo, I have packaged up a number of files and uploaded them to my Microsoft SkyDrive here -

P.S. I got the new “Windows 8” look SkyDrive today. Nice, isn’t it!

Business Banking v1.0.0.1 SkyDrive

The first thing you’ll see is a folder called v1.0.0.1, which contains the current version of the demo. Over time, I will be adding new features and creating new version folders accordingly. My plan is to make full use of the CRM solution packaging architecture to allow new versions to be installed over the top of previous versions.

So what’s in the folder?

  1. – This is the CRM 2011 managed solution package. If you want to play with the solution, but need the option of uninstalling it at a later date, then the managed solution is for you.
  2. – If you want to install the solution on your system, but don’t need (or want) to uninstall it at a later date, then the unmanaged solution is the way to go. This is great if you are CRM developer and want to really delve into the details of the demo in your development environment. WARNING: IF YOU DO NOT UNDERSTAND THE DIFFERENCES BETWEEN MANAGED AND UNMANAGED SOLUTION PACKAGES, UNDER NO CIRCUMSTANCES SHOULD USE THIS UNMANAGED SOLUTION IN YOUR PRODUCTION CRM SYSTEM. For more information about solutions in Microsoft Dynamics CRM 2011, you should read this article from the CRM SDK -
  3. businessbanking_1_0_0_1_Data.xlsm – A “monster” Excel workbook that generates sample data for 20+ entities. One of the biggest challenges with demos is being able to generate large enough quantities of high quality demo data where the date/time stamps of records are kept up-to-date. The first thing you will notice when you try to open this workbook is that it can take quite a while to load. This is because it is full of Excel formulas which ensure that all the entity data is consistent and that the date/time stamps are relative to the current date. I will cover how to use this workbook in a later blog post.
  4.;; – Once you have generated the .CSV demo data files from the Excel workbook, you need to import entities in a specific order. If you take a look in each .ZIP file, you will see which entities need to go where.
  5. businessbanking_1_0_0_1_Data_1_Map.xml; businessbanking_1_0_0_1_Data_2_Map.xml; businessbanking_1_0_0_1_Data_3_Map.xml – To simplify the data import process, you can make use of these map files to ensure that the entity and field names map correctly to the demo data.
  6. – I have built a number of plug-ins as part of the solution, and this .ZIP file contains the full C# source code.

To get up and running quickly, you should use the following steps.

  1. If you are using an on-premise deployment of CRM 2011, make sure that you have applied Update Rollup 8 and that you have installed the Activity Feeds solution from the Microsoft Dynamics Marketplace. If you are using CRM Online, then these pre-requisites will already be installed.
  2. Create a CRM user called CRM Administrator and assign to the System Administrator role. All the plug-ins included in the solution run under this user context.
  3. Create the following 12 CRM demo users:
    • Alan Jackson
    • Ben Burton
    • Chris Perry
    • Connie Watson
    • Gail Erickson
    • Jose Curry
    • Judith Walker
    • Mathew Pereira
    • Patricia San Juan
    • Roger Van Houten
    • Ryan Williams
    • Stefan Delmarco
  4. Upload the first data map file businessbanking_1_0_0_1_Data_1_Map.xml.
  5. Import the first data import file
  6. Import the managed solution file
  7. Disable all all the workflows and plug-in SDK Message Processing Steps so that these don’t trigger whilst you are importing the rest of the demo data.
  8. Assign all 12 CRM demo users to the security role: Business Banking - All Users & Teams.
  9. Assign the first 8 CRM demo users (Alan Jackson through to Mathew Pereira) to the security role: Business Banking – Sales Users & Teams.
  10. Assign the last 4 CRM demo users (Patricia San Juan through to Stefan Delmarco) to the security role: Business Banking – Product Users & Teams.
  11. Upload the second data map file businessbanking_1_0_0_1_Data_2_Map.xml.
  12. Import the second data import file
  13. Upload the third data map file businessbanking_1_0_0_1_Data_3_Map.xml.
  14. Import the third data import file
  15. Re-enable all the workflows and plug-in SDK Message Processing Steps.


Now if you’re wondering why I split the demo data out into three separate imports, then wonder no more. The data in the first two .ZIP files is static and never changes. However, the data in the third .ZIP file is dynamic and changes every time you use the Excel data generator. The beauty of this approach is that if you want to refresh your demo data, you simply uninstall the .CSV files imported from, re-run the Excel data generator, copy the new set of .CSV files and into and re-import. Don’t forget to disable Workflows & SDK Message Processing Steps before you start deleting and importing data.

This posting is provided "AS IS" with no warranties, and confers no rights.

When not working with Microsoft Dynamics CRM, Simon can be found singing with The Chain Gang. Berkshire's leading live Soul, Funk, Disco and Motown function band.