Application List

sgoetz
Contributor

JAMF People!,

Is there a way to make a report to list all Applications installed and how many of them. I don't care about version number just need to know what Applications are installed and how many.

Something like this:

Microsoft Office 2011 777
Microsoft Office 2008 300
Itunes 900
TextWrangler 100

8 REPLIES 8

Look
Valued Contributor III

Just make an entry for any software you want to track in the Licensed Software section of the JSS, it will show a count.

sgoetz
Contributor

there's thousands of software in our environment. Was hoping for a little more easier way.

nessts
Valued Contributor II

Use mysql to dump what you want to a file and use perl or some other scripting language to put it in the format you want, that might be more betterer. Of course you would probably have to learn sql to get what you need and some other language to parse the result.

mm2270
Legendary Contributor III

I can't test right now, but can't you go into the Application Search area and just type in ".app" to pull a list of all applications across all devices? If it works, it may take a long time to produce results. The application table is often the largest of them all in the database, so be patient if it doesn't pop up right away.

sgoetz
Contributor

Yes that does give me the list, but it breaks it down by version. So I will have say:

1password.app version 1 10 people
1password.app version 2 20 people
1password.app version 3 5 people

I'd rather have 1password.app total people.

We also have the JAMF SCCM plugin so trying to figure it out using that as well. I can sorta get a list if you go to create a report and pick "Application Title" and than hit the "...." bubble. But that doesn't give me a count. Even that is roughly 3000 apps. EEKS! :P

Thanks for the suggestions so far.

powellbc
Contributor II

I am bumping a bunch of old posts with my method:

Assuming you are comfortable with direct queries of the database, here is a basic one that can report on installed applications. If you use MySQL Workbench, the results can easily be exported as CSV. You can use Excel and a pivot table to get all the info you want displayed as you want it.

In this example, I am querying for the application SPSS, you can change that or leave out the WHERE clause to return all installed applications in your environment.

SELECT DISTINCT a.computer_name AS 'Computer Name', c.application_name AS 'Application Name', c.application_version AS 'Version'
From computers_denormalized a INNER JOIN reports b ON a.computer_id = b.computer_id
INNER JOIN applications c ON b.report_id = c.report_id
WHERE c.application_name LIKE '%SPSS%'
ORDER BY c.application_version, a.computer_name

Hope this helps.

thansen
New Contributor

I didn't ask the question but needed every installed app on every computer for an audit. That was Exactly what i needed. Thanks for the code sample.

flyboy
Contributor

Has anyone ever figured out how to do this with the API without having to parse all the individual computer records? I have no problem querying the DB correctly, I just don't want to do it since that kinda defeats the purpose of having an API.