- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-04-2018 02:23 AM
I am using Discovery to populate the majority of hardware items in the CMDB, and am looking to use Service Mapping to create relationships to Business Services in the future. Until then the team is creating relationships manually and by loading relationship data to cmdb_rel_ci.
The challenge we face when loading relationship data is when Discovery has created CIs with the same name but different classes (e.g., a server and a virtual instance). Loading Parent / Type / Child to cmdb_rel_ci where Parent = Business Service and Child = asset CI sometimes relates the virtual instance instead of the intended server to the Business Service. It looks as though the transform map creates the relationship for the first CI it finds where multiple CIs have identical names, although I haven't proved that conclusively.
I've considered the solution of exporting the server CIs I want to relate to Business Services and their sys_ids to create a data load and transform map to map the sys_ids to report_parent_sys_id and report_parent_child id. The team is going to test that, however it feels like a reactive and inelegant solution to the challenge.
Does anyone have any experience of this and any other potential solutions to share please? Thank you.
Solved! Go to Solution.

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-04-2018 03:07 AM
Hello Martin,
How are you importing the relationships into your CMDB? If it is via an Import set/Transform Map method then you could add the CI Class (Windows Server for example) to your spreadsheet and use that as part of the Transform to ensure you are only updating the relevant CI by matching against both the CI Name and the CI Class?

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-09-2019 08:32 AM
I have the same exact issue, and unfortunately, I'm not following the proposed solution. Can you elaborate please? When I am using the destination table of cmdb_rel_ci, there is no field to use for "Class".
Thanks in advance.

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-09-2019 08:48 AM
Hello Scott,
Its been a year so forgive me for taking a minute to go back through the problem.
We were specifically looking at transform maps, and coding around the issue of duplicate names with different classes as part of the identifying the correct CI.
My suggestion was to add two columns, which contained the class name of the CI; so instead of just:
Server 1 - Used By - Server 2
I suggested:
Server 1 - Windows Server - Used By - Server 2 - Linux Server
You would then need to code a lookup of the cmdb using name & class as your source, and use that in the field maps instead of just selecting Parent or Child.

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-09-2019 10:37 AM
Hi James -
Thanks for the quick reply; I sincerely appreciate it.
If I'm understanding you correctly, there's a coding aspect to properly setting up the T-map. That being the case, I'm at a loss as I haven't done any coding / scripting in the ServiceNow platform. My recourse at this point is to make contact with a developer colleague who may be able to help.
Thanks again for the response!
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
11-19-2020 10:45 AM
Hi James,
Request you to elaborate if this solves this issue.
Looking forward to your sincere response.
Thanks,
Suchi

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-09-2019 08:23 AM
I have the same exact issue, and unfortunately, I'm not following the proposed solution. Can you elaborate please? When I am using the destination table of cmdb_rel_ci, there is no field to use for "Class".
Thanks in advance.