Hi!
There are a couple of ways to accomplish this. A specific one and a more robust solution. If you are just looking for machines that do not have SEP installed you can do it in SQL.
Logically what the query does is
- Find all The computers
- Find all the Computers that DO have SEP
- Return the computers that are not in the group of computers that has SEP.
If that makes sense
SELECT
[vri3_Computer].[Guid],
[dca4_AddRemoveProgram].[DisplayName],
[dca4_AddRemoveProgram].[DisplayVersion],
[dca5_AeX AC Identification].[OS Primary Language],
[vri3_Computer].[Name]
FROM
[vRM_Computer_Item] AS [vri3_Computer]
LEFT OUTER JOIN [Inv_AddRemoveProgram] AS [dca4_AddRemoveProgram]
ON ([vri3_Computer].[Guid] = [dca4_AddRemoveProgram].[_ResourceGuid])
LEFT OUTER JOIN [Inv_AeX_AC_Identification] AS [dca5_AeX AC Identification]
ON ([vri3_Computer].[Guid] = [dca5_AeX AC Identification].[_ResourceGuid])
WHERE
[vri3_Computer].[IsManaged] = 1
AND
[dca5_AeX AC Identification].[OS Name] LIKE '%Windows%'
AND
[dca5_AeX AC Identification].[OS Name] NOT LIKE '%Server%'
AND
[dca4_AddRemoveProgram].[DisplayName] IS NOT NULL
AND
[vri3_Computer].[Guid] NOT IN
(
SELECT
[vri3_Computer].[Guid] FROM
[vRM_Computer_Item] AS [vri3_Computer]
LEFT OUTER JOIN [Inv_AddRemoveProgram] AS [dca4_AddRemoveProgram]
ON ([vri3_Computer].[Guid] = [dca4_AddRemoveProgram].[_ResourceGuid])
LEFT OUTER JOIN [Inv_AeX_AC_Identification] AS [dca5_AeX AC Identification]
ON ([vri3_Computer].[Guid] = [dca5_AeX AC Identification].[_ResourceGuid])
WHERE
([dca4_AddRemoveProgram].[DisplayName] LIKE '%Symantec Endpoint Protection%')
)