IRE not working when CI created from Asset

Tom Sienkiewicz
Mega Sage

Hi Everyone,

I am trying to figure out why Identification fails for a CI that exists, and then an asset gets created which should theoretically update the existing CI but it creates a new CI instead.

 

According to those docs, all CIs extended from Hardware should follow IRE when being created from Assets, unless I missed something:

https://docs.servicenow.com/en-US/bundle/tokyo-it-asset-management/page/product/asset-management/con... 

 

TomSienkiewicz_0-1666288067719.png

 

How I tested that:

1. Created a CI manually in the Printer class (extends hardware) with Serial number "test123".

2. Used an Import Set API to create an Asset with a Model category that also points to Printer CI class, and the Asset also has the serial number "test123".

3. Expected would be that existing CI gets updated, but instead a completely new CI got created, now there are 2 CIs in same CI class, having same serial number.

 

Any suggestions why that might be?

6 REPLIES 6

Yes, this seems to be quite interesting. If the CI is populated first then what would be the best practice to create the Asset so that it link's to the correct CI.

 

One more thought, if the CI is created it would automatically create an asset with the same serial number unless Forced CI verification is enabled.

 

So in order to import the assets now, you can use import set/transform map and coalesce with the serial number attribute and I believe that should not create a new asset. Plus you can bulk import to the asset table as well.

So I believe I now have tested all combinations and here is how that works OOTB seemingly (when above IRE property for Assets->CI is enabled):

 

1. If you alredy have an existing CI with same serial number, it will Abort creation of an Asset/CI (even if that CI does not have an Asset linked). So what's the point of having IRE based on serial number then 🙂 How it should work IMO, is the Asset should be created and linked to existing CI/any fields on that CI should be updated as defined in Asset<>CI sync.

2. If you have an Asset with CI already and you try to create another Asset with same serial number -> it will abort both Asset/CI updates. This is arguably OK, but I would personally prefer to be able to update the existing matched Asset and CI with any new information rather than flat-out abort.

3. If you just update an existing Asset linked to an existing CI, everything works as expected and CI also gets updated if needed. BUT this is not IRE, it only happens because that Asset already has a link to CI. 

 

It seems to me the way IRE is handled for Asset to CI creation is flawed and honestly quite useless.. all it does is aborts any insert/update if anything with a matching serial number is found.