Visit Nexus to get an overview of Nexus' solutions, read customer cases, access the latest news, and more.


This article describes how to create or edit a mapping in Identity Manager Admin

Mappings offer an easy mechanism for copying data between data pools. Such copy operations are often part of BPMN processes, for example, data of a cardholder must be copied from the company directory to the card object or a request. Mappings are enabled from BPMN process tasks. For more information, see Set up process in Identity Manager.

The mapping mechanism supports mapping of fields from the process data map which do not belong to any data pools. This is called free field mapping and you can read more about this below in section "Free field mapping". 


Expand/Collapse All

Prerequisites

Before setting up the mapping, make sure that the following things apply:

Step-by-step instruction

  1. Log in to the Identity Manager Admin as an admin user.
  1. Go to Home > Mappings.
  2. To add a new mapping:
    1. Click +New.
    2. Enter a Name, for example MapEmployeeToEmployeeCard, and a Description.
    3. Click Save+Edit.
      The
      Mapping panel is shown.
  3. To edit an existing mapping, double-click on its name.
  1. In From Source Data Pool, select the data pool to do the mapping from.
  2. In To Target Data Pool, select the the data pool to do the mapping to. 
  3. Click + to add mapping fields and select a source field and a target field for each entry.

The value of the source field will be copied into the target field, when the mapping is executed.

Mapping the same data pool

Since Smart ID 21.04, mapping between the same data pool is not allowed (an error pop-up will appear). 

For free field mapping, see below.

Free field mapping is useful in cases where you want to map fields which do not belong to a data pool.

For example, free fields can be used as:

  • source to copy values from the process data map into fields of a data pool
    or
  • target to copy values from a data pool field into a field of the process data map
  1. In From Source Data Pool, select Free Fields from the drop-down list.
  2. In To Target Data Pool, select the the data pool to do the mapping to.
  3. Click + to add mapping fields.
    1. Select a field from the drop-down list for the data pool.
    2. Type a name for the free field. The name must be an key which exists in the process data map.
  1. If some fields have the same name in the two data pools, click Create references automatically to map those fields automatically.

    Creating references automatically is not applicable for free field mapping. See below for adding and deleting field mappings manually.

  2. To manually add a field mapping, for fields that do not have the same name, click + and select a field name in the source data pool and a field name in the target data pool.
  3. If you want to delete a field mapping, select it and click Delete.
  4. If you want to change the order of the field mappings, select a field mapping and move it up or down with the arrow buttons.

In some situations a String date needs to be converted to a Java Date object (or vice versa). If the actual format of the date is not known, you must add information so that the java runtime can convert/parse the string to a date. This is done in the mapping.

  1. Add a date format, for example, MM/dd/yyyy, that describes the way a String date should be converted into a Date object. You select the date format from the drop-down list to the right. You can also enter your own date format instead of selecting one from the list.

    Be careful when selecting a date format or when entering a custom one. You must select the date format that matches the actual pattern of the data in order for the conversion to succeed. For every date format change in the mapping, a clear cache is required.


  2. If you need to convert the Date to a Unix Timestamp (= milliseconds since epoch) and the Unix Timestamp (= milliseconds since epoch) to a Date, select "Unix Timestamp" from the drop-down list.
  3. The date format is stored in the “dateFormat” column in the DataField table. For example, on a mapping like BirthDate (String) - BirthDate (Date) the date format (“yyyy-MM-dd”) will be stored on the String database entry for that field. The format is always linked on the String field of the mapping so that if this field (the String one) is used on multiple mappings, the same date format will be applied automatically.

This matrix shows the supported automatic type conversions:

 from / toStringNumberBooleanDate with format
String(tick)(tick)(tick)(tick)
Number(tick)(tick)(tick)(tick)
Boolean(tick)(tick)(tick)(error)
Date(tick)(error)(error)(tick)