Are you looking at client side querying rather than the returned status messages?
Here is some SQL for compliance on the server side: DECLARE @RscID int; SELECT @RscID = ResourceID FROM v_R_System WHERE ((Name0 = 'ComputerName') and (Active0 = 1)); SELECT catinfo2.CategoryInstanceName AS [UpdateClassification],ui.CI_ID AS [CIID],ui.BulletinID,ui.ArticleID,ui.Title, Installed=(CASE WHEN css.Status=3 THEN '*' ELSE'' END), IsRequired=(CASE WHEN css.Status = 2 THEN '*' ELSE '' END),ui.InfoURL AS [InformationURL] FROM v_UpdateComplianceStatus css JOIN v_UpdateInfo ui ON ui.CI_ID = css.CI_ID JOIN v_CICategories_All catall ON catall.CI_ID = ui.CI_ID JOIN v_CategoryInfo catinfo ON catall.CategoryInstance_UniqueID = catinfo.CategoryInstance_UniqueID AND catinfo.CategoryTypeName='Company' JOIN v_CICategories_All catall2 ON catall2.CI_ID = ui.CI_ID JOIN v_CategoryInfo catinfo2 ON catall2.CategoryInstance_UniqueID = catinfo2.CategoryInstance_UniqueID AND catinfo2.CategoryTypeName='UpdateClassification' LEFT JOIN v_CITargetedMachines ctm ON ctm.CI_ID=css.CI_ID and ctm.ResourceID = @RscID LEFT JOIN (SELECT atc.CI_ID, Deadline = MIN(a.EnforcementDeadline) FROM v_CIAssignment a JOIN v_CIAssignmentToCI atc ON atc.AssignmentID = a.AssignmentID GROUP BY atc.CI_ID) cdl ON cdl.CI_ID = css.CI_ID WHERE css.ResourceID = @RscID AND ((css.Status=2) OR (css.Status=3)) AND (catinfo.CategoryInstanceName = 'Microsoft') ORDER BY catinfo.CategoryInstanceName, catinfo2.CategoryInstanceName, ui.ArticleID For client side try playing with these: get-wmiobject -query "SELECT * FROM CCM_SoftwareUpdate" -namespace "ROOT\ccm\ClientSDK" get-wmiobject -query "SELECT * FROM CCM_UpdateStatus" -namespace "root\ccm\SoftwareUpdates\UpdatesStore" From: [email protected] [mailto:[email protected]] On Behalf Of David O'Brien Sent: 16 October 2014 05:06 To: [email protected] Subject: [mssms] Status of required deployments Hi all, Before I go and check in my lab and potentially reinvent the wheel, has anybody got a query at hand that can be executed on a ConfigMgr client and check if it has installed all required deployments? In this case I am specifically talking about Software Updates, but I guess that doesn't matter. I know I looked at something similar a while ago, but can't remember which WMI class I chose back then. Background: I'm writing a workflow that puts a machine into a collection, the machine receives its new policies (software update deployments), installs them and after it has done that, I need to continue with other machines. That's why I need to find out at what time it's done installing everything. Thanks, David

