Microsoft Dynamics 365 Blog

There are some complex rules that govern how deletes are propagated on items that are synched between CRM and Outlook.  I’ve seen some information out there that captures a portion what is going on, but thought I better paint the full picture.  Deletion behavior can depend on entity, owner, state of record, place of deletion, direction of prevailing wind, MSFT stock price, and other more esoteric factors.


When a user has the CRM Outlook client, contacts, tasks and appointments can sync between the two systems.  When a linked item is deleted from either system, two things can happen to the corresponding item in the other system: it could also be deleted,  or it could be left but with the link broken (no further synching handled for it).


In 1.x, we erred on the side of leaving things behind.   Preventing loss of data is one of our major commandments so we wanted to play it as safe as possible.  The only time a linked item was also deleted was in the case of “pending” tasks or appointments, to ensure that time wasn’t taken on deleted items.


Our strategy of playing it safe was mostly good.  Things sometimes got a bit ugly if we were leaving large numbers of contacts behind in people’s Outlook contacts folder.  In 3.0, the Fancy New Linking also exposed some issues around deleting appointments (where declining an appointment could delete it for everyone).  We also discovered that our “pending” rule was not well-understood (by us, that is) and inconsistently applied.


A bunch of us sat around in conference rooms, followed through various scenarios, argued, drew lots of tables on whiteboards and came up with the delete propagation strategy that we have in 3.0.  It’s a bit complex, with lots of conditionals, but there are so many requirements it had to meet.


The Rules


·      A contact deleted in CRM will be deleted from your Outlook only if you are not the owner.  Outlook contacts can have additional information on them that we didn’t want to lose.  Also, if you uploaded all your contacts to CRM and someone came along and deleted them and it cleaned out your Outlook, you’d probably be annoyed.  However,  if someone is cleaning out CRM, you probably don’t want all those old CRM contacts that you don’t care about hanging around in your Outlook.


 


·      If a contact is deleted in Outlook, it will never be deleted from CRM.  There is too much risk that someone will be tidying up their personal Outlook and not realize that it might have CRM server ramifications.


 


·      A pending appointment deleted in CRM will be deleted from Outlook.  This prevents calendars from being blocked by invalid appointments.


 


·      A pending appointments deleted in Outlook will be deleted in CRM only if it is deleted by the owner or organizer of the CRM activity.  This prevents an attendee declining an appointment and it being deleted from everyone’s calendar.


 


·      A pending task deleted in either Outlook or CRM will be deleted in the other system.  This avoids users working on invalid tasks.


 


·      Past appointments and complete tasks will not propagate deletes.  As future resource allocation is not at risk, and archiving policies can differ between systems, it’s safer to keep old appointments and tasks around.



The Table





























































Type


Act


State


Result


Contact


Deleted in CRM


N/A


Deleted from Outlook of non-owners.  Remains in owner’s Outlook


Contact


Deleted in Outlook


N/A


Remains in CRM


Appointment/ Service Appointment


Deleted or Cancelled in CRM


Pending


(Scheduled Start in the future in Outlook)


Deleted from Outlook


Appointment/ Service Appointment


Deleted in Outlook


Pending


(Open or Scheduled in CRM)


Deleted from CRM if deleted by the Owner or Organizer. 


Not deleted from CRM otherwise.


Appointment/ Service Appointment


Deleted or Cancelled in CRM


Past


(Scheduled Start in the past in Outlook)


Remains in Outlook


Appointment/ Service Appointment


Deleted in Outlook


Past


(Completed or Cancelled in CRM)


Remains in CRM


Task


Deleted in CRM


Pending


(Not complete in Outlook)


Deleted from Outlook


Task


Deleted in Outlook


Pending


(Open in CRM)


Deleted from CRM


Task


Deleted in CRM


Past


(Complete in Outlook)


Remains in Outlook


Task


Deleted in Outlook


Past


(Completed or Cancelled in CRM)


Remain in CRM

 


 See, coming up with this stuff is the kind of fun that we get to have around here.  Truly, it’s like we’re rock stars. J


Ilana Smith

We're always looking for feedback and would like to hear from you. Please head to the Dynamics 365 Community to start a discussion, ask questions, and tell us what you think!