
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
11-29-2018 08:17 AM
Wanted to see if anyone had any experience with this that may be able to help. Sorry for the book below, but wanted to make sure I described the issue well enough to understand.
I'm familiar with Discovery but trying to implement a very simple use case of SAM for the first time. I'm created a custom discovery pattern to discover a commercial application that doesn't exist out of the box to support SAM.
I’m having issues getting my discovery pattern to populate the software CI in the (cmdb_sam_sw_install) table. I understand that when SAM is activated this is the table that is created and drives whether a software discovery model is created that software models would be related to. Normally I find ServiceNow documentation to be exceptional, however it seems like there is scarce documentation on this, or I'm looking in the wrong places…and what I have found does not seem to be correct (or maybe old). I have been attempting to try the steps on this page (https://docs.servicenow.com/bundle/london-it-service-management/page/product/software-asset-management2/task/t_CustomPatternSAMSAMF.html) but notice the following:
- In Step 1c it says to copy the variable class name. Class name isn’t a field that actually exists, however I know they are just saying to get the CMDB CI table name. Not a big deal, but this may be the first indicator that this doco is old since the field names don’t match?
- On Step 1d it says to go in the discovery pattern and under related links click on pre/post processing. However there is no related links on this form, nor is there any pre/post processing link anywhere that I have found. Usually related links are driven by UI actions which I haven’t found either.
- I did notice there is a module under the ‘Pattern Designer’ app called Pre Post Processing. There are two scripts that appear to modify the the ‘cmdb_sam_sw_install’ table called: ‘Sync Installed Software’ and ‘SAM Patterns – pre launch’. I added my discovery pattern to both in the patterns to run against field and re ran discovery but didn’t seem to work. I see in the pattern log that these pre/post processessing steps ran successfully, but the software discovered didn’t make it into the ‘cmdb_sam_sw_install’ table
- I was able to do Step 2 without issues, but in the end didn’t get the desired result
Some context:
We have a server with the software installed on it. I created a process classification that triggers my custom discovery pattern to run and discover the software. The pattern is very basic (just populates the name, edition, and version) and works fine to discover the software. However when trying to follow the steps on the page above to customize the pattern to work with SAM and get a software discovery model automatically generated I’m not having much luck.
Solved! Go to Solution.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
11-29-2018 09:20 AM
Did you follow the steps mentioned in this documentation ? you need to create an entry in Software Installation Name Mapping table [cmdb_sam_sw_name_mapping] with the CMDB CI class info.
Can you also share the NDL file of your custom pattern ?
you should check the name of the custom class you created under cmdb_ci_appl. Also the custom pattern should have version and edition information.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
11-29-2018 09:20 AM
Did you follow the steps mentioned in this documentation ? you need to create an entry in Software Installation Name Mapping table [cmdb_sam_sw_name_mapping] with the CMDB CI class info.
Can you also share the NDL file of your custom pattern ?
you should check the name of the custom class you created under cmdb_ci_appl. Also the custom pattern should have version and edition information.

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
11-29-2018 12:56 PM
Thank you for the response Sree. I did add a mapping in the cmdb_sam_sw_name_mapping table. However when I double checked it before replying to your post i noticed there was a typo.
It works as expected now.