This documentation supports the 18.08 version of BMC Atrium Core.

To view the latest 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 also create custom precedence rules for reconciliation jobs.

Precedence sets and values

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. For example, if precedence value is not assigned to the classes and attributes in a dataset, they 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 or class level too.

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 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. 

 CMDB internal core attributes

AssignedTo, AttributeDataSourceList, ClassId, CMDBRowLevelSecurity, CMDBWriteSecurity, 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.

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 choose 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 affect BMC Asset Management integrity. Before modifying the default behavior, you should 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 define a precedence set for merging datasets

  1. From 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 merge ruleset and set the precedence values.

  4. The precedence set area is displayed on the screen.

  5. 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 require 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. Do not write NULL to the production dataset.
    Cleared — Apply 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 this must apply precedence.


    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.
  6. 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 on Select Association Set, and choose a Precedence Set from the list.
  2. View, create, and edit the merge ruleset for any of the datasets in the precedence set edit area is displayed on the screen.
  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