Creating Software Installation Records
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
2 hours ago
Hello everyone,
I’ve come across an interesting integration scenario and would like your input. We are receiving device details along with associated software installation data from a source system. Each device can have 100+ software installations. This data is being ingested into a staging table via the integration.
Our objective is to:
- Identify or match the CI using device attributes such as Serial Number, FQDN, and related identifiers.
- Once the CI is successfully identified, create the corresponding Software Installation records in the
cmdb_sam_sw_installtable.
Since we will have one row per software installation, I want to avoid repeated IRE calls to retrieve the device sys_id for each record. Does anyone have suggestions on how to handle this more efficiently?
My current approach is as follows:
- Configure the Import Set to run asynchronously.
- Execute a Scheduled Job first to:
- Group records based on device identifiers such as Serial Number and FQDN.
- Make a single IRE call per device to retrieve the corresponding
sys_id. - Update that
sys_idon all related rows in the staging table.
- Once the above step is completed, trigger the Transform Job to map and insert the data into the target table.
I’d appreciate your review and any feedback or alternative suggestions.
Thanks in advance,
R
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
an hour ago
Try this approach
Pre-Resolve CIs → Then Transform
-
Import data into the staging table with async transform disabled (don't auto-transform).
-
Run a pre-processing Script (Scheduled Job or Fix Script) that:
- Groups staging rows by device identifier (Serial Number / FQDN).
- Performs one GlideRecord lookup per unique device against
cmdb_ci_computer(use IRE only if you need CI auto-creation). - Stamps the resolved
sys_idinto au_resolved_cifield on all matching staging rows. - Marks each row's
u_resolution_statusasresolvedornot_found.
-
Trigger the Transform Map which:
- Filters on
u_resolution_status = resolvedonly. - Maps
u_resolved_ci→installed_onincmdb_sam_sw_installdirectly — no lookups needed during transform. - Rows marked
not_foundare skipped and available for review/retry.
- Filters on
If a device has 150 software rows, you make 1 lookup instead of 150. The transform becomes a pure insert operation with zero redundant CI resolution, and unmatched records are cleanly separated for troubleshooting.
