We have a piece of software that was packaged and pushed into the K1000. Helpdesk staff were directed to know how to package and deploy the application, and then to execute the deployment to a pool of systems/users.

Our Director has requested proof that the directive was followed, and that staff didnt simply manually install the app on each client.

 

Answer Summary:
select S.DISPLAY_NAME as MANAGED_INSTALL, S.DISPLAY_VERSION as SOFTWARE_VERSION, M.NAME as MACHINE, case when (MS.MACHINE_ID > 0 and MI.UNINSTALL = 0) then 'Installed' when MIA.ATTEMPT_COUNT = MI.MAX_ATTEMPT_COUNT then 'Failed' when (MS.MACHINE_ID > 0 and MI.UNINSTALL = 1) then 'Failed to Uninstall' when MIA.ATTEMPT_COUNT > 0 then concat('Not Installed (',MIA.ATTEMPT_COUNT,' of ', MI.MAX_ATTEMPT_COUNT,' attempts)') else 'Not Installed' end as DEPLOYMENT_STATUS, M.IP as 'IP Address', M.LAST_SYNC, M.USER_NAME as 'Last User' from SOFTWARE S join MI on (S.ID = MI.SOFTWARE_ID) join MI_LABEL_JT MIL on (MI.ID = MIL.MI_ID) join LABEL L on (MIL.LABEL_ID = L.ID) join MACHINE_LABEL_JT ML on (L.ID = ML.LABEL_ID) join MACHINE M on (ML.MACHINE_ID = M.ID) join SOFTWARE_OS_JT SO on (SO.SOFTWARE_ID = S.ID and SO.OS_ID = M.OS_ID) left join MACHINE_SOFTWARE_JT MS on (M.ID = MS.MACHINE_ID and MS.SOFTWARE_ID = S.ID) left join MI_ATTEMPT MIA on (MIA.MI_ID = MI.ID and MIA.MACHINE_ID = M.ID) WHERE (S.DISPLAY_NAME LIKE 'SOFTWARE_NAME%') order by MANAGED_INSTALL, SOFTWARE_VERSION, DEPLOYMENT_STATUS, MACHINE
Cancel
0 Comments   [ + ] Show Comments

Comments

Please log in to comment

Answers

1

I would take a look at John's post. One thing I did add to mine was

WHERE (S.DISPLAY_NAME LIKE 'SOFTWARE_NAME%') so that it would just show that one install.

http://www.itninja.com/blog/view/k1000-reports-tracking-managed-installs

So something like this.

select S.DISPLAY_NAME as MANAGED_INSTALL, S.DISPLAY_VERSION as SOFTWARE_VERSION, M.NAME as MACHINE,

case

when (MS.MACHINE_ID > 0 and MI.UNINSTALL = 0) then 'Installed'

when MIA.ATTEMPT_COUNT = MI.MAX_ATTEMPT_COUNT then 'Failed'

when (MS.MACHINE_ID > 0 and MI.UNINSTALL = 1) then 'Failed to Uninstall'

when MIA.ATTEMPT_COUNT > 0 then concat('Not Installed (',MIA.ATTEMPT_COUNT,' of ', MI.MAX_ATTEMPT_COUNT,' attempts)')

else 'Not Installed'

end as DEPLOYMENT_STATUS,

M.IP as 'IP Address', M.LAST_SYNC, M.USER_NAME as 'Last User'

from SOFTWARE S

join MI on (S.ID = MI.SOFTWARE_ID)

join MI_LABEL_JT MIL on (MI.ID = MIL.MI_ID)

join LABEL L on (MIL.LABEL_ID = L.ID)

join MACHINE_LABEL_JT ML on (L.ID = ML.LABEL_ID)

join MACHINE M on (ML.MACHINE_ID = M.ID)

join SOFTWARE_OS_JT SO on (SO.SOFTWARE_ID = S.ID and SO.OS_ID = M.OS_ID)

left join MACHINE_SOFTWARE_JT MS on (M.ID = MS.MACHINE_ID and MS.SOFTWARE_ID = S.ID)

left join MI_ATTEMPT MIA on (MIA.MI_ID = MI.ID and MIA.MACHINE_ID = M.ID)

WHERE (S.DISPLAY_NAME LIKE 'SOFTWARE_NAME%')

order by MANAGED_INSTALL, SOFTWARE_VERSION, DEPLOYMENT_STATUS, MACHINE

 

Break on Columns:  MANAGED_INSTALL, SOFTWARE_VERSION

Answered 09/13/2012 by: dugullett
Red Belt

  • Thanks!!! That was exactly what i was looking for. Your post and the link provided everything i needed.
Please log in to comment
Answer this question or Comment on this question for clarity