logo

NJP

Place an order for Order Guide automatically Using Business Rule.

Import · Jan 17, 2022 · article

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":"[email protected]"

}

},

{

"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);

View original source

https://www.servicenow.com/community/itsm-articles/place-an-order-for-order-guide-automatically-using-business-rule/ta-p/2305356