Smart Label to find computers with software that is NOT installed.
NOTE: I am using K1000 v6.
I would like to create a Smart Label that will apply to computers that do NOT have a particular piece of software installed. I have tried using the wizard, selecting "Software Titles" "does not contain" "software title", but that lists every computer in inventory. I have tried "!=" with the same result. The SQL query generated is:
SELECT MACHINE.NAME AS SYSTEM_NAME, SYSTEM_DESCRIPTION, MACHINE.IP, MACHINE.MAC, MACHINE.ID as TOPIC_ID FROM MACHINE WHERE (((not exists (select 1 from SOFTWARE, MACHINE_SOFTWARE_JT where MACHINE_SOFTWARE_JT.MACHINE_ID = MACHINE.ID AND SOFTWARE.ID = MACHINE_SOFTWARE_JT.SOFTWARE_ID and SOFTWARE.DISPLAY_NAME like '%software title%')) ))
I am a SQL n00b, so I can only assume that it is comparing the software title to every title on each computer, thus creating a TRUE result every time. How can I fix this?
Make sure you're typing in the right software title. *hangs head in shame*
Community Chosen Answer
I did this to create a smart label for my managed installs. the first thing I did was install the software on a machine and then look in the inventory to see what KACE called the software. Note these are machine labels I'm using, and I tend to go pretty generic as far as software title. The following image is one of my machine smart labels that I have associated with a managed install for flash player. The first filter is for operating system, the second is under software, and the third is under device identity information. The important thing is making sure you know what KACE calls the software, that's why I use a generic term of "Flash player" for this. That way when I move to a new version it still has at least "flash player" in the name somewhere.
I do the same with basic programs like Java or Adobe Reader. Also, the third filter in this example is just another label I made for initial software installs, and is not by any means needed.