Here is a brief overview of Companies and Contacts Import module. It is available in EPESI Store as free Premium Module.
Import module is by default restricted to superadmin level.
1. First thing - make a backup of your database in case something goes wrong!
2. Prepare data file to be imported into EPESI. Import module accepts Excel or CSV file format. Therefore from the application (database) you are using export data in one of those formats. Note: EPESI uses PHPExcel library which does not work with files created with Excel 2007 and later.
3. To import Companies and Contacts linked to those companies you need to import Companies first. Using an application that can read and format and sort CSV or Excel files (MS Excel, OpenOffice etc.), prepare the file for import. Take the exported file and make a copy of it. The first row has to have column names which are field definitions. Cleanup all unnecessary columns (fields) and rename columns to something short, like Company, Address1, WorkPhone (Work Phone), etc. Try to avoid spaces - use underline or camel case notation. Instead of "Work Phone" use "WorkPhone" or "Work_Phone"
4. Sort all data by Company Name. Remove all duplicates of companies - each one has to be unique. The Company Name will be used as a foreign key to link with Contacts that will be imported later. It is critically important that those names will match. Save it to a file called companies.xls (or companies.csv).
5. The same way as you prepared an import file to import Companies (step 3), create a copy from the original file and call it Contacts (xls or csv). This time you may have several records (rows) with the same company name if there are more than one contact linked to the same company. As in step 3 - the first row has to contain field definitions. Remove all unnecessary columns and rename them to something simple like Last (for Last Name), First (for First Name), etc.
6. Open Import module. Here you need to define field mapping for Companies. For example column ZIP (US postal code) in your file is called in epesi Postal Code, therefore you will specify something like this: ZIP - Postal Code
Below is the sample mapping for Excel file I was recently importing:
7. Do the same for Contacts. Save field mapping - it is stored in user's settings (per user, not globally).
8. Import Companies first. Don't import Contacts yet. Go to Companies module and inspect data. If something did not work as expected restore the database from the backup. Unfortunately sometimes it is a trial and error kind of work.
9. If data imported for Companies looks good reopen Import module and proceed with importing Contacts. During import contact's company field is automatically linked by name to a company record that was created in epesiBIM during import of Companies.
That's all.
Some extra info:
This is a simple, generic import tool. We wrote several custom import modules that take data from custom MS Access databases, Act! program, etc. - and import this data with notes, edit history, file attachments etc. A lot can be done beyond the simple import, however this is a subject too complex to cover here.
To import multiple groups per company simply separate them with a comma (or semicolon). The format should be like this then:
"Company Name","Address 1","first group,second group"
or if not escaping with "
Company Name,Adres 1,"First Group,Second Group"
Please note how quotation marks are placed in both cases.
You do not need to edit Company groups in Common Data tree - groups will be created automatically during import.