We wrote some reports
Local-connected printers
Select Top 1000000 tsysAssetTypes.AssetTypeIcon10 As icon,
tblAssets.AssetID,
tblAssets.AssetName,
tblAssets.Domain,
tblAssets.IPAddress,
tblAssets.Userdomain,
tblAssets.Username,
tblPrinters.Caption,
tblPrinters.Portname,
tblAssets.Firstseen,
tblAssets.Lastseen,
tblPrinters.Lastchanged,
tblPrinters.Status,
tblPrinters.Printprocessor
From tblAssets
Inner Join tblAssetCustom On tblAssets.AssetID = tblAssetCustom.AssetID
Inner Join tsysAssetTypes On tsysAssetTypes.AssetType = tblAssets.Assettype
Inner Join tblPrinters On tblAssets.AssetID = tblPrinters.AssetID
Where (tblPrinters.Portname Like 'USB%' Or tblPrinters.Portname Like 'LPT%' Or
tblPrinters.Portname Like 'COM%' Or tblPrinters.Portname Like 'DOT4%' Or
tblPrinters.Portname Like '%.%.%.%') And tblAssetCustom.State = 1
Order By tblAssets.AssetName
All Printers:
Select Top 1000000 tblAssets.AssetName,
tblAssets.Username,
tblAssets.Lastseen,
tblPrinters.*
From tblAssets
Inner Join tblPrinters On tblAssets.AssetID = tblPrinters.AssetID
Where Not tblPrinters.Portname Like 'PORTPROMPT:' And
Not tblPrinters.Caption Like '%XPS%' And Not tblPrinters.Caption Like '%Fax%'
And Not tblPrinters.Caption Like '%OneNote%' And
Not tblPrinters.Caption Like '%Document%' And Not Lower(tblPrinters.Caption)
Like '%pdf%' And Not Lower(tblPrinters.Portname) Like '%port:%'
Network Printer Connection:
Select Top 1000000 tblAssets1.AssetID,
tblAssets1.AssetName,
tblAssets1.IPAddress,
tblAssetCustom.Manufacturer,
tblAssetCustom.Model,
tblPrinters.Caption,
tblPrinters.Portname,
tblAssets.AssetName CompName,
tblAssets.IPAddress CompIP,
tblAssets.Username,
tblAssets.FQDN
From tblPrinters
Inner Join tblAssets On tblAssets.AssetID = tblPrinters.AssetID
Inner Join tblAssets As tblAssets1 On (tblPrinters.Portname Like '%' +
tblAssets1.IPAddress + '%' Or
tblPrinters.Portname Like tblAssets1.AssetName + '%' Or
tblAssets1.AssetName Like tblPrinters.Portname + '%' Or
tblAssets1.AssetName = tblPrinters.Portname)
Inner Join tblAssetCustom On tblAssets1.AssetID = tblAssetCustom.AssetID
Where tblAssets1.IPAddress <> '' And tblAssets1.Assettype = 16
Order By tblAssets1.AssetName
or if need then add fix domain name
Inner Join tblAssets As tblAssets1 On (tblPrinters.Portname Like '%' +
tblAssets1.IPAddress + '%' Or
tblPrinters.Portname Like tblAssets1.AssetName + '%domain_suffix' Or
tblAssets1.AssetName Like tblPrinters.Portname + '%domain_suffix' Or
tblAssets1.AssetName = tblPrinters.Portname)