Configure Outlook Contact Synchronization Settings on Behalf of Your Users

The ability to get your CRM contacts automatically synchronized to your Outlook address book and mobile phone is a very handy feature in Microsoft Dynamics CRM. Why would you ever manually dial the phone numbers of your customers when you can just set them to appear in your smartphone’s list of contacts? Wouldn’t it also be nice to see the customer’s name instead of just an unfamiliar phone number when he or she calls you after your first meeting? These are examples of everyday benefits that not only save time but can also help drive CRM user adoption by showing tangible benefits of having the customer information managed centrally in a database shared by all employees that are in contact with the customers.

The new server-side synchronization in CRM 2013 has made the synchronization process independent of the Outlook client, so that updated information flows between your phone and CRM even when your PC is not online. What has not changed, though, is the lack of an administrative control panel for configuring the synchronization settings for the users. Since CRM by default only offers API calls to manipulate the synchronization filters, most users are likely using the default synchronization settings that come with CRM out of the box (unless they’ve received thorough training on how to configure the filters in the personal options menu). These are not always the optimal way to get the most benefit out of the synchronization functionality.

Once again, XrmToolBox comes to the rescue with its recent Sync Filter Manager addition. This tool gives system administrators the power to create and change the Outlook and offline filters on behalf of the end users. Now you can easily plan the proper synchronization strategy and deploy the correct settings to all users in a controlled manner, instead of needing to visit their PCs or try to get everyone to click the right options.

Since the concept of synchronization filters and templates may not be so easy to grasp for the CRM admin, I decided to make a tutorial that walks you through a few common scenarios for contact management. These cover enabling more than just the single owner of a contact to have the record synchronized to their address books, as well as how to avoid users in administrative roles from getting thousands and thousands of miscellaneous contacts suddenly appearing in their Outlook and mobile phone. You can view the presentation below or go to SlideShare and download it from there if the embedded slides are not showing up.

As a great follow up reading, I recommend you to also have a look at the article on contact management best practices that was recently published in the new CRM Virtuosity blog. This will show you how to take the Outlook contact synchronization even further via modifications to the contact form’s Command Bar in CRM 2013, among other things.

Synchronization vs. Tracking: Understanding Activity Management Options in Dynamics CRM

Synchronization vs. Tracking: Understanding Activity Management Options in Dynamics CRM

Long before a company has any CRM system in place they will already have a bunch of customer facing activities like emails and appointments in the personal mailboxes and calendars of their employees. Once a CRM system is implemented, these activities will not magically disappear but rather they will continue to be a key element in how the customer relationships is managed on a practical, day-to-day level. Typically companies would like to have these communications stored in the CRM database to accumulate a better understanding of both which customers are being contacted by which representatives of the company as well as the detailed information of what’s been said and agreed with the customer in these acts of communication.


Maintaining two separate systems for entering the same information is never an attractive option for information workers who just wish to stay on top of their daily agenda and commitments, without having to worry about keeping multiple calendars in sync manually. Rather than entering an appointment in your own calendar first, then entering the same data into your CRM system for activity tracking purposes, every single user would rather have the ability to promote their selected calendar entries related to customers into their CRM system for meeting the activity reporting requirements expected by their managers. Similarly, instead of copy-pasting information from their inbox onto forms in a CRM system, anyone presented with the option to click one button in their inbox and get the full message tracked into CRM would surely prefer to take this route.

This has been one of the founding principles behind the design of Microsoft’s CRM system since day one. With the market dominance of Microsoft’s activity management related software both on the client (Outlook) and server side (Exchange), making the flow of this data across different systems as seamless as possible can be seen as a low hanging fruit to grab when entering the CRM market with the Dynamics product. Looking back, offering users the possibility of remaining within their familiar and personal Outlook inbox and tracking information into the organization-wide CRM database has been a very compelling user experience at best. Yes, regardless of the countless hours I’ve had to spend solving Outlook related issues during my professional career in CRM, I’m still perfectly willing to admit that this type of UX is definitely worthy of pursuing in a CRM product, because it’s simply how it should work.

How Dynamics CRM actually tracks your data

What most organizations planning to deploy Dynamics CRM often find surprising is that up until CRM 2013 there hasn’t been much functionality on the server side related to managing the flow of activities between different systems. Even though Microsoft owns both Outlook and Exchange, they have decided to build deep hooks only onto the client side of Outlook and not the server side of Exchange. The positive side of this is that you don’t necessarily need an Exchange server for leveraging most of the activity management features of Dynamics CRM. The downside has been that you very much need the CRM Outlook client in place for things to work as you’d expect.

When it comes to sending and receiving email, the CRM Outlook client can act as the component that takes care of all the inbound and outbound emails for CRM. However, for any organization that needs to have emails flowing directly into CRM (such as a customer support email address that feeds items into a CRM support queue) or relies on workflow based email notifications to go out even when the Outlook client of an individual user is not connected to a network, the deployment of the Dynamics CRM Email Router has been in practice a compulsory step to take. Again, this component is independent of Exchange server and can be used also with other email systems via SMTP or POP3 connections. The Email Router can replace some of the email management features of the CRM Outlook client (but not all, we’ll get to that later) and basically “email enable” your Dynamics CRM server, so that it can independently communicate with the outside world via email.

