I want to import my customer list but I'm not sure what the correct ordering of fields should be. Is there a CSV template I can use to export my data and then import it into Salesforce Essentials?
[SalesForce] CSV template for Contact Import
Related Solutions
When performing an upsert you can avoid duplicates by matching on either the Salesforce ID or custom External ID type field. If your performing an upsert, or update using dataloader.io, you must map a column to the Salesforce ID or an external ID.
Using dataloader.io, the ~ steps: Import your parent Account records.
- Select the Import option
- Select the import operation type – upsert.
- Select the object you wish to import data into Account.
- Verify Mapping Between Fields
- Click Next Upload the CSV file you wish to import by clicking the Upload CSV button.
Import your child Contact records, ensure the Account field contain the name of your Accounts.
- Select the Import option
- Select the import operation type – upsert.
- Select the object you wish to import data into Contact.
- Verify Mapping Between Fields
- You'll need to Lookup the Account Ids you've just imported, on the mapping file, select your Account field, and choose the "Lookup via Account" Account Name.
- Click Next Upload the CSV file you wish to import by clicking the Upload CSV button.
Note, because you are upserting from an export ensure your upsert files do not contain any system fields.
Good Luck.
The 50k records returned by SOQL is a hard limit. I haven't heard of this particular limit being "black tab increased", but if the customer does not need much more than that it may be worth a try to contact their sales rep and ask.
Failing that, if the export is native Apex, you'll have to break it up into 50k row chunks.
It's possible that with HTML5/JS or Flash, and a clever paginated Apex exporter, you could simulate a larger-than-50k data load even though you're still only chunking out 50k records at a time. Also could look into a browser-based vanilla API integration which would also be able to get at more than 50k records at a time, although as you point out, customer portal users can't use the API.
If the exports aren't ad hoc, you could also do something like generating the export using an API integration running on a timed batch, but upload the large extract into Salesforce as a Document or Attachment. Then give your users the link to that uploaded document.
Best Answer
There's no standard, right or wrong template as such. It all depends on what data are you dealing with. If you are looking to standardize it within your organization, you can consider what are important fields that you want to import in your Contact.
When it comes to ordering of the field, again there's no order as such which has any impact on the load process itself but you may still want to group the fields logically. Say Name fields first, then contact information viz., address, email, phone, etc. and then all other information. In the template that you will use you would not want say FirstName as in first column of your CSV and LastName as somewhere else. A good way to achieve this would be to have columns in the same flow as they appear on your page layout.
Furthermore, ordering is relevant on any relationship which ties your Contact being loaded to any other entity, say Account or any other object. In that scenario you definitely want to load say Account records first, so that you can have a reference of that Account during your Contact load.