Gareth Rogan: Implementation Consultant and Cloud Evangelist ☁️
You don't stop playing because you get old, you get old because you stop playing

Data Migration

dataloader_icon_200x200 We have all been there. The new system looks great. It answers all the things our current solution does not. Then the fear sets in. What about our data!?! We cannot move systems without that! And data migration is a dark art and always fails (or at least that is what many have heard!).

Moving data to Salesforce is not a difficult process and it does not need to be a major issue. During my time working on the Salesforce platform, I have dealt with data a lot. Speaking as a former MIS Manager and CTO, I know only too well how scary the prospect of data migration may appear. With that in mind I have put together a set of hints and tips to make the process easier and hopefully take away some of the fears around data migration!

Number 1: Systems in general can export data to excel (csv). I have come across very few systems that do not support some sort of extraction of its data. More often than not a phone call to the current vendor is all that is required. Once you can have the data in flat file (or csv) you need to….

Number 2: Identify the primary record ID’s and map these to Salesforce records. Salesforce is quite clever. It allows you to create external ID fields, which can be used in uploading data via their FREE data loader tool. (Emphasis on free, there are paid solutions but I have yet to use one). The data loader tool allows you to update records, insert records, upsert records, export records and even delete records! If you map the primary record IDs to a external ID field you can…..

Number 3: Upsert. Loads of Upserts. Now that you have a record ID from your old system in Salesforce, you can use this to update records. So instead of trying to get everything into a single file, you can upload your Accounts, and then upload your Contacts, using the Record ID from your old system to match the Contacts to the correct Accounts. Jobscience by default has external ID (or Legacy ID fields as we call them) for all the main records on the system. Next, you need to think about….

Number 4: Data Quality. Not all systems are created equally. Email is a great example of this. Some systems will save Email Addresses as a free text field. Salesforce does not. It enforces field integrity so whatever goes into that field must be a valid email. This means you need to decide to clean up your records immediately, or……

Number 5: Create new fields to hold the data that is not loading. Salesforce allows you to add up to 500 fields to any of the standard or custom objects. So, if you do not have time to fix all the email addresses, simply add a field to retain the current email address field, and fix the issue later. This is also very useful when…..

Number 6: Transformations. You are moving to a new system. Now is your chance to clean up old fields and pick lists. Time to get rid of all those unused or no longer relevant status values (your gone Delete and Purge!). When you do map your old fields to new values, it is a really good idea to add the old values to a field in Salesforce. That way, after go live, if you get any questions about the transformations, you still have the values as they were in the old system. Which brings us onto…..

Number 7: Keep your upload files, and the result files. The data loader tool creates two result files after any upload. It is a really good idea to file these with your load files so you have them for future record and to answer queries. You should also create…..

Number 8: Upload Reports. When you do any upload, it is a good idea to create a report of the data you just uploaded. You can use this to compare to the upload and quickly see if you have made any mistakes! And if you have you still have the upload and result files, so you are ok!

Number 9: Is there any exceptions? Unfortunately yes. Sometimes to add data to Salesforce, you need to use the Salesforce ID’s. To get these you should use the data loader to export, and not the standard Salesforce reports. Standard Salesforce uses the 15 character case sensitive ID field. For uploads you want the 18 character version to avoid any issues. You get this from the data loader, or by creating a field in the record using the CASESAFEID() function (but just use the data loader).

Lastly, learn the excel function VLOOKUP(). It is the best way to match records on different excel sheets or to use your report to check if your data loaded correctly.

Any thoughts or other advice, please feel free to comment below!

Leave a Reply

Your email address will not be published. Required fields are marked *