Imagine – A logistic company has outgrown its present-day Salesforce Org and planning migration into a new Salesforce Org shortly. As part of this process, there will be need of migrating all its metadata and data. Their data model in the source (present salesforce) org has a complex relationship hierarchy with several master-detail and lookup relationships around objects, which must be maintained in the target (new Salesforce) org.
Prepare New / Target Salesforce Org
- Analyze, Design, Match and Check metadata in source org to target org. OR Migrate metadata using Ant migration tool (Deploying and Retrieving Metadata)
- Do required customization in target Salesforce org which includes Record Types, Page Layouts etc.
- Develop Sharing Models – Create new user groups, if necessary: Profiles, Roles, and Sharing Rules
- Review Ownership Rules in New Salesforce Org
- Make sure data points and fields from source org are captured in the target org.
- Test migration prior to import complete data. Run through a migration process in a sandbox.
- Do quick data validation once sample records are migrated.
Data Import in New / Target Salesforce org
1. Select a method for Importing Data
There are several different tools are available depending on salesforce edition and number of records being imported.
- Apex Data Loader
- MuleSoft’s Data Loader
- Jitterbit Data Loader
- Progress Data Direct
- Dell boomi
- Talend Open Studio
2. Import data in specific order
Core Object Records / Master / Parent records should be imported prior to import child object records / related object records. for e.g., Account object records should be imported before importing Contacts / Opportunities OR Cases.
3. Legacy ID / External IDs
Create External ID field and map or insert previous / legacy record IDs OR other unique identifiers from your source organization into the field. This will help us to Import related records using External IDs.
4. Data file preparation
Prepare data import file using Microsoft Excel or any other spreadsheet. VLOOKUP function will help expedite to add the new record Ids to your files to import. For e.g. As soon as Accounts records are imported into your new org, you need to replace any occurrences of old Account IDs in your import files with New Account IDs from the target Org.
Data Migration Best Practices
Once data import / export method is defined and data file are prepared. We need to focus on Data completeness, relative data, data accuracy with keeping in attention that, reliable and unique data should be available to business users on time, accessible immediately.
Employ following effective practices for organizing and migrating data will help to get the aforesaid points:
1. Identify data set for migration
Select objects to be migrated. For e.g., Only Contact information from each Account OR only migrate the Accounts from multiple divisions.
2. Create templates for the Data
Prepare an excel template for each Object using a data export from Data Loader (use export file as your template).
- Review Objects relationship which controls the order of data migration.
- Identify the required fields for each object.
- Populate data in templates.
- Review data before populating in template.
3. Check Target Salesforce Org
– Check Legacy ID / External ID fields.
(This field help maintain relationship and help build custom reports for data validation)
– Check custom fields into target org to store data contained in non-standard fields in the old org. For e.g., old organization stored Customer categories – Platinum, Gold, Silver, OR Bronze.
4. Load and Validate Data
- Once above steps are completed. Load sample records and validate.
- Load data into new Salesforce Org. (Preferably during night-time or off-office hours)
- Do smart random data test.
- Create pattern / comparison reports to validate data. for e.g., Object wise number of record counts. OR Run report to identify duplicate records.
- Generate exception data summary using SOQL queries to see what data is not migrated.
5. User Acceptance Test
Share new salesforce org access with end-users (key business stack holders) and get the feedback and Sign-off 😊
Ultimately, Salesforce data migration is a crucial project to deliver efficient data solutions to an organization. Though, it should be completed without impacting the quality of the data within the system.