This is the experience I have gain by developing and customizing on ServiceNow.

1. Client area customization:

1.1 UI Policy: 

UI policies offer an alternative to client scripts for dynamically changing information on a form. Administrators and users with the Personalize Rules [personalize_rules] or the UI policy administrator [ui_policy_admin] role can use UI policies to define custom process flows for tasks. 

1.2 UI Action:

UI actions add buttons, links, and context menu items on forms and lists, making the UI more interactive, customizable, and specific to user activities. UI actions can contain scripts that define custom functionality.

Administrators and users with the ui_action_admin role can define UI actions.

1.3 G_Form and g_user

GlideForm.js is the Javascript class used to customize forms.

1.4 Client Script

This can be used for defining form actions:

Script typeRuns when
onLoad() The system loads a form
  • The system loads a form loads and no field values have changed
  • A field value changes
onSubmit() A user saves the form

A list cell value changes


1.5 UI Macros:

UI macros define modular, reusable components in the ServiceNow platform. For example, UI Macros are used to apply formatters to various forms within ServiceNow that provide additional information about the form without using a field. This functionality requires the knowledge of Jelly script.


2. Server side:

2.1 Business Rules:

A business rule is a server-side script that runs when a record is displayed, inserted, updated, or deleted, or when a table is queried. Use business rules to accomplish tasks like automatically changing values in form fields when certain conditions are met, or to create events for email notifications and script actions.

2.2 Scripts include:

Create script includes to store JavaScript functions and classes for use by server scripts. Each script include defines either an object class or a function. Script includes run only when called by a server script.

Consider using script includes instead of global business rules because script includes are only loaded on request.

Scripting for Email Notifications


2.3 Mail scripts

Mail Scripts allow for business rule-like scripting within an outbound email message. With mail scripts, you can dynamically change the email output of your system based on different criteria. Mail scripts allow you to perform simple tasks, such as displaying incident data, and complex ones, such as making advanced database queries.

Create mail scripts in System Policy > Email > Notification Email Script starting with the Eureka release. Then add a ${mail_script:script name} embedded script tag to the body of the email notification or template, replacing script name with the name of the script you created. This makes it easy to use the same scripts in multiple email notifications or templates.


Workflow: Tables: Workflow scratchpad variables.



About Lei

I am an IT specialist with over 10 year experience - years on Automation, on-Premise or Azure.

I am happy to develop however never want be a full time developer. Only do what I have to do. If it has to be PowerShell,HTML, PHP, CSS, C#, VBS or JS, front end or backend, so be it, doesn't matter!

Spent years with Windows, SCCM, SharePoint, SQL and Exchange servers. For last several years, I have been actively working under On Premise > Azure environment.


Current Certificates:
    Microsoft® Certified-
  • -Enterprise Administrator
  • -Database Administrator
  • -SharePoint Administrator
  • -Administering and Deploying SCCM 2012
Red Hat Certified Technician
ITIL V3 Foundation - Practitioner

Working on Azure Certificates now and hopefully they can stop upgrading their questions one day! GIVE ME A BREAK!

Contact Lei

Name *
Email *
Comments *

Traffic since 10/08/2016

This week518
This month2591

Visitor Info

  • IP:
  • Browser: Unknown
  • Browser Version:
  • Operating System: Unknown

Who Is Online