Identifier Field Handling
Whether a record is inserted or updated is based on the population of the ID or External ID fields as described below.
ID Field Handling
The ID field on a Salesforce object is the unique value assigned to each record. To update an object a field in the IMan dataset must be mapped to the ID field in Salesforce.
In conjunction with the Insert/Update operation a record is inserted or updated based on the following logic:
- If the ID field value is empty, an insert will be performed.
- If the field is has a valid ID (i.e. one that can map to an object in Salesforce) the corresponding record will be updated.
- If the field has an invalid value (i.e. one that cannot map to an object in Salesforce) an error will occur.
External ID Field
IMan also supports the use of External ID fields as an alternative means to update records in Salesforce.
If a field is mapped to an External ID field, the update logic will following the same logic as updating with an ID field (above).
Fields with External ID values take takes precedence over ID fields, such that if a both an External ID and an ID are mapped, the External ID is used; and it will not fall back to the ID field if no match can be made.
IMan permits only a single External ID to be defined on the object. If multiple external IDs are defined on the object an error will be raised and the import will fail.