How does SG-SCCM determine when a CI can be updated?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
06-24-2021 02:14 PM
I am evaluating using SG-SCCM for computer and software inventory. We are also running discovery for servers.
I need some help to understand how SG-SCCM determines if a computer CI needs to be updated.
For example, I run an SCCM import, a computer is updated or created and the Assigned to field is set.
I then clear the Assigned to field and the Most recent discovery field on the Computer CI, and the Last runtime field in the SG-SCCM Computer Identity data source. I then rerun the import.
I do this multiple times where sometimes the Assigned to field gets set correctly from the SCCM Computer record, and sometimes it does not.
I see the computer getting processed via the robust transform map. But its an overcomplicated abstract beast to me, and I'm unable to decode how it decides to update or not.
Can anyone shed light on how the SCCM processing works and how it determines when to update a CI?
- Labels:
-
Discovery

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
06-24-2021 10:36 PM
hi,
We faced similar issue related to Assinged to , still trying to sort that out with Hi team.
Few observations:
1. if you delete entries for CI record in sys_object_source then assigned to field will get immediately updated with value.
2. If we leave the load as is (~ 4 days) then somehow sccm updated the field value.
To answer your question ,
SCCM internally uses IRE (CI identifiers , reconciliation rules ) in order to identify the ci and update the record.
if ci field has data and source has null value then value wont be emptied until unless we explicitly make it empty.
Mark "Helpful / correct answer" if this is useful.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
06-25-2021 03:08 AM
Thanks for the reply.
Did you see the problem with other fields? I also modified RAM, disk, CPU counts as an experiment, and these are not getting updated either.
And I've seen issues with software deletions being missed. Then eventually if we run a full load it works.

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
06-30-2021 09:27 PM
Hey Paul,
Just to update , we received a bit more info from ServiceNow Hi team.
How it works ?
1. Connector first checks for information in sys_object_source i.e. ID , Source feed and last scan
2. It will only update the fields only if time key value in the connector is greater than last scan value in sys_object_source (mapped in connector as source_recency_timestamp)
3. so thats the reason , it updated data when we deleted the records in sys_object_source
4. If there are no records available in sys_object_source , then it will obviously use IRE.
Mark "Helpful / correct answer" if this is useful.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
07-01-2021 02:16 PM
Thanks - this makes sense.
I also realized this week what "SCCM Managed" means since its not documented anywhere. It means there's an entry for the computer in sys_object_source for SG-SCCM.