create change task using Business rule

Priyanka Mathur
Tera Contributor

Hi ServiceNow Experts,

My requirement is to create a change task, when the change request short description contains "Planned Outage". I have written the below script. Can you please help me with this, as change task is not being triggered. 

createTask();

function createTask() {
var org = current.u_organization;
var groupName = '';
if (org == 'IT') {
groupName = 'IT-Network Operations';
var cTask = new GlideRecord('change_task');
cTask.initialize();
cTask.short_description = 'Change task should have test and verify';
// cTask.description = '';
cTask.parent = current.sys_id;
cTask.change_request = current.sys_id;
cTask.cmdb_ci = current.cmdb_ci;
cTask.u_predecessor = 'No';
cTask.assignment_group.setDisplayValue(groupName);
}
}

1 ACCEPTED SOLUTION

Murthy Ch
Giga Sage

@Priyanka Mathur 

Can you try this:

createTask();

function createTask() {
var org = current.u_organization;
var groupName = '';
if (org == 'IT') {
groupName = 'IT-Network Operations';
var cTask = new GlideRecord('change_task');
cTask.initialize();
cTask.short_description = 'Change task should have test and verify';
// cTask.description = '';
cTask.parent = current.sys_id;
cTask.change_request = current.sys_id;
cTask.cmdb_ci = current.cmdb_ci;
cTask.u_predecessor = 'No';
cTask.assignment_group.setDisplayValue(groupName);

cTask.insert();
}
}

Thanks,
Murthy

View solution in original post

5 REPLIES 5

Hajar BENJAHHAR
Mega Sage

Hello, 

You will use an after business rule, please follow the steps : 

find_real_file.png

(function executeRule(current, previous /*null when async*/ ) {

    createTask();

    function createTask() {
       var org = current.u_organization; // if u_organisation is a string field 
  
        var groupName = '';
        if (org == 'IT') {
            groupName = 'Service Desk'; // please put the name of your group
            var cTask = new GlideRecord('change_task');
            cTask.initialize();
            cTask.short_description = 'Change task should have test and verify';
            // cTask.description = '';
            cTask.parent = current.sys_id;
            cTask.change_request = current.sys_id;
            cTask.cmdb_ci = current.cmdb_ci;
            cTask.u_predecessor = 'No';
            cTask.assignment_group.setDisplayValue(groupName);
	    cTask.insert();
        }
    }

})(current, previous);

Regards, 

Hajar