Resolving Given Key Not Present in Dictionary error
Read the following topic if you encounter Unable to update data into the <entitytype> entity. The given key was not present in the dictionary. error.
Symptoms
When you are running a Scribe solution for a Microsoft Dynamics CRM to Acoustic Campaign Integration, two maps are used to update the opt-out status for Leads and Contacts from Acoustic Campaign to MS Dynamics CRM direction. If there is a mismatch of data based on the CRM GUID, or Acoustic Campaign Recipient ID an error can occur.
The error might occur because of the following reasons:
- The record is created in or exists in another Acoustic Campaign database that is synchronizing with a different CRM environment, and an Acoustic Campaign admin tried to add the record to a different Acoustic Campaign database with the CRM GUID value from the old database still in place.
- One of the other mapped fields is marked as read-only in CRM and is not allowing the update from Acoustic Campaign.
- If you are deleting a record.
Resolving the problem
Mixing CRM integrated contacts between Acoustic Campaign databases is not suggested. If an Acoustic Campaign admin needs to do so anyway, it's best to exclude the old CRM Sync id and recipient id values. The record has to be re-established in the new databases.
In the error is caused because of reason 2 that is mentioned, the field needs to returned to a read or write state and the entity that is republished in CRM. If the values still don't update during the sync after this has been completed, CRM tracing might need to be enabled to determine why the update is not successful.
When deleting records, A CRMi specialist can assist with verifying if the records are deleted. Export the Scribe errors and attach it to your CRMi support case.