A Report Question

This issue has been solved. See solution.
mickwearn's picture

Hi There,



I've tried and tried but I just can't seam to get this report right, what I'm trying to do is create a report which shows all computers with software X installed.



I'd like to be able to target this report at collections as well, but its not necessary so long as I can specify to be all windows XP computers



I can create a collection which returns the results I want, but not a report, the report is always over reporting as in showing me information which is not correct.. it picks up the application exe even if it is not installed and just located in c:\temp.



Or there will be one computer with multiple entries, but when I look at the resource data for the table AeX_OS_Add_Remove_Programs I can only see one entry, also too.. the collection which is built using the AeX_OS_Add_Remove_Programs table is also correct only showing one entry.



I think the report should use the following tables, but open to suggestions.



Inv_AeX_AC_Identification (to get the computer name)

Inv_Global_User_General_Details (to get the complete user name information from AD import)

AeX_OS_Add_Remove_Programs (to get the information about if the application is installed)



The report would look like this:



Computer Name, User Name, Installed location of Application



Computer 1, John Smith, C:\Program Files\Microsoft Office\Visio10\visio.exe



I'd be very grateful for any assistance on this, I'm surprised there isn't a built in report to give me this information.



Thanks Heaps.



Mick.





jharings's picture

Can you try listing some of the code you have tried?

Jim Harings
Technical Solutions Consultant
Xcend Group
http://xcendgroup.com

mickwearn's picture

Hi and thanks for your response,



I'm using the advanced report builder, and have selected the following tables.



Inv_AeX_AC_Identification

Inv_Global_User_General_Details

AeX_OS_Add_Remove_Programs



Then I get a bit lost on the join selection screen, so I don't make any joins (i probably need too)



I want to use:

Name form the table Inv_AeX_AC_Identification to show the workstation name

Display Name from the table Inv_Global_User_General_Details to show the full user name from AD import

and then Name and install location form AeX_OS_Add_Remove_Programs with search criteria on an application such as Symantec AntiVirus



So far this is what I have in my SQL statement



SELECT [Inv_AeX_AC_Identification].[Name] AS 'WorkStation', [Inv_Global_User_General_Details].[Display Name] AS 'User', [Inv_AeX_OS_Add_Remove_Programs].[Name] AS 'App Name', [Inv_AeX_OS_Add_Remove_Programs].[Install Path] AS 'Install Path' FROM [Inv_AeX_AC_Identification], [Inv_AeX_OS_Add_Remove_Programs], [Inv_Global_User_General_Details] WHERE [Inv_AeX_OS_Add_Remove_Programs].[Name] = 'Symantec AntiVirus'



It will return 50000 lines..



Cheers,



TGiles's picture

See how this works for you. I've added the GUID into the query, so that the report can also be used to create a collection if you want.



SELECT vc.Name AS 'WorkStation', vc.[User] AS 'User', ar.Name AS 'App Name', ar.[Install Path] AS 'Install Path', vc.Guid

FROM vComputer vc

JOIN Inv_AeX_OS_Add_Remove_Programs ar ON ar._ResourceGuid = vc.Guid

WHERE ar.Name = 'Symantec AntiVirus'

mickwearn's picture

G'Day Taylor,



thanks for your post.. this is almost what I'm after.. the SQL Statement worked a treat, however because our NT environment is setup so that the user accounts are numbers and letters like AEX1FU this information in the report is hard to interrupt as to which users have the software.



So the idea was that by using the object 'Inv_Global_User_General_Details' which I think is data collected from an AD user import and selecting the table 'Display Name' we were hoping to display the full user name in the report.



which would make it very easy to interpret, rather then having to cross referencing the user name with active directory..



also to in our environment we don't use MS Exchange, as someone else suggested using the Exchange inventory information to complete the report.



Thanks Heaps for your efforts, its really appreciated.



Mick.

TGiles's picture

Solution

Okay.



Give this one a shot. Might be a little slow since its using 2 views though.



SELECT vc.Name AS 'WorkStation', vu.[Display Name] AS 'User', ar.Name AS 'App Name', ar.[Install Path] AS 'Install Path', vc.Guid

FROM vComputer vc

JOIN Inv_AeX_OS_Add_Remove_Programs ar ON ar._ResourceGuid = vc.Guid

JOIN vUser vu ON vu.Name = vc.[User]

WHERE ar.Name = 'Symantec AntiVirus'



HTH

mickwearn's picture

Perfect this is exactly what we were trying to archive.. its a really nice report, and it ran quite quickly.



by showing the full user name it makes the report acceptable to give to management, and its easy to read.



A+



Thanks Heaps...



Mick.



PS.. sorry i got your name wrong in previous post..