TLDR: Add Custom WMI Class MS_SystemInformation, and grab it from there.
Related Content: Adding to Your Hardware Inventory – Recast Software (Adding Product into Inventory which is used by HP)
Why? I use SystemSKUNumber for Driver Pack matching on Dell Systems similar to how I use Product for HP devices. Having this information in your CM Inventory makes it easier when you’re doing your mapping in the Task Sequence. Getting all of this information in one class makes it pretty handy.
Product is in Win32_BaseBoard, BIOSVersion in Win32_BIOS, and SystemSKUNumber is in Win32_ComputerSystem. ConfigMgr inventories Win32_ComputerSystem by default, however, if you noticed, SystemSKUNumber is NOT an option to check the box for. I’ve seen people hack CM’s MOF to add it, which I would never recommend modifying native MOF files:
SCCM Query BIOS SystemSKU – Inventory and Deployment (microsoft.com)
Since all 3 items in in the one WMI Class, it made it a simple place to grab it all from.
Quick Test to make sure it has the info I wanted, and confirm information is the same in both spots.
#SystemSKU (Dell / Surface)
(Get-CimInstance -ClassName Win32_ComputerSystem).SystemSKUNumber
(Get-CimInstance -Namespace root\wmi -ClassName MS_SystemInformation).SystemSKU
#Product (HP)
(Get-CimInstance -Namespace root/cimv2 -ClassName Win32_BaseBoard).Product
(Get-CimInstance -Namespace root\wmi -ClassName MS_SystemInformation).BaseBoardProduct
#BIOSVersion (Lenovo uses first 4)
(Get-CimInstance -ClassName Win32_BIOS).SMBIOSBIOSVersion
(Get-CimInstance -Namespace root\wmi -ClassName MS_SystemInformation).BIOSVersion
You can see, this one class has all three items needed to support model mapping for the big OEM vendors
Adding Class to Hardware Inventory
In your Default Settings, Hardware Inventory area, connect to Root\WMI and Recursive
Search on MS_System
When it comes up, check the box
Then select the information you want, I’m adding a few more which covers the 4 vendors of Devices I test with.
SQL
Dell /Surface use SKU | HP Use Product | Lenovo use First 4 of BIOSVersion
SELECT
si.SystemProductName0 AS Model,
COUNT(*) AS Count
,si.BaseBoardProduct0
,si.SystemSKU0
,si.BIOSVersion0
FROM
v_GS_MS_SYSTEMINFORMATION SI
where si.SystemProductName0 not like 'Virt%'
and si.SystemProductName0 not like 'HVM%'
GROUP BY si.SystemProductName0,si.BaseBoardProduct0, si.SystemSKU0,si.BIOSVersion0
order by Count(*) DESC;
GARYTOWN.COM
can someone tell me how to embed a SystemSKU in an existing SCCM-report ?
f.E: in the “Hardware 09A – Search for computers” report?
You’d want to make a duplicate of that report.
Then you need to go into the report dataset and update the query to pull the additional information you need.
once you have that information, you’d have to modify the report to add that information in the results.
I’d recommend looking here: https://www.systemcenterdudes.com/sccm-report-creation-report-builder/
and: https://www.recastsoftware.com/resources/how-to-start-editing-sccm-reports-with-report-builder/