Service Now has limitations on duplicate CIs in the same payload. But it also has a limitation on all CIs in the payload needing to be for only 1 Service Now “domain”, which is “tenant” in the UCMDB. If the TQL in the UCMDB has results for 2 tenants in the same payload to IRE, then Service Now fails to process it properly.
The request here is two fold:
1) First, allow a setting to push only one TQL result (grouped on the “Root” or “Source” CIT) per payload… that will allow a quick win. (e.g. just one “Root” Node instance with all connected things)
2) Allow a loop in the code. And when a “multi tenant” type setting is set on the integration job, then parameterize the TQL based on tenant… and loop through the results of each tenant, separately sending to Service Now. That way tenant 1 finishes sending, before tenant 2 starts. But all share the same TQL and the same integration point, and the same integration user.
Right now, the ways to work around this are difficult to manage over time:
1) Share TQLs: Create a tenant-based user account, login with that user and set a new integration point per tenant, with new jobs. It’s a lot to manage as the number of tenants grow to 800.
2) Filtered TQLs on tenant: a bunch of TQLs saved per tenant, and the same number of integration points.