OK, I need to import a few thousand records and import wizard seemed like a good choice. First I did some accounts - that went smoothly. Next I went to import some custom objects that have a master/detail relationship with the Accounts.
(Sidenote: It's really weird that the import wizards for accounts and basically everything else is in two very different locations - took a while to figure out.)
Step 3 of the wizard asked me to specify relationships.
Which Account field are you including in your file to fulfill the Master/Detail requirement?
It listed 3 options - Account Name, Salesforce.com ID, and an external ID. I have an external ID defined on Accounts and that's what's in the database (And what I used when creating the accounts) so I chose that. Now that external ID isn't stored on the custom objects so I didn't select a field to store it to in the subsequent steps. Everything else went normally.
When I got the result email it said
Number of Custom Cases skipped because they had an incorrect Master/Detail relation: 943
(That's every single one of them.)
So what went wrong? Does that external ID have to be stored on the child object as well as the parent? They didn't really give me any more detail than that. I could probably rewrite the query to get the account name but that isn't stored on the child object either. I don't want to have to try and correlate the Salesforce.com ID.