Vijaykumar2
Mega Expert

Scenario : When new employee is hired, automatically requests are created for necessary items for new joiner.

  • I have created a BR on sys_user table when user is created and type is new joiner the order guide request will create automatically.

Condition : After record get inserted into database(sys_user table).

Script : 

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

// Define Json variable with required information and assign values to Order Guide variables
var json = {"opened_by":"62826bf03710200044e0bfc8bcbe5df1","requested_for":"62826bf03710200044e0bfc8bcbe5df1","department":"221f79b7c6112284005d646b76ab978c", 
"remote":"No",
"standard_package":"No"

// define catalog items under rule base and assign values to respective variables of the item.
"items":[{
"sys_id":"04b7e94b4f7b4200086eeed18110c7fd", 
"variables":{
"acrobat":"true",
"Additional_software_requirements":"MS Office 2007"
},
"sysparm_quantity":"6",
},
{
"sys_id":"e1be6dcb4f7b4200086eeed18110c74c",
},
{
"sys_id":"186d917a6fab7980575967ddbb3ee4f2",
"variables":{
"new_email":"test@gmail.com"
}
},
{
"sys_id":"8b3ae7fedc1be1004ece5c08239e522b"
},
{
"sys_id":"962967674ff38200086eeed18110c7e7",
}
}]
};

// Customise the below script as per your order guide details 
var gr = new GlideRecord("sc_cat_item_guide");
if (gr.get("name","New Hire")) {
var sog = new SNC.ScriptableOrderGuide(gr.getValue("sys_id"));
var result = sog.process(new JSON().encode(json));
if(!result)
gs.addInfoMessage('Request was not created');
else {
var request = sog.getRequest();

gs.addInfoMessage('Request has been created for  ordergude'+' '+request.number);}
}


})(current, previous);

 

Please try the same and let me know in case of any queries or issue.

Mark helpful in case the article looks good for you.

 

Thanks,

Vijaykumar

Comments
Raja27
Tera Contributor

This script is not working can you help me?

Version history
Last update:
‎01-17-2022 03:57 AM
Updated by: