Data Profiles are configured in Setup / Extensibility / Data Management / Data Profile
Data profiles define how source data is mapped to target fields in the system. Data profiles also allow the source data to be altered (transformed) and validated. The act of importing data is performed on the data import screen, the profiles you setup here are selected when executing a data import.
Data profiles can be setup as needed, there are no prerequisite configuration steps.
The Data Profiles panel towards the left of this screen allows you to select existing profiles to view and edit on the Edit Data Profile panel to the right. Actions are also available in this panel which are shown as icons above the Filter text box. The available actions are described below.
Imports a json file that contains a data profile configuration
Exports the data profile configuration of the selected data profile to a json file
Deletes the selected data profile if not in use
Adds a new data profile
The information in this panel reflects the currently selected data profile. From here you can change profile details (fields will display a red left border if a value is required and purple text if the field is read-only and cannot be modified).
Data Profile Fields and Options:
Note: Some of the options listed below only appear when a specific file type is selected.
Name: a descriptive name for the profile. Typically this would describe what data is being imported
Sample File: a sample of the import file. This file should contain the import file field structure but does not require the complete set of data to be imported. The sample file is added via the upload sample file action button
Target: this indicates what entity the imported data will be written to. Typically fields in the import file will contain the required data for the target. E.g. if the Target is set to 'Account - Package' the import data would include the Account Id, Package Name, Effective date, Status Type Id, and Package Frequency Id (the required fields when adding a package to an account). However target data can be set using a transform (explained further below) without the need to include every required value in the source file (for instance you can set the package status value to an active status for all imported account packages without the need to have a 'Status' field in the import file)
Include Child Target: indicates child objects should be imported as well. For instance contacts are child elements of accounts
File Type: indicates the file type of the import file
First Row has Labels: indicates that the field names in the import file will be present on the first row of the source file. This option is displayed when selecting a file type of 'CSV'
Delimiter: the character that is used to separate values in CSV source file types. A lower case \t can be entered for the Tab delimiter
Envelopes Per Request: the number of json envelopes per request
Patches Per Envelope: the number of patch requests to include in each envelope
Stop On Error: if enabled the data import will halt when an import error occurs. Otherwise if unselected the import action will continue even if errors are encountered
Lock Settings: prevent the settings for this data profile from being modified when the profile is selected in the data import configuration
This tab will detail the source file layout when selecting the 'Multi-Layout' file type. If you do not select a Multi-Layout file type this tab will not be displayed.
This tab is where the source (imported) fields are added. The source data type as well as any transforms and validations executed on data import are also configured here. Transforms are used to manipulate the incoming data before it is written to the target (case conversion, date format conversion, etc.). Validations are used to verify that the source data matches a regular expression and/or list of acceptable values. Data that does not match the validations configured will not be imported.
If transforms or validations are configured on fields on the schema tab the box above the Transforms/Validations text will display a check mark and the specific transform or validation type that is setup will be listed underneath the text.
Example: a transform configured to trim whitespace before and after the source field value (full trim).
How to add source data fields and configure their data types, transforms and validations will be covered in the adding data profiles section below.
This tab is used to map the imported/source fields to the desired target fields in the system. When you add items to this tab the source field will be displayed on the left and the target (system) field will be shown on the right. If the source data is being modified or validated the transform/validation will be displayed here in between the source field and the target field.
When transforms are setup the source fields will display a '+' at the bottom of the field box.
Clicking this + will allow you to add additional source fields that can be used in the transform configuration (assuming any source fields remain to be configured on the visual map). The + at the bottom of the field box will also be available on the target data fields on the right so that you can import values to multiple target fields if desired.
Source and target fields can be removed by clicking the 'X' within the field.
Clicking on a transform field in this map will bring up an edit modal allowing you to view and edit the transform settings.
How to configure types, transforms and validations will be covered in the adding data profile guide below.
This tab allows you to execute plugins (custom code) at different stages of the import process.