Engaging Networks Import Records
The Engaging Networks Import Record ( EN_Connector__Engaging_Networks_Import_Record__c ) is important in that for each transaction, pulled from Engaging Networks, a new object is created to hold the data.
These objects thus represent a 'staging' queue, which the Engaging Networks Mapping tool uses to extract the information in order to map to various locations in Salesforce.
To access Engaging Networks Import records, head to tabs and select Engaging Networks Import Records.
Depending on the 'View' options ( and if there are objects ), a list of current objects should be shown.
It is useful to create a View and include the columns of data that are most useful.
From the initial view, you will see that an Engaging Networks Import Record holds the same structure as the Transactional Data file format.
When clicking into a specific record, it is clear to see that the Transactional Data's CSV columns are mapped directly to the fields on the record.
Making sure the right fields get populated
How this object was originally designed was to have most of the 'default' fields already created.
Unfortunately, it assumes that fields happen to be named the same way (for all clients) in Engaging Networks.
The logic is that the tool reads the CSV header, lower cases it and replaces spaces with underscores. It then tries to match this with a field on the ENIR.
For example, if on the Default Supporter Record the email field is named Email Address, then the data will happily map to EN_Connector__email_address__c.
However, if the field is named Email - then the auto-mapping, done when the records come in, will fail and EN_Connector__email_address__c will appear blank.
To solve this, you either need to create the field directly on the Engaging Networks Import Record OR use the recommended route of using the Engaging Networks Import Field Mapping tool. This tool 'reroutes' a CSV header to the specified field on the object.
Use these fields to write/hold the SFDC Contact Id. It is recommend that you create a field on the Default Supporter Record called SFDC Contact ID.
Use these fields to hold the SFDC Campaign Id. Engaging Networks offer a field type called 'External Reference' fields. It is recommend that you enable Campaign Reference 1 in the Admin settings and name it SFDC Campaign ID.
There is a pre-set trigger which lookups the CampaignMemberId, based on if SFDC Campaign Id and SFDC Contact Id are populated on creation.
This is a very useful field in that if there is an issue in trying to create the relevant sObject, the error will be written back here.
For example : there is an Engaging Networks Mapping to create Opportunities.
On the mapping, the field CloseDate was missed and Salesforce is unable to create the sObject - as this is a requirement for creation.
Checking the ENIR object and focussing on the Error Details field - the following error is returned : Required fields are missing: [CloseDate]
These two fields are used in conjunction with the 'Create or Update' option, under the Engaging Networks Mapping filter. If the Engaging Networks Mapping tool is tries to create an object which triggers Salesforce's native de-duplication scope, the Record Count is on how many object it finds and the Record Detail the appropriate Matching Rule response.
For example : there is a new Engaging Networks Import Record object for Bob Lanrey, whose email address is email@example.com. The is also a Contact record with those exact details.
After the apex job has completed processing the Contact mapping, EN_Connector__Matched_Record_Count__c would have 1 as the value (due to matching one Contact) and the EN_Connector__Matched_Record_Details__c field the value of the de-duplicate alert.
Not so notable fields
At one point, the original developer added a lot of not-so-useful fields. These are :
EN_Connector__salesforce_contact_id__c ( we already have EN_Connector__sfdc_contact_id__c )
Supporter Data 1 to Supporter Data 30 ( now can be used as workflows or placeholders )
How do I populate these records?
Either import with example test data (CSV found here) or use the Engaging Networks Manual Pull tool to extract data from the respective Engaging Networks account. For the latter option, this may not be helpful if the account is 'short on data', either for that timeframe or if the account is recently opened. In these cases, ask the client / account representative to process a few test pages so that some data will flow through to Salesforce.