This documentation supports the 20.02 version of BMC CMDB.

To view an earlier version, select the version from the Product version menu.

Creating precedence sets and associations for reconciliation merge activities

BMC CMDB includes standard identification and precedence rules for setting precedence values for datasets, classes, or attributes before running a reconciliation merge activity. 

A configuration manager can create a custom precedence set with custom precedence values at dataset, class, and attribute levels if the standard rules are not suitable.

Precedence sets and values

A precedence value determines the data that is written to the target dataset from the source datasets. A precedence set defines the precedence value for a dataset in a merge activity. Each source dataset is paired with a precedence set. This set serves as the default precedence value for all classes and attributes in that dataset. If precedence value is not specifically assigned, the classes and attributes in a dataset carry the value set at the dataset level.  When the merge activity runs, if the dataset value and the class or attribute value are not the same, the precedence value assigned at the attribute level is considered. Class-level precedence values apply to all attributes of the class. By default, the dataset precedence value is 100. You can change the precedence values for classes and attributes to override the value set at the dataset level and class level.

The following image shows how precedence values determine the data that is populated into the production dataset during a merge activity. 

Specifying precedence values to attributes while merging datasets


Allen Allbrook wants to merge the data from the datasets Source1 and Source2 to the target dataset BMC.ASSET. Allen wants to merge all the data from Source1 except Manufacturer and MarketVersion attributes. From Source2 he wants only Manufacturer and MarketVersion attributes to merge to the target dataset.

He sets the precedence values for the 2 source datasets as follows:

Dataset Precedence value150100
Attribute - Manufacturer 20100 (default dataset value)
Attribute - MarketVersion 20100 (default dataset value)

The default precedence value of BMC.ASSET is 100. When the merge activity runs, all data from Source1 and only 2 attributes from Source2 are merged into BMC.ASSET.

Precedence values do not apply to the core attributes. 

AssignedTo, AttributeDataSourceList, ClassId, CreateDate, DatasetId, InstanceId, LastModifiedBy, ModifiedDate, NormalizationStatus, ReconciliationIdentity, ReconciliationMergeStatus, Submitter.


  • In the BMC.ASSET dataset, values for configuration item (CI) attributes set in Remedy with Smart IT or BMC Asset Management take precedence over CMDB Explorer changes to those CIs.
  • If a merge activity is run for the first time to populate data in a target dataset, the precedence values assigned to the source datasets do not apply. For example, consider there are multiple reconciliation jobs carrying the same source and target datasets. The data from the source dataset that is present in the job which is run first, is populated in the target dataset, even if the precedence value of the source dataset might be lower than the other datasets in the selected precedence set.

    In such a case, the precedence value of the datasets is overlooked and the sequence in which a job is run is important. However, subsequent merge activities will consider the assigned precedence values.

Precedence associations for reconciliation merge activities

A precedence association links a dataset with a precedence set and can be reused among merge activities.

Each merge activity is linked to one precedence association that determines the precedence for each dataset that participates in the activity.

The following figure shows a sample list of existing associations that you can choose from for a merge activity.

Setting the merge precedence when reconciling multiple datasets to a target dataset

When you merge the data from multiple source datasets into a target dataset, you can select the classes and attributes from a source dataset that can be merged.

Best practice

  • Use the highest class level applicable to take advantage of inheritance. If you make changes to an attribute but another dataset with higher merge precedence has provided a value for this attribute, your changes to the attribute are not promoted.
  • A precedence set can be paired with different datasets in different activities. Likewise, a given dataset can be paired with different precedence association sets in different activities. Therefore, design your precedence sets for flexibility. You will need to create fewer precedence sets.
  • Modifying the merge precedence set for the Sandbox dataset can impact the BMC Asset Management integrity. Before modifying the default behavior, you must carefully evaluate these changes. For example, lowering the precedence settings to the same level as the personal Sandbox.

  • If the CI that you have created has values for location attribute, you must set the correct precedence values for location attributes so that the value is not overridden by the providers who are not authorized to populate the location attribute.

To set the merge precedence for merging datasets

  1. In the CMDB UI, select Configurations > Manage Reconciliation Rules > Precedence Exceptions.

  2. To create a new precedence set, click Add Precedence Set.
  3. Select the dataset to create a merge ruleset and set the precedence values.

    The precedence set area is displayed on the screen.

  4. In the Precedence Set  area, enter the required information in the following fields.

    Merge Ruleset Name

    Type a unique name for the precedence set. The name cannot contain any characters that are not allowed in file names for the operating system of your server. For example, on a Windows server, your job name cannot contain the following characters: \ / : * ? " < > |.

    Merge OrderWhen multiple source datasets have the same precedence value, the Merge Order value determines the dataset that is merged to the target dataset. The lower the value of the Merge Order, the higher the priority for that dataset. You can assign values starting from 0 (Zero).

    Explicit Precedence

    Select this option to apply explicit precedence entries for classes and attributes. You must add precedence rules for the classes and attributes.

    Clear this option to apply this precedence set to all classes and attributes for which a precedence is not defined.

    Ignore If Null

    Define how to handle empty, or NULL, attributes in the dataset associated with the precedence set. The Ignore if Null setting at the precedence set level is overridden by the same setting in any precedences defined for the set.

    Note: This field is visible for custom jobs and not for standard jobs.

    Checked — If the value of an attribute in this dataset is NULL and the precedence value for this dataset is the highest, the merge activity ignores the dataset. NULL value is not written to the production dataset.
    Cleared — Applies the precedence value for this dataset regardless of whether an attribute value is NULL.

    Warning: If used incorrectly, Ignore if Null can cause instances that cannot be deleted.

    Precedence Value

    Enter or select a value for the dataset that uses this precedence set. Assign a value from 0 through 1000, inclusive, with higher numbers meaning a higher priority. The precedence value is overridden by the value in any other precedence defined for the set.


    Select the class to which the precedence value must apply.


    If the precedence is for an attribute, select it from the Attribute list and enter a precedence value.

    StatusSelect Active to ensure that the precedence value is considered for the merge activity. You can later disable the activity by changing it to Inactive.
  5. After adding the precedence values, click Save to save the merge ruleset for the selected dataset.

Similarly, you can set precedence values for multiple datasets within a precedence set.

You can now relate the precedence set to a dataset by creating a precedence association.

To associate a dataset with a precedence set for merging datasets 

  1. In the Precedence Exception area, click Select Association Set, and select a Precedence Set from the list.
  2. View, create, or edit the merge ruleset for any of the datasets in the precedence set edit area.
  3. If you make any changes to values in the selected precedence set, click Save to save your changes.

Where to go from here

Creating a reconciliation job

Was this page helpful? Yes No Submitting... Thank you


  1. Mahesh Argade

    why is the documentation still referring to the screenshots from the old atrium core console ? the screenshots need to be updated to refer to the new CMDB Portal Interface

    Jun 15, 2020 04:26
    1. Maithili Deshpande

      Hi Mahesh, 

      Thank you for the feedback! The documentation is edited as per the CMDB UI.



      Jun 16, 2020 02:00
      1. Mahesh Argade

        thank you maithili.

        Jun 22, 2020 04:09