One thing to note is that even customers who’ve chosen CRM Online as their deployment model instead of deploying an on-premises Dynamics CRM server have needed to separately deploy the CRM Email Router if they wish to send/receive email from/to CRM Online without routing all of the messages via the individual Outlook clients of their CRM users. Microsoft doesn’t offer an “Email Router in the cloud”, so you’ll either need to have a local machine available for deploying the router (doesn’t even need to be a Windows Server, also client OS like Vista or Windows 7 are supported) or get a virtual machine from some hosting service, such as Windows Azure. You can leverage the Exchange Online service in your Office 365 subscription for the actual email delivery, but the CRM Email Router cannot be purchased as a service directly from Office 365.

CRM_2013_Server-side_SyncWith the latest CRM 2013 release Microsoft has started to address these challenges of dependency on either client machine components (Outlook client) or on-premises servers (Email Router) by introducing a feature called Server-Side Synchronization. This allows the Dynamics CRM server to communicate directly with the Exchange server, effectively replacing the email sending and delivery features of the CRM Email Router. In addition to that, server-side sync can also handle other Exchange items like appointments, tasks and contacts, which can also now flow between the CRM database and the users’ calendars and address books on various devices without any central dependency on a client-side component like the CRM Outlook client.

Great! CRM 2013 server-side sync solves all our problems! End of blog post! Well, not quite. We’re actually just getting to the reason why I’m writing this post, which is the surprising complexity behind understanding the detailed feature sets of the various components that aim to deliver the seamless one-click UX that I was talking about earlier on. Based on what we’ve discussed so far, here’s how the big picture of synchronization methods for CRM 2013 looks like:


As is often the case, the devil is in the details, so let’s proceed with pointing out the “gotchas” that you need to be aware when planning on managing activities in a Dynamics CRM environment. [Read more…]

Windows 8, Outlook 2013 and Dynamics CRM – part 2

Windows 8, Outlook 2013 and Dynamics CRM – part 2

Back in August I wrote about my initial experiences of using a Windows 8 PC with Office 2013 to connect the Outlook client to Microsoft Dynamics CRM. During that time we only had the preview versions of both the OS and Office, so some quirks were naturally to be expected. Now that Windows 8 is generally available and also the RTM bits of Office 2013 can be downloaded from MSDN (with commercial launch expected by end of January), it’s a good moment to revisit the topic. Upon my latest test I came across a few configuration gotchas that I though might be useful to share for anyone who’s struggling with the same issues.

Connecting to CRM Online with WLID

Our official work setup is still on Windows 7 / Office 2010 level, but being the kind of eager early adopter that I am, my home PC’s have moved to the brave new world of Windows 8 some time ago already. I installed Office Professional Plus 2013 on a Windows 8 64-bit laptop that’s not joined to a domain, so my login credentials to Windows are linked to my Microsoft Account (previously known as Windows Live ID). In my first tests in August this was a blocker for using a CRM Online organization where the user’s WLID / Microsoft Account was different in CRM and on the local machine.

Update Rollup 11 removed the need to manually enable Windows Identity Foundation (WIF) on Windows 8, but out of old habits I checked that it was available before configuring CRM. Launching the CRM client Configuration Wizard and selecting CRM Online on the Server URL field of the Configure Organizations prompt gave a familiar error: “Cannot connect to Microsoft Dynamics CRM server because we cannot authenticate your credentials.” Just like before, it appears that the Configuration Wizard automatically attempts to use the Microsoft Account of the local user for logging in to CRM Online. Logging out of the account in Internet Explorer and then logging in to CRM Online in the browser didn’t seem to resolve the issue with the Outlook client connectivity, as a further error message was presented later in the Initializing the Organization phase:

There is a problem communicating with the Microsoft Dynamics CRM server. The server might be unavailable. Try again later. If the problem persists, contact your system administrator.
[Expanded Information]
Unable to load the native components of SQL Server Compact corresponding to the ADO.NET provider of version 8082. Install the correct version of SQL Server Compact. Refer to KB article 974247 for more details.

The KB article referenced in the error message discusses the following issue: “You receive an error message when you run a SQL Server Compact 3.5-based application after you install the 32-bit version of SQL Server Compact Edition 3.5 Service Pack 2 on an x64 computer.” However, downloading and installing the x64 version of Microsoft SQL Server Compact 3.5 Service Pack 2 for Windows Desktop didn’t resolve the CRM configuration error, so I opened a support ticket with Microsoft. They instructed me that I also needed to install the Cumulative Update 2 for SQL Server Compact 3.5 Service Pack 2, which is a hotfix that you need to request a download link to be sent to you by email. After my SQL CE 3.5 had been updated to build 3.5.8082.00, I was finally able to connect my Outlook 2013 with our CRM Online demo organization.

Connecting to CRM on-premise with IFD

During the previous test with CRM Online I had also tried to connect the Outlook 2013 CRM client  to our production on-premise CRM server that is IFD configured. I kept receiving the following error: “Cannot connect to Microsoft Dynamics CRM server because we cannot authenticate your credentials. Check your connection or contact your administrator for more help.” Looking at the error details there was a message claiming “no credentials are available in the security package.” [Read more…]