I am migrating to Salesforce.com from an on premise CRM system. I have a large amount of historical data relating to users who have now left my company. I need to bring this data into Salesforce and retain the information about who originally owned these records. I have a regulatory obligation to record and maintain this information.
I would like the owner of the record to point to an inactive user record representing each historic user. In that way I will have a consistent way of reporting on who did what when.
However I cannot load data into Salesforce and assign it to inactive users. It appears that I must activate the user, load the data and then inactivate the user without reassigning their records. This poses a problem because I don't have enough licences to cover all current and historic users.
I could break the data load down into batches based on owner to fit within my licence limit but this would be rather time consuming.
I have considered adding custom fields to the relevant objects to store the historic user information but I dislike that solution because it is not as tidy as using the Owner field. I and my users would have to look in two places to determine who was the owner of a piece of data.
I have considered using Chatter Free licences for the inactive users but such users cannot own these records.
I could use Chatter Plus or Force.com One App licences but I would have to request these from Salesforce which might incur an extra cost. So I am reluctant to do so.
Are there any other possible solutions that I could consider?
Best Answer
It's now possible to migrate data with inactive users (as of Winter '16) here are the release notes about it:
Migrating data to Salesforce and mass updating records just got easier. Now you can set audit fields when you create records through the API and update records with inactive owners without contacting Salesforce.