Overview
The SCCM Inventory Data Provider provides a way to import computer inventory data from SCCM into Matrix42 Asset Management. This article explains in detail which information is imported, what matching criteria is used for insert or update decision and how those attributes are mapped with the Asset Management data model.
Sections below explain details about the import by data category.
Domains
API function |
GetComputers |
Configuration Item |
Domain |
Matching
DomainName = SPSADDomainClassBase.DomainName
OR
NT4Name = RelatedSPSADDomainClassBase.NT4Name
Attributes
SCCM Table/View |
SCCM Attribute |
Key |
Data Definition |
Data Attribute |
v_GS_COMPUTER_SYSTEM |
Domain0 |
√ |
SPSADDomainClassBase |
DomainName |
v_GS_COMPUTER_SYSTEM |
Domain0 |
√ |
SPSADDomainClassBase |
NT4Name |
Computers
API function |
GetComputers |
Configuration Item |
Computer |
Matching
Decision of inserting a new or updating an existing computer record is made in a multi-step approach:
- Does a computer with the same SMSGuid exist:
Yes => Update existing record.
No => continue with Step 2.
- Does a computer with the same Domain and Name exist? The answer is yes if one of these sets of conditions is met:
A name from SCCM matches the name in ESM. |
DeviceID in ESM is empty. |
A domain from SCCM is empty or the domain in ESM is empty. |
OR
A name from SCCM matches the name in ESM. |
DeviceID in ESM is empty. |
A domain from SCCM matches the domain in ESM. |
Yes => Update existing record.
No => Create new computer record.
- To update an existing record, the system matches computers by the DeviceID value.
Attributes
SCCM Table\View |
SCCM Attribute |
Key |
Data Definition |
Data Attribute |
v_R_System_Valid |
ResourceID |
√ |
SPSComputerClassBase |
DeviceId |
v_R_System_Valid |
Netbios_Name0 |
√ |
SPSComputerClassBase |
Name |
v_R_System |
SMBIOS_GUID0 |
|
SPSComputerClassBase |
BiosGuid |
v_R_System |
SMS_Unique_Identifier0 |
|
SPSInventoryClassBase |
SMSGuid |
v_R_System_Valid |
Creation_Date0 |
|
SPSInventoryClassBase |
FirstScanDate |
v_RA_System_SMSAssignedSites |
SMS_Assigned_Sites0 |
√ |
SPSInventoryClassBase |
SMSSiteCode |
v_GS_COMPUTER_SYSTEM |
Domain0 |
|
SPSComputerClassBase |
WindowsDomainName |
v_GS_WORKSTATION_STATUS |
LastHWScan |
|
SPSInventoryClassBase |
LastScanDate |
[Literal value] |
6 |
|
SPSAssetClassBase |
ManagementType |
[Literal value] |
'SCCM Inventory' |
|
SPSAssetClassBase |
ObjectCreator |
[Literal value] |
'SCCM Inventory' |
|
SPSComputerClassBase |
Managedby |
[Provider Configuration] |
<status value> |
|
SPSCommonClassBase |
State |
BIOS
API function |
GetBios |
Configuration Item |
Computer |
Matching
DeviceID=SPSComputerClassBase.DeviceID
Attributes
SCCM Table\View |
SCCM Attribute |
Key |
Data Definition |
Data Attribute |
v_R_System_Valid |
ResourceID |
√ |
SPSComputerClassBase |
DeviceId |
v_GS_PC_BIOS |
Manufacturer0 |
|
SPSComputerClassBase |
BiosManufacturer |
v_GS_PC_BIOS |
ReleaseDate0 |
|
SPSComputerClassBase |
BiosReleaseDate |
v_GS_PC_BIOS |
SerialNumber0 |
|
SPSComputerClassBase |
SystemSerialNumber |
v_GS_PC_BIOS |
SerialNumber0 |
|
SPSAssetClassBase |
SerialNumber |
v_GS_PC_BIOS |
Version0 |
|
SPSComputerClassBase |
BiosVersion |
v_RA_System_SMSAssignedSites |
SMS_Assigned_Sites0 |
√ |
SPSInventoryClassBase |
SMSSiteCode |
Processors
API function |
GetProcessor |
Configuration Item |
Computer |
Matching
DeviceID=SPSComputerClassBase.DeviceID
Attributes
SCCM Table\View |
SCCM Attribute |
Key |
Data Definition |
Data Attribute |
v_R_System_Valid |
ResourceID |
√ |
SPSComputerClassBase |
DeviceId |
v_GS_PROCESSOR |
DeviceID0 |
√ |
SPSComputerClassProcessor |
DeviceId |
v_GS_PROCESSOR |
Manufacturer0 |
|
SPSComputerClassProcessor |
Manufacturer |
v_GS_PROCESSOR |
MaxClockSpeed0 |
|
SPSComputerClassProcessor |
MaxSpeed |
v_GS_PROCESSOR |
NormSpeed0 |
|
SPSComputerClassProcessor |
NormSpeed |
v_GS_PROCESSOR |
Name0 |
|
SPSComputerClassProcessor |
Name |
v_RA_System_SMSAssignedSites |
SMS_Assigned_Sites0 |
√ |
SPSInventoryClassBase |
SMSSiteCode |
Hardware
API function |
GetHardware |
Configuration Item |
Computer |
Matching
DeviceID=SPSComputerClassBase.DeviceID
Attributes
SCCM Table\View |
SCCM Attribute |
Key |
Data Definition |
Data Attribute |
v_R_System_Valid |
ResourceID |
√ |
SPSComputerClassBase |
DeviceId |
v_GS_COMPUTER_SYSTEM |
Model0 |
|
SPSAssetClassBase |
Model |
v_GS_COMPUTER_SYSTEM |
Manufacturer0 |
|
SPSAssetClassBase |
ManufacturerName |
[API Call] |
GetPhysicalMemory( Hostname) |
|
SPSComputerClassBase |
Memory |
v_RA_System_SMSAssignedSites |
SMS_Assigned_Sites0 |
√ |
SPSInventoryClassBase |
SMSSiteCode |
Disks
API function |
GetDrives |
Configuration Item |
Computer |
Matching
DeviceID=SPSComputerClassBase.DeviceID
Attributes
SCCM Table\View |
SCCM Attribute |
Key |
Data Definition |
Data Attribute |
v_R_System_Valid |
ResourceID |
√ |
SPSComputerClassBase |
DeviceId |
v_GS_LOGICAL_DISK |
DeviceID0 |
√ |
SPSComputerClassDiskPartition |
DriveLetter |
v_GS_LOGICAL_DISK |
FileSystem0 |
|
SPSComputerClassDiskPartition |
PartitionType |
v_GS_LOGICAL_DISK |
FreeSpace0 |
|
SPSComputerClassDiskPartition |
PartitionFreeSpace |
v_GS_LOGICAL_DISK |
Size0 |
|
SPSComputerClassDiskPartition |
PartitionSize |
v_GS_LOGICAL_DISK |
VolumeSerialNumber0 |
|
SPSComputerClassDiskPartition |
SerialNumber |
v_RA_System_SMSAssignedSites |
SMS_Assigned_Sites0 |
√ |
SPSInventoryClassBase |
SMSSiteCode |
Video cards
API function |
GetGraphicCard |
Configuration Item |
Computer |
Matching
DeviceID=SPSComputerClassBase.DeviceID
Attributes
SCCM Table\View |
SCCM Attribute |
Key |
Data Definition |
Data Attribute |
v_R_System_Valid |
ResourceID |
√ |
SPSComputerClassBase |
DeviceId |
v_GS_VIDEO_CONTROLLER |
Name0 |
√ |
SPSComputerClassGraphicCard |
Model |
v_GS_VIDEO_CONTROLLER |
RevisionID |
|
SPSComputerClassGraphicCard |
BiosVersion |
v_RA_System_SMSAssignedSites |
SMS_Assigned_Sites0 |
√ |
SPSInventoryClassBase |
SMSSiteCode |
Network Cards
API function |
GetNetworkCard |
Configuration Item |
Computer |
Matching
DeviceID=SPSComputerClassBase.DeviceID
Attributes
SCCM Table\View |
SCCM Attribute |
Key |
Data Definition |
Data Attribute |
v_R_System_Valid |
ResourceID |
√ |
SPSComputerClassBase |
DeviceId |
v_GS_NETWORK_ADAPTER |
Name0 |
√ |
SPSComputerClassNetworkCard |
Model |
v_GS_NETWORK_ADAPTER |
Manufacturer0 |
|
SPSComputerClassNetworkCard |
Manufacturer |
v_GS_NETWORK_ADAPTER_CONFIGUR |
IPAddress0 |
|
SPSComputerClassNetworkCard |
IPAddress |
v_GS_NETWORK_ADAPTER_CONFIGUR |
DefaultIPGateway0 |
|
SPSComputerClassNetworkCard |
DefaultGateway |
v_GS_NETWORK_ADAPTER_CONFIGUR |
MACAddress0 |
√ |
SPSComputerClassNetworkCard |
MACAddress |
v_GS_NETWORK_ADAPTER_CONFIGUR |
IPSubnet0 |
|
SPSComputerClassNetworkCard |
SubnetMask |
v_GS_NETWORK_ADAPTER_CONFIGUR |
DHCPEnabled0 |
|
SPSComputerClassNetworkCard |
DHCPEnabled |
v_RA_System_SMSAssignedSites |
SMS_Assigned_Sites0 |
√ |
SPSInventoryClassBase |
SMSSiteCode |
Sound Cards
API function |
GetSoundCard |
Configuration Item |
Computer |
Matching
DeviceID=SPSComputerClassBase.DeviceID
Attributes
SCCM Table\View |
SCCM Attribute |
Key |
Data Definition |
Data Attribute |
v_R_System_Valid |
ResourceID |
√ |
SPSComputerClassBase |
DeviceId |
v_GS_SOUND_DEVICE |
Name0 |
√ |
SPSComputerClassSoundCard |
Model |
v_GS_SOUND_DEVICE |
Manufacturer0 |
|
SPSComputerClassSoundCard |
Manufacturer |
v_RA_System_SMSAssignedSites |
SMS_Assigned_Sites0 |
√ |
SPSInventoryClassBase |
SMSSiteCode |
Operating Systems
API function |
GetOperatingSystem |
Configuration Item |
Computer |
Matching
DeviceID=SPSComputerClassBase.DeviceID
Attributes
SCCM Table\View |
SCCM Attribute |
Key |
Data Definition |
Data Attribute |
v_GS_OPERATING_SYSTEM |
ResourceID |
√ |
SPSComputerClassBase |
DeviceId |
v_GS_OPERATING_SYSTEM |
Caption0 |
|
SPSComputerClassOS |
Name |
v_GS_OPERATING_SYSTEM |
CSDVersion0 |
|
SPSComputerClassOS |
PatchLevel |
v_GS_OPERATING_SYSTEM |
Manufacturer0 |
|
SPSComputerClassOS |
Model |
v_RA_System_SMSAssignedSites |
SMS_Assigned_Sites0 |
√ |
SPSInventoryClassBase |
SMSSiteCode |
Fingerprints
API function |
GetAddRemovePrograms |
Configuration Item |
Fingerprint |
Matching
Name=SPSApplicationClassBase.Name
AND
Manufacturer=SPSApplicationClassBase.Manufacturer
AND
Version-SPSApplicationClassBase.Version
AND
SPSApplicationClassBase.GlobalApp IS NULL
Attributes
SCCM Table\View |
SCCM Attribute |
Key |
Data Definition |
Data Attribute |
v_Add_Remove_Programs |
DisplayName0 |
√ |
SPSApplicationClassBase |
Name |
v_Add_Remove_Programs |
Publisher0 |
√ |
SPSApplicationClassBase |
Manufacturer |
v_Add_Remove_Programs |
Version0 |
√ |
SPSApplicationClassBase |
Version |
[Literal Value] |
'SCCM Inventory' |
|
SPSApplicationClassBase |
CreatedBy |
[Literal Value] |
31 |
|
SPSApplicationClassBase |
DetectionType |
Installed Applications
API function |
GetAddRemovePrograms |
Configuration Item |
Computer |
Matching
DeviceID=SPSComputerClassBase.DeviceID
Attributes
SCCM Table\View |
SCCM Attribute |
Key |
Data Definition |
Data Attribute |
v_R_System_Valid |
ResourceID |
√ |
SPSComputerClassBase |
DeviceId |
v_Add_Remove_Programs |
DisplayName0 |
√ |
SPSInventoryClassApplication |
ReportedApplication |
v_Add_Remove_Programs |
Publisher0 |
√ |
SPSInventoryClassApplication |
ReportedApplication |
v_Add_Remove_Programs |
Version0 |
√ |
SPSInventoryClassApplication |
ReportedApplication |
v_RA_System_SMSAssignedSites |
SMS_Assigned_Sites0 |
√ |
SPSInventoryClassBase |
SMSSiteCode |
[Literal Value] |
1 |
|
SPSInventoryClassApplication |
Installed |
[Dynamic Value] |
<current date/time> |
|
SPSInventoryClassApplication |
LastSyncDate |
Application Usage
API function |
GetAUT |
Configuration Item |
Computer |
Matching
DeviceID=SPSComputerClassBase.DeviceID
Attributes
SCCM Table\View |
SCCM Attribute |
Key |
Data Definition |
Data Attribute |
System_DATA |
MachineID |
√ |
SPSComputerClassBase |
DeviceId |
Users |
UserName |
√ |
SPSComputerClassApplicationUsage |
UserName |
SoftwareFile |
FileName |
√ |
SPSComputerClassApplicationUsage |
ApplicationName |
SoftwareFile |
FileVersion |
√ |
SPSComputerClassApplicationUsage |
ApplicationVersion |
MeterData |
MAX(EndTime) |
|
SPSComputerClassApplicationUsage |
LastUsageDate |
[Literal Value] |
'SCCM Data Provider' |
|
SPSComputerClassApplicationUsage |
CreatedBy |
User Logins
Supported only if SCCM has version 2012 R2 or higher.
API function |
GetLogins |
Configuration Item |
Computer |
Matching
DeviceID=SPSComputerClassBase.DeviceID
Attributes
SCCM Table\View |
SCCM Attribute |
Key |
Data Definition |
Data Attribute |
v_UserMachineIntelligence |
MachineResourceID |
√ |
SPSComputerClassBase |
DeviceId |
v_UserMachineIntelligence |
UniqueUserName |
√ |
SPSComputerClassLogon |
LogonAccountName |
v_UserMachineIntelligence |
UniqueUserName |
|
SPSComputerClassLogon |
LoggedAccount |
v_UserMachineIntelligence |
LastLoginTime |
√ |
SPSComputerClassLogon |
LogonDate |
v_RA_System_SMSAssignedSites |
SMS_Assigned_Sites0 |
√ |
SPSInventoryClassBase |
SMSSiteCode |