- Post History
- Subscribe to RSS Feed
- Mark as New
- Mark as Read
- Bookmark
- Subscribe
- Printer Friendly Page
- Report Inappropriate Content
13m ago - edited 11m ago
ServiceNow Ninja Moves: Hidden, Yet Documented
After my first ServiceNow Ninja Moves session, I delivered a second round to around 100 membersπ and I kept coming across more features that made me stop and think, "How did I miss this?" π
So, here we go again.
These aren't secret features. They're documented, available, and often sitting right in front of us. But some are easy to overlook until you have a reason to look for them.
That's what makes ServiceNow interesting. The platform is huge, and sometimes the smallest features can make a developer's day a little easier.
So, let's explore another set of hidden gems, smart tricks, and developer-friendly features that are worth knowing.
Keyboard Shortcuts - Can ServiceNow Work Without Your Mouse? β¨οΈ
We use ServiceNow every day, but how often do we think about keyboard shortcuts?
ServiceNow provides keyboard shortcuts that can help you navigate and interact with the platform without constantly reaching for the mouse.
You can find them under: User Preferences β Keyboard Shortcuts
And thereβs another useful option here: you can remap shortcuts based on your preference. For developers who spend a lot of time navigating the platform, small productivity improvements like this can add up.
But that leads to another interesting question.
Can admins create or update these shortcuts? - Yes.
There is a backend table for managing them: sys_ux_keyboard_shortcut
From there, administrators can create new shortcuts or update existing ones by defining the key combination and the corresponding action.
So, there are really two sides to this feature:
- User Preferences β where users interact with their shortcuts
- sys_ux_keyboard_shortcut β where shortcuts can be managed
A small feature, but a nice example of how ServiceNow lets you customize the developer experience.
How Do You Track When and By Whom Data Was Exported? π€
Have you ever exported a list to CSV, Excel, or XML and wondered what happens behind the scenes?
ServiceNow keeps track of these export jobs through the Job Polling[sys_poll] table
When a user exports data from a list, the export activity can be found here.
And thereβs another detail worth knowing.
The table has a default cleanup rule that removes export files after one day.
So if you're troubleshooting an export-related issue or trying to understand what happened to a generated export file, sys_poll is one of those tables worth remembering.
Sometimes the information you need isn't in the table you were originally looking at. π
Move Attachments, Don't Duplicate Them π
Attachments are everywhere in ServiceNow.
But what happens when an attachment needs to move from one place to another?
One option developers often think about is copying the attachment.
But sometimes you don't need another copy.
ServiceNow provides the Move Email Attachments to Record action, which lets you move email attachments directly to a target record.
And there is a similar action for records:
Move Attachments to Record
The important word here is move. Instead of creating another copy of the same attachment, the attachment can be moved to where it actually belongs.
This can be especially useful when designing flows around incoming emails, records, and attachment processing.
A small distinction, but one that can help avoid unnecessary duplicates.
Need a Link to a Record? Generate It π
Another useful Flow Designer action is the Link Generator action.
Need to generate links to ServiceNow records as part of a flow?
Instead of manually constructing URLs, the Link Generator action can help generate the required record links.
This can be useful when you're building notifications, emails, or automated communications where users need a direct link back to a ServiceNow record.
Sometimes the best developer trick is simply knowing that the platform already has an action for what you're about to build yourself.
The "Maybe" Problem: Create or Update? π€
Here's a common situation: You need to update a record if it already exists.
But if it doesn't exist, you need to create it.
That means your flow can end up needing logic like:
Does the record exist?
- Yes β Update it
- No β Create it
ServiceNow provides a Create or Update Record action that handles this scenario through a single operation.
You can create or update a record in a ServiceNow table using the provided values.This can simplify flows where the same logic needs to handle both scenarios.
Less branching.
Less logic to maintain.
And one action that describes exactly what you're trying to do.
How Do You Delete Multiple Records with Flow? ποΈ
Updating multiple records from a flow is straightforward.
ServiceNow provides the: Update Multiple Records flow action, which you can drag directly into a flow.
But what about deleting multiple records?
There is a Delete Multiple Records capability, but it is available as an Action Designer step rather than directly as a standard Flow Designer action.
So, if you need to use it in a flow, you can build a custom action around the underlying step.
This is a good reminder that Flow Designer and Action Designer don't always expose every capability in exactly the same way.
When something isn't available as a ready-to-use flow action, it's worth checking what is available underneath.
Ever Seen the Same Role Listed Twice for One User? π₯
Here's something that can look confusing when you're investigating user roles.
You might see the same role appearing more than once for a user. Why?
Role inheritance : When a role is inherited through another role or group, it can be added as a separate entry in: sys_user_has_role
The result can be multiple rows representing the same role for the same user.
So, if you ever look at sys_user_has_role and wonder:
βWhy does this user have the same role twice?β
It doesn't necessarily mean the role was accidentally assigned twice.
Inheritance could be the reason.
And this leads nicely into a useful plugin in Role Management V2.
Role Management V2 - See How a Role Was Inherited π
When enabled, Role Management V2 provides additional visibility into role inheritance.
Two concepts are particularly useful:
Inheritance Count : This tracks how many times a role has been inherited by a user.
Inheritance Map :This provides a visual representation of how the role was inherited.
For developers and administrators troubleshooting access issues, understanding how a user received a role can be just as important as knowing which role they have.
Note: Role Management V2 and these inheritance features may depend on your instance configuration and ServiceNow version. Check the relevant ServiceNow documentation for availability and prerequisites.
Can You Create a Decision Table Directly from a Flow or Subflow? π―
Decision Tables are useful when business logic starts getting too complicated to maintain directly inside a flow.
But here's another handy capability:
You can create a Decision Table directly from a Flow or Subflow.
The experience lets you use data from the flow or subflow to define:
- Inputs
- Conditions
- Results
The convenient modal helps you create the Decision Table without having to completely switch context.
This is a nice example of ServiceNow bringing configuration closer to where you're actually building the logic.
Can Decision Table Rows Be Made Inactive? π
Here's another Decision Table question that comes up when managing business logic:
Can we set Decision Table rows active or inactive?
And what happens when a row is no longer required?
These are important considerations when maintaining Decision Tables over time.
Instead of thinking only about how to create the logic, it is also worth thinking about how that logic will be maintained as requirements change.
Decision Tables are often designed to keep business rules manageable, so knowing the available row-level controls becomes important as the table grows.
Want Better Titles for Flows, Subflows, and Actions? β¨
Sometimes the default title isn't enough.ServiceNow allows you to customize the title of a Flow, Subflow, or Action using styled and dynamic text.
You can use formatting symbols such as:
- *bold*
- #title#
- _italic_
- ~underline~
- ~~strikethrough~~
This can be useful when you want the title to communicate more information or make the component easier to understand at a glance.
It's not a major development feature but these small improvements can make your configuration easier to work with, especially when there are many flows and actions in an application.
Choice Lists, the OOTB Way π
Choice lists are something we work with all the time and sometimes a simple requirement can turn into more scripting than expected.
There is an OOTB option that can help: GlideChoiceList()
Instead of writing a long piece of code to work with choice values, this utility can reduce the implementation significantly.In the session demo, the example went from 15 lines to 2.That's exactly the kind of small discovery this series is about.
If ServiceNow already provides a utility for something you're trying to script, why write the extra lines?
Field Dictionary: Where Did the Read Only Checkbox Go? π
Here's another one that can be confusing when you're working with dictionary configurations.
You may expect a simple Read Only checkbox, but ServiceNow provides different ways of controlling how a field behaves.
The four options covered here are:
Display Read Only : The field appears read-only in the UI, but it can still be updated through client scripts and server-side operations.
Client Script Modifiable : The field is read-only in the UI and can be modified through client scripts, but backend scripts and server-side APIs are blocked from modifying it.
Strict Read Only : The field cannot be modified through client scripts or server-side APIs.
So, when you're configuring a read-only field, it's important to understand what kind of read-only behavior you actually need.
Instance Configured : The default for any field marked read-only before the Australia release. Behavior falls back to the glide.read_only.legacy_read_only_behaviour system property, so existing fields keep working the way they always did β nothing breaks silently on upgrade.
Read-only doesn't always mean the same thing.
copyToClipboard()
Need to copy text to the clipboard? - copyToClipboard() can do that and also provides a built-in confirmation.
Emojis in Banner Announcements π
Yes, even banner announcements can have a little personality.
ServiceNow supports adding emojis to banner announcements.
A Note About the Demos π₯
All of these features were demonstrated live during the session, but I haven't included step-by-step demo instructions here.
The goal of this article is awareness.
These capabilities are already documented within ServiceNow. The interesting part is knowing that they exist and recognizing when they can help.
So if one of these caught your attention, that's your cue to explore it further in your own instance.
Final Thoughts: Keep Looking π
The more you work with Servicenow, the more you realize that there is always another feature hiding somewhere.
Sometimes it's a table you haven't looked at before.
Sometimes it's a Flow Designer action.
Sometimes it's a small configuration option.
Sometimes it's a single method that can replace several lines of code.
And sometimes it's simply knowing where to look.
That's the idea behind ServiceNow Ninja Moves.
These aren't secret features. They're hidden, yet documented. The real trick is staying curious enough to find them.
So the next time you're about to build something from scratch, pause for a second and ask:
"Does ServiceNow already have a way to do this?"
You might be surprised by the answer. π
Happy developing! π
