Join the #BuildWithBuildAgent Challenge! Get recognized, earn exclusive swag, and inspire the ServiceNow Community with what you can build using Build Agent.  Join the Challenge.

How to remove affected CIs from current change record???

Shantharao
Kilo Sage

Hi All,

Business use case on change module

Currently I have "Affected CI" (task_ci) related list tab is available on change record, I will have to create new related list called "Exclusion Affected CIs" 

Example : if fulfilment user removes few related list records from "Affected CIs" related list tab, I have to populate same related list records in the another "Exclusion Affected CIs" related list tab.

Purpose : For example user wants to schedule a patching for 10 servers initially when they submit change request but later they will exclude 5 servers from patching, in order to track/audit their current change schedule patching servers, they will look for excluded patching servers in the "Exclusion Affected CIs" related list tab.

 

How can we achieve above business use case, ?
do I need to create new custom table and name it as "Exclusion Affected CIs" related list tab?

If yes do I need to extend it from task_ci or cmdb_ci table?

do I create relationship called "Exclusion Affected CIs" related list?

 

Any thoughts or ideas are very much appreciated 

 

Thanks

 

 

2 REPLIES 2

Stephen Sturde
Tera Guru

Hi Shantharao,

You're on the right track here. The 'Exclusion Affected CIs' will be best as a new custom table. A new custom relationship to the existing 'task_ci' table will not yield the required results. Once you have the new table, you'll want to set up a business rule to run on that table on insert of a new record to check the 'task_ci' table for that CI with that change record and remove the record if it's excluded.

-Stephen

jyotis_
Giga Contributor

Hi Shantharao,

There is a couple of solutions-

  • You can have a checkbox on Affected CI table named "Excluded" to identify exclusion affected CI
  • You can create new custom table as you have already planned

For both the cases, business rule needs to be configured on the affected CI table(task_ci)

condition: before delete

var exclusion_ci = new GlideRecord('task_ci');//or custom table name
exclusion_ci.initialize();
exclusion_ci.u_exclusion = true; // checkbox to identify exluded affected ci
exclusion_ci.ci_item = current.ci_item;
exclusion_ci.task = current.task;
exclusion_ci.insert();

 

Please mark correct if it's helpful

Thank you,

Jyoti