Auto Insert of Required Approvers based on Affected CI Change Approval Group

sudhakar8
Tera Contributor

Change would like 'Required Approvals' to be added to a CMR automatically, based on the 'Change Approval Group' attribute on a CI (CI criteria: it is not Non-Operational) this would include CIs that are added to both the primary affected CI variable or or those included as part of the Affected CI TAB).

This is to be applied for both change types:  Normal and Emergency (i.e NOT to Standard changes)

1 ACCEPTED SOLUTION

//Add technical approvers to the change request when a new affected CI has been added.
(function executeRule(current, previous /*null when async*/) {
var gr = new GlideRecord('change_request');
gr.addQuery('sys_id', current.task);
gr.query();
if(gr.next())
{
var change_grp = gr.u_technical_approvers_group.toString();
if (change_grp.indexOf(current.ci_item.u_change_approval_group) < 0)
{
gr.u_technical_approvers_group = change_grp + ',' + current.ci_item.u_change_approval_group;
}
//Force update to make sure the business rule to calculate risk and the change type will run when new affected CI has been added regardless the CR has
been updated with new approvals.
gr.setForceUpdate(true);
gr.update();
}
})(current, previous);

Regards
Harish

View solution in original post

37 REPLIES 37

sudhakar8
Tera Contributor

Yes, i have added gs.info also

sudhakar8
Tera Contributor

find_real_file.png

sudhakar8
Tera Contributor

It is returning false 

I tried in my personal dev.it is wrkg fine

//Add technical approvers to the change request when a new affected CI has been added.
(function executeRule(current, previous /*null when async*/) {
var gr = new GlideRecord('change_request');
gr.addQuery('sys_id', current.task);
gr.query();
if(gr.next())
{
var change_grp = gr.u_group.toString();
if (change_grp.indexOf(current.ci_item.u_change_group) < 0)
{
gr.u_group = change_grp + ',' + current.ci_item.u_change_group;
gs.log("group"+gr.u_group);
}
gr.setForceUpdate(true);
gr.update();
}
})(current, previous);

 

 

 

Regards
Harish

sudhakar8
Tera Contributor

Are I need to change current.task