locked
Issue with GetOutlokSyncData Plug-in with UR 7 while trying to manipulate the data that is being synced from CRM to Outlook by the CRM Client to Outlook RRS feed

  • Question

  • Cause of the issue : There has been a change in the way data is synced from CRM to Outlook and the data from the CRM contact record only is being synced to the Outlook fields. Even if we manipulate the data in the xml which is being synced, there is no effect on the data that is being this. The same worked fine before we installed UR 7.

     

    Route taken to resolve the issue :

     

    We created another plug-in for “GetOutlookSyncData” message for “Subscriptionclients” entity in the “Pre” stage which will help us get the “description” field in the context’s Output Parameters – “ColumnSetXml” key.

     

    So, that we get this in the XML which will be synced to Outlook from CRM and we can manipulate the value in the description field in the plugin’s Output parameter and we get the private description to sync to Outlook from CRM for the user.

     

    Problem faced:

     

    Input Parameter before we did any change in the pre-stage : “ColumnSetXml” : <columnset><column>contactid</column><column>modifiedon</column></columnset>

     

    Output Parameter before we did any change in the post-stage : “SyncDataXml” : <contacts entity="Contact" morerecords="0" paging-cookie="" version="3.0"><contact><contactid>{AE60740B-2BE3-DE11-93BC-001AA030DC81}</contactid><modifiedon date="12/8/2009" time="3:38 PM">2009-12-08T15:38:09+05:30</modifiedon>contact></contacts>

     

    We do not have “description” tag in the Output parameter because no data goes to the description field in contact.

     

    Then in the plug-in for “GetOutlookSyncData” message for “Subscriptionclients” entity in “Post” stage, we try to find that the “description” field is there in the xml that is being synced. We get the value from the UR to get the private description and if the “description” tag exist, we add the private description in the xml else create a “description” tag and add the private description in the xml which will be synced from CRM to Outlook.

     

    Input Parameter after we made the change in the pre-stage : “ColumnSetXml” :              <columnset><column>contactid</column><column>modifiedon</column><column>description</column></columnset>

     

    Output Parameter after we made the change in the post-stage : “SyncDataXml” : <contacts entity="Contact" morerecords="0" paging-cookie="" version="3.0"><contact><contactid>{AE60740B-2BE3-DE11-93BC-001AA030DC81}</contactid><modifiedon date="12/8/2009" time="3:40 PM">2009-12-08T15:38:09+05:30</modifiedon><description>Private Notes Dated 08 Dec 2009</description></contact></contacts>

     

    As we see above, the description tag has been added to the Output parameter’s but this does not get synced to Outlook and we will have the notes field in the contact blank out. As we have observed, any data is synced from CRM outlook is picked directly from the CRM Contact and this Output parameter is not at all considered.

     

    Sync of data from CRM to Outlook for Notes field is working fine if “description” is not PRIVATE.

    Tuesday, December 8, 2009 10:21 AM

Answers

  • We use Plugins to make description field PRIVATE by not saving it to the contact sync that will be shared to all users, but save it in a entity called "User Relationship" and use other plugins for contacts to make that description visible to the user by picking this field from the user's UR record for the contact.
    Tuesday, December 8, 2009 10:24 AM