Number of discovered computer in Client Automation is not the same as number of discovered assets in Service Desk.
Example :
ITCM DSM Explorer shows 659 assets, whereas CA SDM reflects only 592 discovered assets.
Client Automation 14.*
ServiceDesk is using following SQL Query (on SDM database) to find the discovered assets :
SELECT DISTINCT ca_asset.label, ca_asset.asset_tag, ca_asset.serial_number, ca_logical_asset.host_name, ca_logical_asset.logical_asset_uuid
FROM ca_logical_asset, ca_asset_source, ca_asset
WHERE ( ca_logical_asset.asset_uuid = ca_asset.asset_uuid AND ca_asset.asset_type_id = 1 AND
( ( ca_asset_source.logical_asset_uuid = ca_logical_asset.logical_asset_uuid AND ca_asset_source.subschema_id > 1 )
AND ca_asset_source.logical_asset_uuid = ca_logical_asset.logical_asset_uuid AND ca_asset_source.delete_time IS NULL ) )
ORDER BY 1 ASC
Following SQL Query on SDM mdb database return some rows. This is a cause of problem as column logical_asset_uuid is NULL for some computers in table ca_asset_source :
select * from ca_asset_source where logical_asset_uuid is NULL and subschema_id=3
Following SQL Query returns the name of computers with problem in ca_asset_source :
select label from ca_discovered_hardware
where dis_hw_uuid in (select asset_source_uuid from ca_asset_source where logical_asset_uuid is NULL and subschema_id=3)
order by 1
If this SQL Query executed on SDM database returns some rows:
select * from ca_asset_source where logical_asset_uuid is NULL and subschema_id=3
Execute a coracleanup (with scope DSM) on ServiceDesk mdb database.
See : Latest CORA cleanup utility for ITCM
Example :
coracleanup.cmd /SERVER <sqlserver_SDM_mdb> /TYPE 2 /USERNAME ca_itrm /PASSWORD <ca_itrm_password> /SCOPE DSM /METHOD REINIT /DATABASE mdb /PORT 1433