NOW You Know: Updating the Filtering Logic of the ‘Add’ Button on the Affected CIs Related List
In ServiceNow, several tables, including Incident and Change, allow you to identify CIs that are being affected by the topic of the given record via an ‘Affected CIs’ related list. Some processes populate this list automatically, but additional CIs may be added manually through the use of an ‘Add’ button. When the ‘Add’ button is […]
Cancel transactions via URL
It’s happened to all of us – you’re working with a business rule that doesn’t quite seem to be doing what you need it to, so you incorporate a few log statements and start investigating. Days pass without a resolution. Maybe you want to take a look at the logs from a from a few […]
The value of ServiceNow database views
Background Note: This article is concerned with ServiceNow database views, which are, in baseline implementations, only available for configuration by ServiceNow administrators. ServiceNow is built to be dependent on database tables to capture and store data. ServiceNow reporting helps make sense of this data. Reporting on existing tables, without having to delve into some advanced […]
Scripting for the ServiceNow Cart
As a ServiceNow partner, we are often tasked with helping to automate processes within ServiceNow. Though a hallmark of the ServiceNow platform is providing access to a self-service Service Catalog, requests could reasonably be expected to need to be generated from any number of other processes where having to manually fill out a catalog item […]
Parsing inbound emails to create records
Though most ServiceNow users and administrators are aware that ServiceNow is capable of generating outbound email notifications, some organizations don’t take advantage of ServiceNow’s ability to receive and process inbound emails. If they do, they may not fully capitalize on the ability to precisely filter and parse incoming emails to determine what, if anything, should […]
What does deleted restoration data mean, and how to recover deleted records in ServiceNow?
Sometimes ServiceNow records get deleted unintentionally. As harrowing as it can be, dealing with the recovery of deleted records is a circumstance that is likely to be encountered at some point while working with a ServiceNow instance. Luckily, the “deleted” records are typically not genuinely erased from existence but removed from their originating table and […]
Configuring and using Interactive Filters on homepages and dashboards
For many organizations, ServiceNow homepages (and their evolved counterpart, dashboards) offer indispensable insights into platform data and operational health. In fact, ServiceNow’s reporting and Performance Analytics (PA) tools are among its greatest strengths. That said, some advanced reporting and PA tools are often under-utilized, likely due to a lack of familiarity. One of those tools, […]
Avoiding the Pass-by-Reference JavaScript Pitfall in ServiceNow
A commonly encountered and potentially difficult to debug issue associated with writing scripts in ServiceNow is the case of unintentionally working with a reference to a javascript object property instead of the property’s value. This is most commonly encountered in instances where you are iterating through the results of a GlideRecord query. Below you will find an […]
Background script for creating choice values quickly
Creating Choice Values via Script Have you ever found yourself performing the tedious activity of manually creating values for a sys_choice field? When only a handful of values need to be created, the process is not much of a burden, but having to create 20, 30, or more values can be a time consuming bear […]
GlideAJAX Equivalent for Service Portal – Getting Server Data from Client
Note: This article requires basic familiarity with coding Service Portal widgets. In the Service Portal, the scripting environment is different from the ServiceNow backend. Portal widgets utilize AngularJS, which introduces a model-view-controller approach to passing data and handling what is presented to the end user. Sometimes it is necessary, like on the backend, to access […]