Table of Contents

Importing Data::Basic functionality

The import feature enables users to import data or records from various sources into coreBOS. Currently, CSV format and VCF (Vcard) format are allowed to import. (Exceptionally iCal import is supported for Calendar module).

Export/Import feature is enabled on almost all modules. There are a few that are still not supported like price books or FAQ and Documents whose import process is more complex and is supported by an external tool which is not free (ask us if you need it).

Steps to Import

Step 1: Select File

After clicking on Import icon, the first step is to select the file. Click on the Browse button to select a file from your local system and upload it to the server for Import. Currently, csv and vcf formats are accepted.

Step 2: Specify Format

File Type

Following 2 sections, apply only for csv file import:

Delimiter

Currently comma(,) and semi-colon(;) are supported as field delimiters. This delimiter indicates the character separator used to separate field values from each other within a row. In the case that you need to use the same character in your data and do not want the tool to read it as delimiter, enclose the string in double quotes (“). Then, only delimiter characters, outside the double quotes, will be treated as actual delimiter.

Has Header

The 'Has Header' property is to indicate whether the csv file has a header row or not. If you indicate that the csv file has a header, then the first row from the csv file is treated to be header and skipped from importing into the csv file. Having a header in the csv file, makes it easier for the user to map the csv columns to right CRM fields.

Step 3: Duplicate Record Handling

This is an optional step, which allows you to configure duplicate record handling during Import. You can configure the criteria, for duplicate records look up and can also configure the action to be taken when duplicate records are found.

We have implemented a new workflow expression:

executeSQL(query, parameters...)

that can be used inside a condition expression map as the following example:

<?xml version="1.0" encoding="UTF-8"?>
<map>
	<expression>executeSQL('SELECT accountid FROM vtiger_account INNER JOIN vtiger_crmentity ON vtiger_crmentity.crmid=vtiger_account.accountid WHERE vtiger_crmentity.deleted=0 AND vtiger_account.accountname=?',substring(accountname,0,10))</expression>
</map>

This map will return the ids of the non deleted account records, whose account name matches with the 10 first characters of the column mapped with accountname in the file. Based on the Duplicates Handle Method chosen the records with the ids returned might be skipped/overwritten/merged.

Step 4: Map Columns to Module Fields

The last step is to configure the mapping between the import file columns/headers to the Module fields.

Saved Maps

Import Process

Terminology

Process

Clicking on Import button in Step 4, triggers Import.

1. When a user triggers import in one particular module, the user cannot start another import in the same or any other modules of the CRM.
2. When user X triggers import on a particular module, no other users can trigger import on the same module, whereas they can trigger import on other modules of the CRM.

Intermediate status update

Final Result of the Import

If the record limit has crossed 'Immediate Import Threshold' count, then the import is scheduled and the following message is shown:

Once the scheduled Import is completed, an email notification is sent to the user who scheduled the Import along with the Import Result.

Understanding error messages

Data Corruption Error

This error shows up when the import has been interrupted for various reasons like crashed in between or canceled by a user etc. This error indicates that the import table still has records to be imported into the system, but all the information related to the import (like mapping, default values, merge criteria) are all lost. So these records can not be imported and the user needs to clear this data before starting any other import.

Import Locked Error

This error indicates that the Import on the module that user is trying to import, has been locked by another user's import. The details of the module, user and the time at which the Import has been locked, are exposed in the error message itself.

Import Interrupted Error

When a non-admin user triggers an import, and admin user tries to import to the same module, at the same time, admin user will not get Import locked error. Instead, admin user will be able to see the current status of the Import triggered by the non-admin user and will also be able to Cancel the import. In this case, when non-admin user is in the middle of the import and the admin user cancels the import, the error message above is shown to the non-admin user.

Frequently Asked Questions