Lists software update compliance by computer, classification and severity. Note: Only updates present in the SCCM database are displayed. This affects both the installed and required update information displayed. Default exclusions are for antivirus definitions.Popovici Ioan @ SCCM-Zone.com0/ConfigMgr_A01/{5C6358F2-4BB6-4a1b-A16E-8D96795D8602}None33f94ec3-1e39-4466-a6ee-65619da20a87DataSource=Parameters!Locale.Value=Parameters!UserSIDs.Value=Parameters!CollectionID.Value=Parameters!ShowInstalled.Value=Parameters!ExcludeUpdates.Value/*
.SYNOPSIS
Gets the software update compliance in SCCM.
.DESCRIPTION
Gets the software update compliance in SCCM by computer, classification and severity.
.NOTES
Created by
Ioan Popovici 2018-10-11
Release notes
https://github.com/Ioan-Popovici/SCCMZone/blob/master/Reporting/Updates/SU%20Compliance%20by%20Computer%20Classification%20and%20Severity/CHANGELOG.md
This query is part of a report should not be run separately.
.LINK
https://SCCM-Zone.com
.LINK
https://github.com/Ioan-Popovici/SCCMZone
*/
/*##=============================================*/
/*## QUERY BODY */
/*##=============================================*/
/* Testing variables !! Need to be commented for Production !! */
--DECLARE @UserSIDs AS NVARCHAR(10) = 'Disabled';
--DECLARE @CollectionID AS NVARCHAR(10) = 'A010000A';
--DECLARE @Locale AS INT = '2';
--DECLARE @ShowInstalled AS INT = '0';
--DECLARE @ExcludeUpdates AS NVARCHAR(250) = '915597,2267602,2461484' --AV Definitions
/* Variable declaration */
DECLARE @LCID AS INT = dbo.fn_LShortNameToLCID (@Locale)
/* Initialize ClientState descriptor table */
DECLARE @ClientState TABLE
(
BitMask int
, StateName NVARCHAR(250)
)
/* Populate ClientState table */
INSERT INTO @ClientState
(BitMask, StateName)
VALUES
('0', 'No Reboot'),
('1', 'Configuration Manager'),
('2', 'File Rename'),
('4', 'Windows Update'),
('8', 'Add or Remove Feature')
/* Initialize SystemsInfo table */
DECLARE @SystemsInfo TABLE
(
ResourceID INT
, ComputerName NVARCHAR(250)
, UserName NVARCHAR(250)
, OperatingSystem NVARCHAR(250)
, OSBuild NVARCHAR(250)
, OSVersion NVARCHAR(250)
, Domain NVARCHAR(250)
, IPAddresses NVARCHAR(250)
, LastBootTime NVARCHAR(250)
, PendingRestart NVARCHAR(250)
, Managed NVARCHAR(5)
, ClientState NVARCHAR(20)
, ClientVersion NVARCHAR(250)
, LastUpdateScan NVARCHAR(250)
)
/* Initialize UpdateInfo table */
DECLARE @UpdateInfo TABLE
(
ResourceID INT
, ComplianceStatus NVARCHAR(250)
, Classification NVARCHAR(250)
, Severity NVARCHAR(250)
, ArticleID NVARCHAR(250)
, BulletinID NVARCHAR(250)
, DisplayName NVARCHAR(250)
, DateRevised NVARCHAR(250)
, IsDeployed NVARCHAR(5)
, IsEnabled NVARCHAR(5)
)
/* Get systems data */
INSERT INTO @SystemsInfo (ResourceID, ComputerName, UserName, OperatingSystem, OSBuild, OSVersion, Domain, IPAddresses, LastBootTime, PendingRestart, Managed, ClientState, ClientVersion, LastUpdateScan)
SELECT
ResourceID = Computers.ResourceID
, ComputerName = Computers.Netbios_Name0
, UserName = CONCAT(Computers.User_Domain0 + '\', Computers.User_Name0) --Add user domain to UserName
, OperatingSystem =
CASE
WHEN OperatingSystem.Caption0 <> '' THEN
CONCAT(
REPLACE(OperatingSystem.Caption0, 'Microsoft ', ''), --Remove 'Microsoft ' from OperatingSystem
REPLACE(OperatingSystem.CSDVersion0, 'Service Pack ', ' SP') --Replace 'Service Pack ' with ' SP' in OperatingSystem
)
ELSE
/* Workaround for systems not in GS_OPERATING_SYSTEM table */
(
CASE
WHEN CombinedResources.DeviceOS LIKE '%Workstation 6.1%' THEN 'Windows 7'
WHEN CombinedResources.DeviceOS LIKE '%Workstation 6.2%' THEN 'Windows 8'
WHEN CombinedResources.DeviceOS LIKE '%Workstation 6.3%' THEN 'Windows 8.1'
WHEN CombinedResources.DeviceOS LIKE '%Workstation 10.0%' THEN 'Windows 10'
WHEN CombinedResources.DeviceOS LIKE '%Server 6.0' THEN 'Windows Server 2008'
WHEN CombinedResources.DeviceOS LIKE '%Server 6.1' THEN 'Windows Server 2008R2'
WHEN CombinedResources.DeviceOS LIKE '%Server 6.2' THEN 'Windows Server 2012'
WHEN CombinedResources.DeviceOS LIKE '%Server 6.3' THEN 'Windows Server 2012 R2'
WHEN CombinedResources.DeviceOS LIKE '%Server 10.0' THEN 'Windows Server 2016'
ELSE 'Unknown'
END
)
END
, OSBuild = Computers.Build01
, OSVersion =
(
SELECT OSLocalizedNames.Value
FROM fn_GetWindowsServicingLocalizedNames() AS OSLocalizedNames
JOIN fn_GetWindowsServicingStates() AS OSServicingStates ON OSServicingStates.Build = Computers.Build01
WHERE OSLocalizedNames.Name = OSServicingStates.Name
AND Computers.OSBranch01 = OSServicingStates.Branch --Select only the branch of the installed OS
)
, Domain = Computers.Full_Domain_Name0
, IPAddresses =
REPLACE(
(
SELECT LTRIM(RTRIM(IP.IP_Addresses0)) AS [data()]
FROM fn_rbac_RA_System_IPAddresses(@UserSIDs) AS IP
WHERE IP.ResourceID = Computers.ResourceID
AND IP.IP_Addresses0 NOT LIKE 'fe%'
-- Exclude IPv6
FOR XML PATH('')
),
' ',', ' -- Replace space with ', '
)
, LastBootTime = OperatingSystem.LastBootUpTime0
, PendingRestart =
CASE
WHEN CombinedResources.ClientState = 0 THEN 'No'
ELSE(
STUFF(
REPLACE(
(
SELECT '#!' + LTRIM(RTRIM(StateName)) AS [data()]
FROM @ClientState
WHERE BitMask & CombinedResources.ClientState <> 0
FOR XML PATH('')
),
' #!',', '
),
1, 2, ''
)
)
END
, Managed =
CASE Computers.Client0
WHEN 1 THEN 'Yes'
ELSE 'No'
END
, ClientState = ClientSummary.ClientStateDescription
, ClientVersion = Computers.Client_Version0
, LastUpdateScan = UpdateScan.LastScanTime
FROM fn_rbac_FullCollectionMembership(@UserSIDs) AS CollectionMembers
LEFT JOIN fn_rbac_R_System(@UserSIDs) AS Computers ON Computers.ResourceID = CollectionMembers.ResourceID
LEFT JOIN fn_rbac_GS_OPERATING_SYSTEM(@UserSIDs) OperatingSystem ON OperatingSystem.ResourceID = CollectionMembers.ResourceID
LEFT JOIN fn_rbac_CombinedDeviceResources(@UserSIDs) AS CombinedResources ON CombinedResources.MachineID = CollectionMembers.ResourceID
LEFT JOIN fn_rbac_CH_ClientSummary(@UserSIDs) AS ClientSummary ON ClientSummary.ResourceID = CollectionMembers.ResourceID
LEFT JOIN fn_rbac_UpdateScanStatus(@UserSIDs) AS UpdateScan ON UpdateScan.ResourceID = CollectionMembers.ResourceID
WHERE CollectionMembers.CollectionID = @CollectionID
/* Get update data */
INSERT INTO @UpdateInfo (ResourceID, ComplianceStatus, Classification, Severity, ArticleID, BulletinID, DisplayName, DateRevised, IsDeployed, IsEnabled)
SELECT
CollectionMembers.ResourceID
, ComplianceStatus =
CASE ComplianceStatus.Status
WHEN 0 THEN 'Unknown'
WHEN 1 THEN 'Not Required'
WHEN 2 THEN 'Required'
WHEN 3 THEN 'Installed'
END
, Classification = Category.CategoryInstanceName
, Severity = ISNULL(NULLIF(UpdateCIs.SeverityName, ''), 'Unknown')
, ArticleID = UpdateCIs.ArticleID
, BulletinID = NULLIF(UpdateCIs.BulletinID, '')
, DisplayName = UpdateCIs.DisplayName
, DateRevised = UpdateCIs.DateRevised
, IsDeployed =
CASE UpdateCIs.IsDeployed
WHEN 0 THEN 'No'
WHEN 1 THEN 'Yes'
END
, IsEnabled =
CASE UpdateCIs.IsEnabled
WHEN 0 THEN 'No'
WHEN 1 THEN 'Yes'
END
FROM fn_rbac_ClientCollectionMembers(@UserSIDs) AS CollectionMembers
INNER JOIN fn_rbac_Update_ComplianceStatus(@UserSIDs) AS ComplianceStatus ON CollectionMembers.ResourceID = ComplianceStatus.ResourceID
AND ComplianceStatus.Status IN (0, 2, @ShowInstalled) --0 Unknown, 2 Required, 3 Installed
INNER JOIN fn_ListUpdateCIs(@LCID) AS UpdateCIs ON ComplianceStatus.CI_ID = UpdateCIs.CI_ID
AND UpdateCIs.CIType_ID IN (1, 8) --1 Software Updates, 8 Software Update Bundle (v_CITypes)
AND UpdateCIs.IsExpired = 0 --Update is not Expired
AND UpdateCIs.IsSuperseded = 0 --Update is not Superseeded
AND UpdateCIs.ArticleID NOT IN --Exclude updates based on ArticleID
(
SELECT * FROM dbo.ufn_csv_String_Parser(@ExcludeUpdates, ',')
)
LEFT JOIN fn_rbac_CICategories_All(@UserSIDs) AS CICategories ON UpdateCIs.CI_ID = CICategories.CI_ID
RIGHT JOIN fn_rbac_ListUpdateCategoryInstances(@LCID, @UserSIDs) AS Category ON CICategories.CategoryInstanceID = Category.CategoryInstanceID
AND Category.CategoryTypeName = 'UpdateClassification' --Get only the 'UpdateClasification' category
WHERE CollectionMembers.CollectionID = @CollectionID
/* Join SystemsInfo and UpdateInfo data */
SELECT
Managed
, ComputerName
, UserName
, OperatingSystem
, OSBuild
, OSVersion
, Domain
, IPAddresses
, LastBootTime
, PendingRestart
, ClientState
, ClientVersion
, LastUpdateScan
, ComplianceStatus =
/* Set Compliance based on Compliance Status Activity and LastUpdateScan */
(
CASE
WHEN ComplianceStatus IS NOT NULL THEN ComplianceStatus
WHEN ComplianceStatus IS NULL
AND LastUpdateScan > = (SELECT DATEADD(dd, -7, CURRENT_TIMESTAMP)) --Scanned for updates in the last 7 days
AND ClientState LIKE 'Active%' THEN 'Compliant'
ELSE 'Unknown'
END
)
, Classification
, Severity
, ArticleID
, BulletinID
, DisplayName
, DateRevised
, IsDeployed
, IsEnabled
FROM @SystemsInfo AS SystemsInfo
LEFT JOIN @UpdateInfo AS UpdateInfo ON UpdateInfo.ResourceID = SystemsInfo.ResourceID
ORDER BY
Managed
, ComputerName
, OperatingSystem
, OSBuild
, OSVersion
, Domain
, IPAddresses
, LastBootTime
, PendingRestart
, ClientState
, ClientVersion
, LastUpdateScan
, ComplianceStatus
, Classification
, Severity
, ArticleID
, BulletinID
, DisplayName
, DateRevised
, IsDeployed
, IsEnabled
/*##=============================================*/
/*## END QUERY BODY */
/*##=============================================*/trueManagedSystem.StringComputerNameSystem.StringUserNameSystem.StringOperatingSystemSystem.StringOSBuildSystem.StringOSVersionSystem.StringDomainSystem.StringIPAddressesSystem.StringLastBootTimeSystem.StringPendingRestartSystem.StringClientVersionSystem.StringClientStateSystem.StringLastUpdateScanSystem.StringComplianceStatusSystem.StringClassificationSystem.StringSeveritySystem.StringBulletinIDSystem.StringArticleIDSystem.StringDisplayNameSystem.StringDateRevisedSystem.StringIsDeployedSystem.StringIsEnabledSystem.StringDataSource=Parameters!UserTokenSIDs.Value/* Get UserSID */
SELECT dbo.fn_rbac_GetAdminIDsfromUserSIDs (@UserTokenSIDs) AS UserSIDstrueUserSIDsSystem.StringDataSource=Parameters!UserSIDs.Value/* Get Device Collections */
SELECT
CollectionID,
Name
FROM dbo.fn_rbac_Collection(@UserSIDs)
WHERE CollectionType = 2
ORDER BY
Name;trueCollectionIDSystem.StringNameSystem.StringDataSource=Parameters!ReportName.Value/* ReportDescription Dataset */
SELECT DISTINCT Description
FROM ReportServer.dbo.Catalog
WHERE Name = @ReportNameDescriptionSystem.String108.87292mm40.08125mm29.7625mm17.32708mm6.80433mmtrue=Fields!DisplayName.ValueClassificationtrue=SrsResources.Localization.GetString("DisplayName", User!Language)#4c68a2Middle2pt2pt2pt2pttrue=Fields!DateRevised.ValueClassificationtrue=SrsResources.Localization.GetString("DateRevised", User!Language)#4c68a2Middle2pt2pt2pt2pttrue=Fields!IsDeployed.ValueClassificationtrue=SrsResources.Localization.GetString("Deployed", User!Language)#4c68a2Middle2pt2pt2pt2pttrue=Sum(Count(Fields!ArticleID.Value))ComputerNametrue=SrsResources.Localization.GetString("Total", User!Language)#4c68a2Middle2pt2pt2pt2pt6mmtruetrueTextbox119SkyBlueMiddle2pt2pt2pt2pttruetrueTextbox222SkyBlueMiddle2pt2pt2pt2pttruetrueTextbox223SkyBlueMiddle2pt2pt2pt2pttruetrue=CountDistinct(Fields!ComputerName.Value)SkyBlueMiddle2pt2pt2pt2pt6mmtruetrueTextbox202#e6eefcMiddle2pt2pt2pt2pttruetrueTextbox203#e6eefcMiddle2pt2pt2pt2pttruetrueTextbox204#e6eefcMiddle2pt2pt2pt2pttruetrueTextbox205#e6eefcMiddle2pt2pt2pt2pt6mmtruetrueTextbox58#e6eefcMiddle2pt2pt2pt2pt3truetrueTextbox62#e6eefcMiddle2pt2pt2pt2pt6mmtruetrueTextbox377#e6eefcMiddle2pt2pt2pt2pt3truetrue=Count(Fields!Classification.Value)#e6eefcMiddle2pt2pt2pt2pt6.80433mmtruetrue=Fields!DisplayName.Value#e6eefcMiddle2pt2pt2pt2pttruetrue=Fields!DateRevised.Value#e6eefcMiddle2pt2pt2pt2pttruetrue=Fields!IsDeployed.Value#e6eefcMiddle2pt2pt2pt2pttruetrueTextbox26#e6eefcMiddle2pt2pt2pt2pt6.35mmtruetrueTextbox385SkyBlueTop2pt2pt2pt2pttruetrueTextbox385SkyBlueTop2pt2pt2pt2pttruetrueTextbox385SkyBlueTop2pt2pt2pt2pttruetrue=Count(Fields!ArticleID.Value)SkyBlueTop2pt2pt2pt2pt6.80433mmtruetrueTextbox41#7292ccMiddle2pt2pt2pt2pttruetrueTextbox49#7292ccMiddle2pt2pt2pt2pttruetrueTextbox45#7292ccMiddle2pt2pt2pt2pttruetrue=CountDistinct(Fields!ComputerName.Value)#7292ccMiddle2pt2pt2pt2pt19.44375mmtruetrue=SrsResources.Localization.GetString("Managed", User!Language)#4c68a2Middle2pt2pt2pt2pt41.36434mmtrue=Fields!ComputerName.ValueComputerNametrue=SrsResources.Localization.GetString("ComputerName", User!Language)#4c68a2Middle2pt2pt2pt2pt31.63904mmtrue=Fields!UserName.ValueComputerNametrue=SrsResources.Localization.GetString("User", User!Language)#4c68a2Middle2pt2pt2pt2pt50.18781mmtruetrue=Fields!OperatingSystem.ValueComputerNametrue=SrsResources.Localization.GetString("OperatingSystem", User!Language)#4c68a2Middle2pt2pt2pt2pt19.17917mmtrue=Fields!OSBuild.ValueComputerNametrue=SrsResources.Localization.GetString("Build", User!Language)#4c68a2Middle2pt2pt2pt2pt22.35416mmtrue=Fields!OSVersion.ValueComputerNametrue=SrsResources.Localization.GetString("Version", User!Language)#4c68a2Middle2pt2pt2pt2pt32.14375mmtrue=Fields!Domain.ValueComputerNametrue=SrsResources.Localization.GetString("Domain", User!Language)#4c68a2Middle2pt2pt2pt2pt33.20208mmtrue=Fields!IPAddresses.ValueComputerNametrue=SrsResources.Localization.GetString("IP Addresses", User!Language)#4c68a2Middle2pt2pt2pt2pt26.45209mmtrue=Fields!LastBootTime.ValueComputerNametrue=SrsResources.Localization.GetString("Last Boot Time", User!Language)#4c68a2Middle2pt2pt2pt2pt43.78542mmtrue=Fields!PendingRestart.ValueComputerNametrue=SrsResources.Localization.GetString("PendingRestart", User!Language)#4c68a2Middle2pt2pt2pt2pt25mmtrue=Fields!ClientVersion.ValueComputerNametrue=SrsResources.Localization.GetString("ClientVersion", User!Language)#4c68a2Middle2pt2pt2pt2pt31.61458mmtrue=Fields!ClientState.ValueComputerNametrue=SrsResources.Localization.GetString("ClientState", User!Language)Textbox173#4c68a2Middle2pt2pt2pt2pt33.46667mmtrue=Fields!LastUpdateScan.ValueComputerNametrue=SrsResources.Localization.GetString("Last Update Scan", User!Language)#4c68a2Middle2pt2pt2pt2pt25mmtrue=Fields!ComplianceStatus.ValueComputerNametrue=SrsResources.Localization.GetString("Status", User!Language)#4c68a2Middle2pt2pt2pt2pt36.1125mmtrue=Fields!Classification.ValueClassificationtrue=SrsResources.Localization.GetString("Classification", User!Language)#4c68a2Middle2pt2pt2pt2pt22.80085mmtrue=Fields!Severity.ValueClassificationtrue=SrsResources.Localization.GetString("Severity", User!Language)#4c68a2Middle2pt2pt2pt2pt22.08959mmtrue=Fields!ArticleID.ValueClassificationtrue=SrsResources.Localization.GetString("ArticleID", User!Language)#4c68a2Middle2pt2pt2pt2pt=Fields!Managed.Value=Fields!Managed.Value19.44375mmtruetrue=Fields!Managed.ValueSkyBlueTop2pt2pt2pt2pt41.36434mmtruetrueTextbox104SkyBlueMiddle2pt2pt2pt2pt31.63904mmtruetrueTextbox207SkyBlueMiddle2pt2pt2pt2pt50.18781mmtruetrueTextbox208SkyBlueMiddle2pt2pt2pt2pt19.17917mmtruetrueTextbox209SkyBlueMiddle2pt2pt2pt2pt22.35416mmtruetrueTextbox210SkyBlueMiddle2pt2pt2pt2pt32.14375mmtruetrueTextbox211SkyBlueMiddle2pt2pt2pt2pt33.20208mmtruetrueTextbox212SkyBlueMiddle2pt2pt2pt2pt26.45209mmtruetrueTextbox213SkyBlueMiddle2pt2pt2pt2pt43.78542mmtruetrueTextbox214SkyBlueMiddle2pt2pt2pt2pt25mmtruetrueTextbox215SkyBlueMiddle2pt2pt2pt2pt31.61458mmtruetrueTextbox216SkyBlueMiddle2pt2pt2pt2pt33.46667mmtruetrueTextbox217SkyBlueMiddle2pt2pt2pt2pt25mmtruetrueTextbox218SkyBlueMiddle2pt2pt2pt2pt36.1125mmtruetrueTextbox219SkyBlueMiddle2pt2pt2pt2pt22.80085mmtruetrueTextbox220SkyBlueMiddle2pt2pt2pt2pt22.08959mmtruetrueTextbox221SkyBlueMiddle2pt2pt2pt2ptAfter=Fields!ComputerName.Value=Fields!ComputerName.Value=Fields!UserName.Value=Fields!OperatingSystem.Value=Fields!OSBuild.Value=Fields!OSVersion.Value=Fields!Domain.Value=Fields!IPAddresses.Value=Fields!LastBootTime.Value=Fields!PendingRestart.Value=Fields!ClientVersion.Value=Fields!ClientState.Value41.36434mmtruetrue=Fields!ComputerName.Value#e6eefcTop2pt2pt2pt2pt=Fields!UserName.Value31.63904mmtruetrue=Fields!UserName.Value#e6eefcMiddle2pt2pt2pt2pt=Fields!OperatingSystem.Value=Fields!OperatingSystem.Value50.18781mmtrue=Fields!OperatingSystem.Value#e6eefcMiddle2pt2pt2pt2pt=Fields!OSBuild.Value=Fields!OSBuild.Value19.17917mmtruetrue=Fields!OSBuild.Value#e6eefcMiddle2pt2pt2pt2pt=Fields!OSVersion.Value=Fields!OSVersion.Value22.35416mmtruetrue=Fields!OSVersion.Value#e6eefcMiddle2pt2pt2pt2pt=Fields!Domain.Value=Fields!Domain.Value32.14375mmtruetrue=Fields!Domain.Value#e6eefcMiddle2pt2pt2pt2pt=Fields!IPAddresses.Value=Fields!IPAddresses.Value33.20208mmtruetrue=REPLACE(Fields!IPAddresses.Value,", ",CHR(10))#e6eefcMiddle2pt2pt2pt2pt=Fields!LastBootTime.Value=Fields!LastBootTime.Value26.45209mmtruetrue=Fields!LastBootTime.Value#e6eefcMiddle2pt2pt2pt2pt=Fields!PendingRestart.Value=Fields!PendingRestart.Value43.78542mmtruetrue=REPLACE(Fields!PendingRestart.Value,", ",CHR(10))#e6eefcMiddle2pt2pt2pt2pt=Fields!ClientVersion.Value=Fields!ClientVersion.Value25mmtruetrue=Fields!ClientVersion.Value#e6eefcMiddle2pt2pt2pt2pt=Fields!ClientState.Value=Fields!ClientState.Value31.61458mmtruetrue=Fields!ClientState.ValueClientState#e6eefcMiddle2pt2pt2pt2pt=Fields!LastUpdateScan.Value=Fields!LastUpdateScan.Value33.46667mmtruetrue=Fields!LastUpdateScan.Value#e6eefcMiddle2pt2pt2pt2pt25mmtruetrue=IIF(Fields!ComplianceStatus.Value = "Compliant", "Compliant", (IIF(Fields!Managed.Value = "No", "Unknown", "")))Textbox198#e6eefcMiddle2pt2pt2pt2pt36.1125mmtruetrueTextbox199#e6eefcMiddle2pt2pt2pt2pt22.80085mmtruetrueTextbox200#e6eefcMiddle2pt2pt2pt2pt22.08959mmtruetrueTextbox201#e6eefcMiddle2pt2pt2pt2ptAfter=Fields!ComplianceStatus.Value=Fields!ComplianceStatus.Value25mmtruetrue=Fields!ComplianceStatus.Value#e6eefcMiddle2pt2pt2pt2pt81.00294mmtruetrueTextbox55#e6eefcMiddle2pt2pt2pt2ptAfter=Fields!Classification.Value=Fields!Classification.Value36.1125mmtruetrue=Fields!Classification.Value#e6eefcMiddle2pt2pt2pt2pt44.89044mmtruetrueTextbox374#e6eefcMiddle2pt2pt2pt2ptAfter22.80085mmtruetrue=Fields!Severity.Value#e6eefcMiddle2pt2pt2pt2pt22.08959mmtruetrue=Fields!ArticleID.Value#e6eefcMiddle2pt2pt2pt2pttrueTV_ClassificationtrueTV_ComplianceStatus=IIf((Fields!Managed.Value="No" OR Fields!ComplianceStatus.Value = "Compliant" ), True, False)41.36434mmtruetrueTextbox206SkyBlueTop2pt2pt2pt2pt31.63904mmtruetrueTextbox9SkyBlueTop2pt2pt2pt2pt50.18781mmtruetruetrueTextbox279SkyBlueTop2pt2pt2pt2pt19.17917mmtruetrueTextbox285SkyBlueTop2pt2pt2pt2pt22.35416mmtruetrueTextbox293SkyBlueTop2pt2pt2pt2pt32.14375mmtruetrueTextbox307SkyBlueTop2pt2pt2pt2pt33.20208mmtruetrueTextbox313SkyBlueTop2pt2pt2pt2pt26.45209mmtruetrueTextbox319SkyBlueTop2pt2pt2pt2pt43.78542mmtruetrueTextbox73SkyBlueTop2pt2pt2pt2pt25mmtruetrueTextbox331SkyBlueTop2pt2pt2pt2pt31.61458mmtruetrueTextbox177SkyBlueTop2pt2pt2pt2pt33.46667mmtruetrueTextbox335SkyBlueTop2pt2pt2pt2pt25mmtruetrueTextbox339SkyBlueTop2pt2pt2pt2pt36.1125mmtruetrueTextbox347SkyBlueTop2pt2pt2pt2pt22.80085mmtruetrueTextbox351SkyBlueTop2pt2pt2pt2pt22.08959mmtruetrueTextbox30SkyBlueTop2pt2pt2pt2pttrueTV_Managed19.44375mmtruetrueTotal#7292ccMiddle2pt2pt2pt2pt41.36434mmtruetrueTextbox123#7292ccMiddle2pt2pt2pt2pt31.63904mmtruetrueTextbox10#7292ccMiddle2pt2pt2pt2pt50.18781mmtruetruetrueTextbox280#7292ccMiddle2pt2pt2pt2pt19.17917mmtruetrueTextbox286#7292ccMiddle2pt2pt2pt2pt22.35416mmtruetrueTextbox294#7292ccMiddle2pt2pt2pt2pt32.14375mmtruetrueTextbox308#7292ccMiddle2pt2pt2pt2pt33.20208mmtruetrueTextbox314#7292ccMiddle2pt2pt2pt2pt26.45209mmtruetrueTextbox320#7292ccMiddle2pt2pt2pt2pt43.78542mmtruetrueTextbox74#7292ccMiddle2pt2pt2pt2pt25mmtruetrueTextbox332#7292ccMiddle2pt2pt2pt2pt31.61458mmtruetrueTextbox178#7292ccMiddle2pt2pt2pt2pt33.46667mmtruetrueTextbox336#7292ccMiddle2pt2pt2pt2pt25mmtruetrueTextbox340#7292ccMiddle2pt2pt2pt2pt36.1125mmtruetrueTextbox348#7292ccMiddle2pt2pt2pt2pt22.80085mmtruetrueTextbox352#7292ccMiddle2pt2pt2pt2pt22.08959mmtruetrueTextbox386#7292ccMiddle2pt2pt2pt2pttruetrueUpdateAndComputerData13.39607mm0.9525mm50.76299mm711.87955mm1.47018in8.34071in0.4intruetrue=SrsResources.Localization.GetString("Description", User!Language)2pt2pt2pt2pttruetrue=SrsResources.Localization.GetString(Fields!Description.Value, User!Language)trueReport_DescriptionLabel5pt2pt2pt2ptReportDescription0.03157in0.127cm0.4in9.81089in10.45796in0.0375in0in28.02675in21.5ptWhite1.5ptWhite1.5ptWhite1.5ptWhite1.5pt6.41591cm#6e7b8b71.4155cm2.5333cmtruetrue0.6007in0.0375in0in28.02675in0.75ptWhite0.75ptWhite0.75ptWhite0.75ptWhite0.75pttruetrue=SrsResources.Localization.GetString(Globals!ReportName, User!Language)1.63513cm0.12701cm0.89817cm24.91965cm1Middle2pt2pt2pt2pt#6e7b8b0.82022cmtruetruetruetrue="Page: " + Globals!PageNumber.ToString() + "of " + Globals!TotalPages.ToString()0.03528cm0.03175cm0.63492cm2.79292cm#6e7b8b29.7cm21cm2.54cm2.54cm2.54cm2.54cm1.27cmString=SrsResources.UserIdentity.GetUserSIDs(User!UserID)UserTokenSIDstrue7b5f538e-1262-4705-a7df-7d4d398a195e/Report Parts/UserTokenSIDs2015-02-25T10:56:20.9331936+01:00StringAdminIDUserSIDsUserSIDstrue2c7b7dc1-c255-43f4-b6eb-9836f5be644e/Report Parts/UserSIDs2015-02-25T10:56:21.3863414+01:00String=User!LanguageLocaletrueStringCollectionCollectionInfoCollectionIDNameStringtrue0Show Installed Updates30String915597,2267602,2461484trueExlude Updates by ArticleID List (915597,2267602,2461484,...)trueString=Globals!ReportNametrueStringtrueReportDescriptionDescriptiontruetrue=User!LanguageSrsResources, culture=neutralCm1fab2b54-57de-49d3-aea2-75b9febeb7dc