Weekly Padgett

No. 0181 min read

Twelve thousand CRM records. Please keep working.

I moved 12,000+ CRM records from Salesforce to Microsoft Dynamics without interrupting service. The rows were easy to count. The people still had work to do.

A woman sits inside an open filing cabinet drawer while a man stands beside the cabinet.
File photoDramatization. No data migration was harmed.

You have more than 12,000 CRM[1]Ref. 1CRM en.wikipedia.org records to move, and everybody using them would appreciate it if you didn't fuck up their workday. Reasonable request.

At codesigned, I migrated those records from Salesforce[2]Ref. 2Salesforce salesforce.com to Microsoft Dynamics[3]Ref. 3Microsoft Dynamics microsoft.com with no service interruption. Sounds impressive until you remember how much fits in an unremarkable file. The awkward part is that people are still using the damned things while you're moving them.

You can land exactly the expected number of records and still have a mess. Contacts point at the wrong organizations, ownership changes, and two values that meant different things get shoved into one destination field because their labels looked close enough. The row count won't tell you about any of that.

Consider a hypothetical contact attached to an account and assigned to a colleague. The text fields copy beautifully, but the account doesn't exist in the destination yet, so that relationship can't resolve. Meanwhile, the colleague's destination user identity isn't mapped, and ownership may fall back to whatever the importer defaults to. Every write can succeed and leave you with something less useful than what you started with.

Parent records and lookup targets generally need to exist before you attach dependent relationships. That might take a second pass, or an unresolved relationship might need to block that record. I'd rather decide that myself than leave it to the importer, which has no idea what my colleagues need to do with these records.

I trained colleagues in data-management best practices as part of this work. People need a shared understanding of identity and ownership, and of which fields are required, or a clean destination gets confusing again pretty quickly.

I'd want to go edit a customer record before celebrating.

References

  1. CRM en.wikipedia.org ↩
  2. Salesforce salesforce.com ↩
  3. Microsoft Dynamics microsoft.com ↩
data-migrationsalesforcemicrosoft-dynamicscrmcodesigned