Perficient clients are able to leverage a wide range of tools across the broad spectrum of current technologies. Through the course of my experience with Perficient’s Salesforce team I have been able to help implement different types of technical solutions. My blog posts will focus in on various solutions, and I will start with the very popular data migration tool Informatica.
Informatica provides a cloud based means of data migration, transformation and correction for Salesforce customers. One of the features which will enhance the productivity of a migration over the Salesforce’s APEX Data Loader is the ability to link records automatically. Often using the APEX Data Loader provided by Salesforce can become an arduous task, requiring advances skills in MS Excel and can lead to errors due to the translations from the CSV file Salesforce exports and Excel.
Under the hood we are building a way to connect a child record to the parent based on an External Id which is the same and unique in both the source record and the Salesforce parent record. When creating or editing a task, you can link the record being imported using the “Related Objects” button on the fifth step which is called “Field Mapping”.
In the above dialog box we can see there are three columns. The first is the parent object inside Salesforce which the object being loaded is a child of. The second column is the name of the look-up relationship used to link the two objects. This is important when there are more than one look-up fields referencing the same parent object. The third is the field in the parent object which will be used as the Id for linking.
In the example above the Owner, CreatedBy and LastModified fields are populated on the Account object based on the mapped value of the fields matching the “West_User_Id__C” field in the User object. The important difference is that we are not matching the Salesforce User Id.
With this method a single Master Id across systems will allow connections for data integration for inserting and updating when you must relate a record to a parent. Informatica manages all the look up transformations for you in a nice, visual manner which can be validated and easily managed.
In the next article I will walk through how to extend connections so that you can make more complex transformations. An example of this kind of transformation is if the field could be mapped to different objects like the Activity objects.
This can also be done using Apex Data Loader using an Upsert operation.