User Tools

Site Tools


business_rules

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
business_rules [2024/12/13 09:58] johnsonjohnbusiness_rules [2024/12/13 10:04] (current) johnsonjohn
Line 127: Line 127:
 })(current, previous); })(current, previous);
  
 +</code>
 +
 +----
 +=====INCIDENT-Display Caller Email is Empty=====
 +<code>
 +(function executeRule(current, previous /*null when async*/) {
 +
 + var callerName = current.caller_id.name;
 + gs.addInfoMessage('Please note: Email address for the caller,'+callerName+', is empty. They will not receive email communications sent by ServiceNow.');
 +
 +})(current, previous);
 +
 +</code>
 +
 +----
 +=====True Up NonState Values from Parent INC=====
 +<code>
 +(function executeRule(current, previous /*null when async*/) {
 +
 + // Add your code here
 + var sysID = current.sys_id;
 +
 + //Check for any child incidents
 + var childCheck = new GlideRecord('incident');
 + childCheck.addQuery('parent_incident', sysID);
 + //childCheck.addEncodedQuery('parent_incident='+sysID);
 + childCheck.query();
 +
 + if (childCheck.hasNext()) {
 + while (childCheck.next()) {
 + // If child incident is already Closed or Cancelled, child incident should not be updated
 + if (childCheck.incident_state == IncidentState.CLOSED || childCheck.incident_state == IncidentState.CANCELED)
 + return;
 +
 + // Update child incident's Category, Subcategory, Assignment group, and Assigned to fields to match that of parent incident
 + childCheck.category = current.category;
 + childCheck.subcategory = current.subcategory;
 +
 + // Only copy parent incident's assignment group if it is not empty.
 + if (!current.assignment_group.nil()) {
 + childCheck.assigned_to = '';
 + childCheck.assignment_group = current.assignment_group;
 + }
 +
 + // Only copy parent incident's assigned to if it is not empty.
 + if (!current.assigned_to.nil()) {
 + childCheck.assigned_to = current.assigned_to;
 + }
 +
 + childCheck.setWorkFlow(false);
 + childCheck.update();
 + }
 + }
 +
 +})(current, previous);
 +
 +</code>
 +
 +----
 +=====Sys_USER-Add VIP Mark=====
 +<code>
 +(function executeRule(current, previous /*null when async*/) {
 +
 + //Query sys_user Table and Add VIP Mark
 + var gr = new GlideRecord('sys_user');
 + gr.addQuery('sys_id', current.user.sys_id);
 + gr.query();
 +
 + while (gr.next()) {
 + gr.vip = true;
 + gr.setWorkflow(false);
 + gr.update();
 + }
 +
 +})(current, previous);
 </code> </code>
  
 ---- ----
business_rules.1734112738.txt.gz · Last modified: 2024/12/13 09:58 by johnsonjohn