The CreatorCon Call for Content is officially open! Get started here.

Don't create asset on virtual server CI

Henrik Jutterst
Tera Guru

I've seen some threads about this question but nothing that seems up to date.

When we are creating a CI in cmdb_ci_server table an asset is also created. That is OK as long as it's not a virtual server.

How can we handle this? If the is_virtual checkbox is checked, that no Asset will be created?

 

Here is what I do:

  1. Go to Windows Server CI. Create New. Fill out forms and mark Is virtual checkbox.
  2. Save the form
  3. I see that there is an Asset created and linked to the CI

I know there is a Business Rule called "Create Asset on insert" and here is the input in the advanced tab for the BR.

var ca = new AssetandCI();

ca.createAsset(current);

 

This BR runs on cmdb_ci table where the virtual is not represented. But this BR runs a script include called AssetandCI. I guess the edit should be done there but where in the file and what? Virtual flag is stored in cmdb_ci_computer table.

virtual != true

 

What to do? I don't what an Asset created if the "Is virtual" checkbox is checked. (Running Jakarta)

 

6 REPLIES 6

danielbilling
Kilo Guru

Hi Henrik,

 

you should manage the CMDB vs Asset through the model record.

on the model record you have a category and the category is defining the relation to alm_ and cmdb_ tables.

 

So we all Virtual servers( virtual=true) are added to a model that have model category = virtual server

 

 

Hi Daniel,

I'm not sure that I follow you.. If I create a Windows Server CI like the screenshot above and check the Is Virtual checkbox I don't want to create an Asset.

 

Should this be specified according to you in: Product Catalog -> Product Models -> Model Categories

I have a Windows Server category there, but that one creates Assets. I assume this should be done in some code to handle my exceptions from creating Assets.

As you see in screen dump we haven't created a model for the CI but isn't it rather strange that ServiceNow creates an Asset then without knowing model Id?

Have you had a similar issue?

Chandu Telu
Tera Guru

 

 

 

 

 

 

Can you check this by adding condtion like this

 

Note : it's not a tested one

 

find_real_file.png

 

 

Ok. So I've tested it now and no asset is created as long as model id is blank. But as I just wrote it does not relate to the conditions above (highlighted in yellow on your screen shot) since "virtual" is stored in cmdb_ci_computer.

 

This is good and useful, but I'd really like to trigger on the virtual checkbox...

 

I can duplicate the code in the business rule and create one for cmdb_ci_server but I'm not that thrilled over that since it would create duplicate code.

 

But thank you so far.