PDQ Inventory is great at showing you what applications are installed on a computer. But did you know it's also great at showing you what applications are NOT installed on a computer? Confused? Great! Let's discuss.
You may be trying to think of an example of when you might need to know what's not installed on a computer because, generally, it's more useful to know what applications are installed on a computer. Consider this example. Your boss comes to you and says the auditors are coming tomorrow, and I need a list of all the computers that don't have antivirus software installed. All of a sudden, knowing what computers don't have an application installed becomes extremely important.
So how can we get PDQ Inventory to show us what applications are not installed on a computer? With the help of dynamic collections!
Dynamic collections are not only great at grouping computers by what they have installed on them. They're also great at grouping computers by what they don't have installed on them.
If you have the Enterprise version of PDQ Inventory, you already have access to several collections that group by this type of information. If we open up the Collection Library and double-click on the Chrome Enterprise (Not Installed) collection, we can see how the filter works. If you don't have Enterprise, no sweat. Here's a screenshot so you can follow along.
Alright, let's unpack what's going on here.
First, we have an All filter, meaning computers will need to match all subfilters to be included in the collection.
Next, we have a Not Any filter. This filter is looking through the applications installed on your systems to ensure Not Any of them match the value in the Value column. The Value column of this filter is using the system variable $(AppNameGoogleChrome). If we click on Options > Variables in PDQ Inventory, we can see the value of that variable is "Google Chrome."
Lastly, we have an All filter that is returning only computers that have been scanned.
We can use this collection as a template to create our own dynamic collection. For this example, I'll be making a collection that filters for computers that don't have Malwarebytes installed but feel free to use any application you wish.
Click New Dynamic Collection.
Give your collection a name.
Here are the filter settings we'll be using. Replace Malwarebytes with the application of your choice.
Click OK when finished.
Your new collection should appear in the menu tree. Click on the collection and review the members to ensure the filter is working properly.
I know that THOR is the only computer in my environment that doesn't have Malwarebytes installed, so our collection is working perfectly.
There is another way that we can build this collection. This method is especially useful if you already have a collection built containing computers that DO have the application installed. Essentially, we can create a collection for computers that are NOT a member of this already existing collection. Let's look at an example.
Here I have a collection that filters for computers that HAVE Malwarebytes installed.
Now let's create our opposing collection. Click New Dynamic Collection.
Give the collection a name.
Set up the following filters and change the value to match the collection you want to filter against.
That's all there is to it. Again, this method is quick and easy if you already have a collection built that filters for computers with the specified application installed.
Collections that filter for computers that are missing applications are incredibly useful, especially when auditors come snooping around your network. Remember, to get the most out of your collections, make sure you regularly scan your systems. Collections are only as accurate as your most recent scan.
Born in the '80s and raised by his NES, Brock quickly fell in love with everything tech. With over 15 years of IT experience, Brock now enjoys the life of luxury as a renowned tech blogger and receiver of many Dundie Awards. In his free time, Brock enjoys adventuring with his wife, kids, and dogs, while dreaming of retirement.