Configuration Data Definitions
Configuration Data Definitions allow advanced data exports, by defining the relevant entity attributes along with rules to mitigate duplication, referential integrity, versioning, business statuses, etc. on the destination environment at import. Thus, the data can be shared between different environments quickly and easily.
After creating the configuration data definition, you can include it in a Configuration Data Package where you can select the individual records that match your configuration data definition which you wish to export.
Generally, Configuration Data Definitions and Configuration Data Packages are used by Digital Developers to transport business configurations from one environment to another (e.g. a new version of a banking product, a new sales campaign, etc.).
To create a configuration data definition:
- Open Innovation Studio and select Configuration Management> Configuration Data Definitions. The Configuration Data Definitions List opens.
- Click Insert at the top-right corner of the screen. The General configuration page opens.
- Fill in the following fields:
Field Required Description Name Yes Name of the Configuration Data Definitions settings. Display Name Yes Name shown in the user interface. Master Entity No The entity on which the data export is built. This entity must have a unique constraint set. Mirror Collection No
This option enables replacing the same records with the same name and values. It updates the data on import.
For example, for a N-to-N relationship, if the bool is not ticked, and in the source entity there is an attribute cash and in the target entity there is an attribute card, after import the target entity will have both cash and card.
If the bool is ticked, the cash attribute will stay and the system will delete the card reference.
Include Business Unit No This includes the security elements set for the data. Include Business Status No
When a business workflow is attached to the entity, the status will be exported in the file. Each row has a status. For example the statuses can be:
- Previous Status
- Current status
- Next Status (for a predefined workflow).
This setting is mutually exclusive with Is Versionable.
Is Versionable No If the master entity is versionable, you can mark this in the configuration data definition (see Entity versioning for details).
If checked, when entity records are imported on the destination environment, depending on the matching records found on the destination environment (records with the same unique constraints), the following apply:
- If no matching record is found, a new record in the Draft state is created.
- If a matching record in the Draft or Version Draft state is found, the import fails.
- If a matching record in the Approved state is found, a new record in the Version Draft state is created.
This setting is mutually exclusive with Include Business Status.
Endpoint Name No
Allows you to trigger a server side script with the specified endpoint name on the destination environment on import. The IDs of the inserted master entity records will be passed through the
context.Data.packageVersionIdsobject, for example:Copy
var packageVersionIds = context.Data.packageVersionIds;
for (var i = 0; i < packageVersionIds.Count; i++)
var id = packageVersionIds[i];
Description No Insert details about the configuration data definition here.
- Click Save and Reload and open the Definition tab to configure the master entity's relationships.
- If the master entity's data model has been updated since the last time you edited the configuration data definition, click Regenerate to update the grid.
- Click the Edit button at the right side of each attribute, and fill in the following information:
Description Name Yes This is the name of the attribute. Type No
This is the type of attribute:
- Root - Indicates the master entity.
- Lookup Attribute - Indicates a lookup attribute with a Dictionary lookup relationship type.
- Details Collection - Indicates a lookup attribute with a IsChildOf lookup relationship type.
- N to N - For many-to-many relationships.
- Parent - Indicates an entity that references the master entity.
Entity name No Name of the referenced entity (including the master entity). Include No Tick if you wish to include the attribute in the export. Internal name No It is made up of the Name + "v"+Version + exportDate. Update only reference No This field is mandatory, for parent-child relationship between entities. Is Hierarchy No When referencing an entity with an IsChildOf relationship type, if the referenced entity includes a self-referencing lookup attribute, this box is automatically checked. Hierarchy Levels No When the Is Hierarchy box is checked, use this field to set up how many levels of self-referencing are allowed for the referenced entity. Default value: 4. Identification constraint name No Select the constraint created earlier. For more information, see Entity Unique Constraints.NOTE
If the entity A has a lookup attribute to another entity B or entity A is a child to entity B that in turn is parent to A, those attributes will be shown in the file, but if they are not included, the records will be empty i.e. will reference as none.
- Click Save to add the attribute or click Cancel to cancel the process.
Repeat for as many attributes as needed.
To export the package follow the steps from the Configuration Data Package page.