What are the Software Inventory File Details and Software Components?
ITMS 8.x
Inventory Solution 8.x
Software inventory consists of at least two types of details. They are:
Different inventory processes populate these two types of details. On the Unix, Linux and Mac (ULM) systems, there are three methods for gathering software inventory. They are:
Process |
Description |
File Details |
Software Components |
All inventory processes |
Gathers native software package information, e.g., the rpm database, pkgutil (mac), etc. |
Yes |
Yes |
File Properties |
Inventory task/policy option that initiates the use of the filescan.rule file on ULM clients. |
Yes |
Yes |
File rule |
Advanced settings in an inventory task or policy that allow for including/excluding files based on various parameters. The data for software components is not available for this file-only type of inventory. |
Yes |
No |
Tables, Views and their Relationships
Following are a few tables and views containing the file details and software component details. Also, the table that associates the two types of data is listed.
File detail tables:
Software Component tables: and views
The association table between the two types of tables is:
Note: By querying for a file detail guid in the ResourceAssociation.ChildResourceGuid attribute, the corresponding software component guid can be found in the db record's ParentResourceGuid attribute. The ParentResourceGuid can then be used to find additional software component data.
File Detail and Software Component Table Relationships
Following is a description of these tables showing their related attributes (columns). Note that the attributes in the same column have the same guid value. Therefore, tables can be joined using the attribute names in the same column.
Table |
Column for file-related table |
Column for Software Component-related table |
Inv_Installed_File_Details |
fileresourceguid |
|
Inv_File_Details |
_resourceguid |
|
ResourceAssociation |
childresourceguid |
parentresourceguid |
vSoftwareComponent |
|
guid |
Inv_Software_Component |
|
_resourceguid |
Table |
File Attributes |
Software Component Attributes |
RM_Resourcefile |
guid |
|
Inv_Installed_File_Details |
fileresourceguid |
|
ResourceAssociation |
childresourceguid |
parentresourceguid |
vSoftwareComponent |
|
guid |
Table |
Software Component Attributes |
Inv_installedSoftware |
_softwarecomponentguid |
Inv_software_component |
_resourceguid |
vSoftwareComponent |
guid |
This is a sample of other tables related to file and software component data:
Note that left outer joins were used in case software components and resource associations are not yet created.
select vc.name, vsc.name, ifd.name, isc.version, ra.*, ifd.fileresourceguid, ifdet.filesize, ifdet.fileextension
from inv_installed_file_details ifd
join vcomputer vc on vc.guid = ifd._resourceguid
join resourceassociation ra on ifd.fileresourceguid = ra.childresourceguid
join vsoftwarecomponent vsc on vsc.guid = ra.parentresourceguid
left outer join inv_software_component isc on isc._resourceguid = vsc.guid
left outer join inv_file_details ifdet on ifdet._resourceguid = ifd.fileresourceguid
where vsc.name like 'websphere%'
order by ifd.fileresourceguid
select vc.name, rf.guid, vsc.name, ifd.name
from [RM_ResourceFile] rf
left outer join resourceassociation ra on ra.childresourceguid = rf.guid
left outer join vsoftwarecomponent vsc on vsc.guid = ra.parentresourceguid
left outer join inv_installed_file_details ifd on ifd.fileresourceguid = rf.guid
join vcomputer vc on vc.guid = ifd._resourceguid
where rf.NAME like '%websphere%'
select vc.name "ComputerName", pu.[user] "UserName", vsc.name, isc.version, iis.installdate, iis._softwarecomponentguid, vc.[os name]
from vcomputer vc
left outer join inv_aex_ac_primary_user pu on vc.guid = pu._resourceguid
join inv_installedsoftware iis on iis._resourceguid = vc.guid
left outer join inv_software_component isc on isc._resourceguid = iis._softwarecomponentguid
left outer join vsoftwarecomponent vsc on vsc.guid = iis._softwarecomponentguid
where vsc.name like 'Microsoft Office Shared MUI%'
order by vc.name, vsc.name, isc.version