Lansweeper includes a report showing Windows 10 computers not on the latest feature update. But this report is always showing a lot of computers because we have test users on the newest build at all times while the regular users are delayed by 8 months.
I put together a report that calculates the version that most computers are on and then shows computers on older builds than that. This helps us catch computers that are getting behind.
Select Top 1000000 tsysOS.Image As icon,
tblAssets.AssetID,
tblAssets.AssetName,
tsysOS.OSname As OS,
tblAssets.OScode + '.' + tblAssets.BuildNumber As Build,
tblAssets.Version As [OS Version],
tblAssets.Domain,
tblAssets.Username,
tblAssets.Userdomain,
tblAssets.IPAddress,
tblAssets.Description,
tblAssetCustom.Manufacturer,
tblAssetCustom.Model,
tblAssetCustom.Location,
tsysIPLocations.IPLocation,
tblAssets.Firstseen,
tblAssets.Lastseen
From tblAssets
Inner Join tblAssetCustom On tblAssets.AssetID = tblAssetCustom.AssetID
Inner Join tsysOS On tblAssets.OScode = tsysOS.OScode
Left Join tsysIPLocations On tblAssets.LocationID = tsysIPLocations.LocationID
Left Join (Select A.Version,
Row_Number() Over (Order By A.Version Desc) As RowNumber
From (Select Distinct A.Version
From tblAssets A
Inner Join tsysOS B On A.OScode = B.OScode
Inner Join (Select Top 1 A.Version,
Count(1) As Total
From tblAssets A
Inner Join tsysOS B On A.OScode = B.OScode
Where B.OSname = 'Win 10'
Group By A.Version
Order By Total Desc) C On 1 = 1
Where A.Version <= C.Version And B.OSname = 'Win 10') A) Versions On
tblAssets.Version = Versions.Version
Where tsysOS.OSname = 'Win 10' And tblAssetCustom.State = 1 And
(Versions.RowNumber >= 2 Or tblAssets.Version Is Null)
Order By tblAssets.Lastseen Desc