Discovery and SCCM together

Use these guidelines to avoid common issues when you use Discovery and System Center Configuration Manager (SCCM) together.

You must decided if you will use Asset Intelligence (AI) or non-AI software data sources. Because the software correlation data is tracked differently for each of these data sources, you should avoid switching back and forth between the two. If you must switch between data sources, remove all the software installation records imported by SCCM before the switch occurs. For general information about the SCCM integration, see Microsoft SCCM integration

When Software Asset Management is not enabled, software installation records are stored in the Software Instance [cmdb_software_instance] table. When Software Asset Management is enabled, software installation records are stored in the Software Installation [cmdb_sam_sw_install] table.

Note: If records are not removed before the switch, duplicate records may exist. In the event that AI and non-AI data becomes mixed, clear the Software Installation table.

Upgrading to another version

The ServiceNow SCCM integrations are self-contained and can exist independently. They each use their own import set tables, data sources and transform maps. However, all SCCM integrations will transform data into the same tables within the ServiceNow CMDB. To avoid the data being overwritten by another source:
  • Use one SCCM integration and disable all other SCCM scheduled imports.
  • Perform a full import to clear the cmdb_software_instance table, the cmdb_sam_sw_install table, and other tables of old SCCM data.
Note: It is possible to configure each plugin to integrate with SCCM 2007 or 2012 because the mechanism of the integration is actually the same, which is to leverage Java Database Connectivity (JDBC) imports. However, the data sources will need to be modified if a plugin is to be used for an SCCM version they’re not written for. Starting with Fuji, it is recommended to use the plugin version that corresponds to the SCCM version it is designed to integrate with.
To change the SCCM integration:
  • Disable the current integration by deactivating the SCCM import schedule.
  • Activate the new SCCM plugin.
  • Reimport all the software records when you are switching to an integration that supports incremental imports of removed software.

For instructions on disabling the current SCCM import schedule, see Upgrade the SCCM integration versionUpgrade the SCCM integration version

Activate SCCM Asset Intelligence scheduled imports

To prevent duplicate software imports, activate either the Asset Intelligence (AI) or the non-AI scheduled import.

Before you begin

Role required: admin

About this task

For the best results, limit the software import frequency to be no greater than the frequency of the table cleanup that tracks deleted software in SCCM.

Asset Intelligence is supported in these SCCM plugins:

  • Integration - Microsoft SCCM 2007
  • Integration - Microsoft SCCM 2012 v2
Important: To improve the performance of your initial SCCM import, you can prevent the system from checking against deleted software prior to the import date. Navigate to Integration - Microsoft SCCM <version> > Data Sources > SCCM <version> Removed Software and enter the current date in the Last run datetime field. This field is populated automatically for each subsequent run of the removed software data source.

To activate the AI scheduled imports:


  1. Navigate to the System Import Sets > Administration > Scheduled Imports.
  2. Set Active to false for these data import schedules:
    • SCCM <version> Software
    • SCCM <version> Removed Software
  3. Set Active to true for these data import schedules:
    • SCCM <version> Software (with AI)
    • SCCM <version> Removed Software (with AI)
    Figure 1. Configure SCCM with Asset Intelligence

Collect software data with either SCCM or Discovery

When Discovery and SCCM are both enabled on a system, the software records found through both tools could overwrite each other.

Before you begin

Role required: admin

About this task

To determine how software data is collected:


  1. Navigate to Discovery Definition > Properties.
  2. Set the Windows software is SCCM managed property (glide.discovery.software_sccm_managed) appropriately.
    If this property is set to Yes, software for computer CIs is populated in the CMDB by SCCM. An internal process determines that the computer is managed by SCCM, and Discovery does not populate the software records for Windows software data. The following information level message is written to the Discovery log file.

    Skipping software population because the CI is managed by SCCM

    If the check box is cleared, the property is set to No, and the system manages software data with Windows.

  3. Click Save.
    Important: If SCCM Integration is active before Discovery is enabled and the property is enabled, Discovery ignores the population of software for any CIs that are also imported through SCCM. If Discovery is enabled before the SCCM Integration, it is possible for software installation data from both sources to be mixed.