Outlook Synchronization in Microsoft Dynamics CRM 2015 (white paper)

Introduction

In it’s recent white paper (Date: September 2015), Microsoft has explained the architecture behind the Outlook Synchronization in Microsoft Dynamics CRM. Reading the white paper gives a better idea about the “behind-the-scene” processes which take place when you are synchronizing your Outlook with your Dynamics CRM organisation. I have taken the liberty to highlight a few key points of the paper.

Changes to items in Outlook

Changes to items in Outlook

The Outlook synchronization process detects changes by monitoring MAPI change notifications, which Outlook generates whenever an item is altered. When a MAPI notification is detected for an item that is marked for synchronization, an entry recording this is added to the OutlookSyncTable in the Outlook Sync Client Cache.

This ensures that changes to CRM tracked items inside Outlook are picked up by CRM even when these changes occurred in the absence of the CRM add-in (for example, the add-in was disabled during the change or changes were made via Outlook on the web or through native applications on mobile devices).

Note: MAPI is a Messaging API that was developed for building solutions on Microsoft Outlook.

Changes to items in Dynamics CRM

Changes to items in Dynamics CRM

CRM changes are fetched by calling the PrepareSync API on the server, which identifies the number of items on the server that have changed for a particular client and returns that summary information since the last time a successful synchronization of such changes was performed. With this information, a GetSyncData call will be made against the server with a columnset that only contains the CRMID and the timestamp of the changed items.

For the items retrieved in this way, the PostSync API will be called to identify to the server that the change on the item has been processed. The items are then added to the OutlookSyncTable in the CRM for Outlook Sync Cache for later processing.

Service activities and service appointments

Appointment and service activity

I had a painful experience in the past trying to synchronize modified service activities from Outlook back to CRM, which does not work by default (read: it is designed not to work that way).

The white paper clearly confirms this, but does not explain the reason behind this set up:

You can push service appointments in CRM to Outlook as a regular appointment, but the appointment in Outlook won’t sync back to CRM, and you should always modify the service appointment in CRM to provide consistency. Directly updating the appointment in Outlook is not allowed nor recommended.

Any further explanation would be greatly appreciated. So if anybody has more info about this, feel free to share it!

If you are interested in reading the full white paper, you can download it here.

4 Comments

  1. Michael Derrick

    Thanks for your notes r.e. syncing modified Service Activities in Outlook back to CRM. You mentioned that this “does not work by default”. Have you found a way to get this work? The reason I’m asking is that I’m finding that Service Activities that are declined by a Resource via their Outlook Calendar is not automatically updating the Service Activity in CRM. I was expecting the Service Activity in CRM to be updated by setting it to something like Completed – Cancelled. I’ve also noticed that when a Resource accepts or declines a Service Activity via their Outlook Calendar and they choose either “Send Response Now” or “Edit the Response before Sending” that the accept/decline notification email that is generated is sent to the Resource’s own Inbox rather than the scheduler’s (Owner of the Service Activity) Inbox. Have you come across this behaviour before?

    1. Hi Michael, I have not found a way to make this work as it is intended by Microsoft to not work this way. That is what I meant by ‘does not work by default’. As the Service Activity does not sync back, any change to it on the Outlook side is not shown in CRM, e.g. this explains why the status update of the SA is not updated in Dynamics CRM. As this moment I have not found a work around to this problem and to be honest I have no idea if Microsoft is planning to change this setup in the future.

        1. Koen vdv

          Hi Asha,

          I have not seen any update concerning a possible service appointment (SA) sync to Outlook.
          As a consequence I have to say “no”, there is no out of the box way to sync them.
          You could built a workaround e.g. by creating regular appointments for every appointment and let those appointments sync.

Leave a Reply

Your email address will not be published. Required fields are marked *