This documentation supports the 9.1 to 9.1 Service Pack 3 version and its patches of BMC Atrium Core. The documentation for version 9.1.04 and its patches is available here.

To view the latest version, select the version from the Product version menu.

Creating a Precedence set for reconciliation Merge activities

A Precedence set defines the precedence value for a dataset in a Merge activity. Each source dataset is paired with one, and that Precedence set serves as the default precedence value for all classes and attributes in that dataset. The highest value among all source datasets determines the data that is written to the target dataset. 


Within a Precedence Set, you can specify individual Precedences for either a class or an attribute, assigning them a precedence value higher or lower than that of the dataset. This prevents one source dataset from providing all the data in a merge. Class-level Precedences apply to all attributes of the class.

When the Merge activity is run, the precedence value specified at the most granular level is used for a given attribute.

Warning

If used incorrectly, the Defer if Null option can cause instances that cannot be deleted. For information about this, see Handling NULL values in reconciliation Merge activities.

Recommendations

  • Use the highest class level possible to take advantage of inheritance.
  • A Precedence set does not have to be used exclusively with one dataset. It 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 Association Sets for flexibility. You need fewer of them.

Note

Precedence values are not applicable for the CMDB internal core attributes.

For example:

AssignedTo, AttributeDataSourceList, ClassId, CMDBRowLevelSecurity, CMDBWriteSecurity, CreateDate, DatasetId, InstanceId, LastModifiedBy, ModifiedDate, NormalizationStatus, ReconciliationIdentity, ReconciliationMergeStatus, Submitter are some CMDB internal core attributes and precedence values are not applicable for these attributes. 

Before you begin

Before creating a Precedence set, check if you can use the Standard identification and precedence rules for reconciliation jobs shipped with the product.

Check that you cannot use the standard rules for merge precedence. See Standard identification and precedence rules for reconciliation jobs.

To create a Precedence Set for a reconciliation Merge activity

  1. Open the Reconciliation console.
  2. In the Reconciliation console, select a job with a merge activity.
    The Administrative Information tab lists the activities and you can confirm whether a merge activity exists in the job.
  3. Click Edit Job .
    The Job Editor opens.
  4. Select the merge activity and click Edit Activity.


    The Precedence area appears.
  5. In the Precendence Area, click View/Edit Precedence Set 

    Note

    If you want to modify the rules for a job that uses standard rules, you have to modify the rules only through the standard rule editor. But, if the job is not using the standard rules, then you can modify the rules from the same screen. 

  6. In the New/Edit Precedence Set area, enter the following required Precedence set information.

    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: \ / : * ? " < > |.

    Namespace

    Select a namespace using the controls with the Namespace field. Only classes in the selected namespaces can participate in the activity. For more information, see Dynamic dataset and qualification values in event-driven reconciliation jobs.

    Defer If Null

    Define how to handle empty, or NULL, attributes in the dataset associated with the Precedence Set. The Defer 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 the Custom job and not for the Standard job.


     
    Checked — If the value of an attribute in this dataset is NULL and this precedence value is the highest, defer to the dataset with the next highest precedence value. Do not write NULL to the production dataset.

    Unchecked — Apply the precedence value for this dataset regardless of whether an attribute value is NULL.

    Append to Lists

    Set whether list values from all source datasets are appended to list-formatted Character attributes in the production dataset. Duplicate entries are not appended to the list. A list-formatted attribute is a Character attribute that is intended to hold a list of values according to a specified format. The Append to Lists setting at the Precedence set level is overridden by the same setting in any Precedences defined for the set.

    Checked — If this Precedence set has the highest precedence value for a list-formatted Character attribute in a Merge activity, the list values from all source datasets are appended to the list in the target dataset. If some other set has the highest precedence value for the attribute, the Append to Lists option for that set determines whether values are appended.

    Unchecked — If this Precedence set has the highest precedence value for a list-formatted Character attribute in a Merge activity, the list values from the source dataset paired with this set overwrite the list in the production dataset.

    Precedence Value

    Enter or select a value for the dataset that uses this Precedence Set. The weight is 0 to 1000, inclusive, with higher numbers meaning a higher priority. The Precedence Value is overridden by the value in any Precedences defined for the set.

    Require Explicit Precedences

    Define whether to define precedences for all classes or attributes. 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.

  7. Click Add Rule.
  8. Enter the following required Precedence rule information:

    Status

    Select Active. You can later disable the activity by changing this to Inactive.

    Class

    Select the class to which this Precedence applies.

    Namespace

    Select a namespace using the controls with the Namespace field. Only classes in the selected namespaces can participate in the activity. For more information, see Dynamic dataset and qualification values in event-driven reconciliation jobs.

    Attribute

    If the Precedence is for an attribute, select it from the Attribute list.

    Precedence

    Type or select a value from 0 to 1000, inclusive. Data with higher numbers have a higher priority.

  9. Click OK to add the rule.
  10. Click Save to save the Precedence Set, and then click Close.

    You can now relate the Precedence set to a dataset by creating a Precedence Association.
Was this page helpful? Yes No Submitting... Thank you

Comments

  1. Sabine Gruber

    Hi, could it be that this description is not applicable anymore for version 9.1? the structure of the dialogue has changed and i cannot even add a custom rule to a standard job as it only opens the dialog in read-only mode. thanks for looking into this.

    Aug 11, 2017 02:46
    1. Nidhi Das

      Hi Sabine,

      I will discuss this with the concerned SME and will write back to you.

      Regards,
      Nidhi Das

      Aug 16, 2017 11:15
    1. Nidhi Das

      Hello Sabine,

      Please see the note we have added at step 2 in- To create a Precedence Set for a reconciliation Merge activity section.

      Regards,
      Nidhi

      Aug 18, 2017 03:23
    1. Carey Walker

      Hi Sabine, I've added comments below as well. I can't figure out how this page describes the 9.1 functionality correctly. I know it's only changed a little, but for new users this will make things harder than necessary.

      Nov 08, 2017 03:15
  2. Carey Walker

    Team - this section is STILL not right for 9.1 as Sabine mentions. Where is the ... button mentioned in section 1, where is the Namespace mentioned, screen shot not current etc etc. This is a complex area of Atrium CMDB, please don't make it harder to work with through outdated docs.

    Nov 08, 2017 03:08