Obtain a list of computers from SCCM on which a specific software is installed

applicationquerysccm

I have tried the below procedure to obtain a list of desktops that have software X, version 2.2 installed on them:

Device Collections => Create Device Collection => named it "Computers with X v2.2 installed=> Query Rule Properties => Edit Query Statement => Criteria tab =>

Criterion Type: Simple value
Where: Installed Software - ARPDisplay Name
Operator: is equal to
Value: X    

While this is returning the software and a specific version, most of the content in the SoftwareVersion output field is blank. I was wondering if I'm doing something wrong or if this actually gets added by the developer on the application details and there's nothing I can do it if the dev didn't add the software version?

Best Answer

Do the clients report the software version field as part of their hardware inventory? If not, this field will always be blank.

You can check this in your client settings. Edit the properties of the client settings that are deployed to your clients and go to:

Hardware inventory -> Hardware inventory classes -> Set classes button. Then search for "Installed Software" in the search field. If you expand the "Installed Software" node, you can enable the fields that the clients should report to ConfigMgr.

Hardware inventory classes

When you enable new fields here, you must wait until the clients run their next hardware inventory cycle, before the fields will be populated.