Integration with HP uCMDB

Hi everybody,

I have a question for the experts regarding the integration with uCMDB. The DEM reconciliation rules, exactly how do they work?

I have successfully integrated with uCMDB, it updates the items we need (servers, databases, and so on) using the, but the mechanism is a bit opaque. I tried to create a DEM rule so if it can't find a record by it the tries to update based on but this doesn't work at all; if for some reason uCMDB detects an old item as if it was new and assigns it a new it will no longer update the old item in SM and will try to create a new one with the same, which of course fails.


  • Verified Answer


    Here is some information from the SM 9.41 Codeless Help Server that should help answer your query:

    Create a DEM reconciliation rule

    Create a DEM reconciliation rule

    Applies to User Roles:

    System Administrator

    It is possible that your Service Manager system already contains CI records that match CIs in your UCMDB system. Rather than add duplicate CI records to your Service Manager system, you can configure Service Manager to reconcile CI records between the two systems based on specified Discovery Event Manager (DEM) reconciliation rules.

    A DEM reconciliation rule record allows you to specify what Service Manager queries you want to use to determine whether an existing CI record matches a CI in an UCMDB system. An administrator typically specifies reconciliation rules prior to starting the integration to the HP Universal CMDB system so that Service Manager will not create duplicate CI records.

    When performing CI reconciliation between Service Manager and UCMDB, Service Manager uses the field to query the device table or a join table to determine whether an Update or Create operation is needed. The reconciliation process is as follows:

    1. The UCMDB system sends a web service message containing the latest CI attribute data to Service Manager.
    2. Service Manager scans the web service message for the CI value.

      Note: The field is displayed in the Actual State Section of the CI form, with a label of Ucmdb ID.

    3. Service Manager searches for an existing CI record that has the same value.
    4. If Service Manager finds a CI that has the value, no reconciliation is needed. Service Manager compares the UCMDB CI attributes to the Service Manager managed fields and runs the appropriate Discovery Event Manager (DEM) rules as needed to update the CI record in Service Manager.
    5. If Service Manager cannot find a CI that has the value, it searches for a DEM reconciliation rule record that is defined for the CI type.
    6. If no DEM reconciliation rule record is found, Service Manager creates the CI record according to the appropriate DEM rules.
    7. If a DEM reconciliation rule record is found, Service Manager evaluates the rules and appends ( or and istatus=”XXXXXX”) to the reconciliation rules in the backend, where the istatus value is retrieved from the DEM rule for deletion (for example, Retired/Consumed). If no istatus value is found in the DEM rule, Service Manager only appends to the reconciliation rules in the backend.

    8. If no matching CI record is found by the reconciliation rules, Service Manager creates the CI record according to the appropriate DEM rules.
    9. If a matching CI record is found by the reconciliation rules, Service Manager updates the CI record according to the appropriate DEM rules

    Using join tables for reconciliation

    When setting reconciliation rules, if the CI type you are reconciling has a joindef definition (as defined in the devtype table), use the join table name instead of the device table. For example, if you want to reconcile computer CIs, use the joinnode table instead of the device table.

    Sequence of reconciliation

    By default, Service Manager executes the reconciliation rules in their listed order. To change the order in which Service Manager reconciles CIs, you can add a numeric value to the Sequence field.

    Multi-company mode

    By default, Service Manager uses only the field for CI reconciliation, and the field is not used. You can manually add DEM reconciliation rules.

    Steps to create a DEM reconciliation record

    To create a DEM reconciliation rule record, follow these steps:

    1. Click Tailoring > Web Services > DEM Reconciliation Rules.

      Service Manager displays the DEM Reconcile Record form.

    2. In the Table field, select a Service Manager table against which you want to run reconciliation queries.

      Note: Only tables that are specified in CI type records are displayed in the drop-down list. You can create only one DEM reconciliation record for one table.

    3. Click New.
    4. Enter expressions in the Expression column, and enter a sequence number for each expression in the Sequence column.  For example, you can add the following expressions for the device table. In this example, Service Manager looks for a matching record first based on the field, and then based on the field.

      Expression Sequence in $L.file

      1 in $L.file2
    5. Click Add.

      Service Manager creates the reconciliation rule record.


  • Thanks, I already had the documentation but the one you quote is more recent and does a better job at explaining the process. I'll mark it as a solution as it seems to cover the areas where the old document was a bit "fuzzy" and I think this will actually work.