ServiceNow has released a new version of NowPlatform called Tokyo, which promises to help companies face new business challenges arising from challenging economic times. Tokyo was built for companies that understand the benefits of digital transformation. The platform will help increase work automation and security and provide a better experience for employees and customers.
The following article will summarize the changes that the Tokyo version introduced and why they are worth taking a look at.
New JavaScript engine
The most exciting change in the latest Tokyo version is the adjustment of the JavaScript engine from ECMAScript5 to ECMAScript 2021 (ES12) JavaScript. Until now, ECMAScript 2021 (ES12) could be used in scoped applications and scripts, while the new standard enables the following features on the platform:
- default function parameters,
- Const declaration,
- Let declaration,
- Arrow functions,
- Class declarations,
- For-of loops,
- Rest parameters,
- template literals,
- destructuring,
- map set,
- and optional chaining operator.
New IP address type
The second new feature in the Tokyo version is supporting the migration of IP addresses, which are stored as strings, to the new IP Address (Validated IPV4, IPV6) type. The new IP type will store valid IPv4 and IPv6 addresses.
The data is formatted according to the dictionary attribute ip_data_control and can be set to one of the four values:
- Canonical – IP addresses are checked and canonicalized before entering the database. Any non-valid IP addresses are rejected.
- Canonicalize when_possible – proper IP addresses are canonicalized before entering the database, but also invalid IP addresses are able to enter without being changed.
- Expanded – IP addresses are validated and stored, and expanded and not valid IP addresses are rejected.
- None – There is no validation here, it should be used only in an emergency as it reverts to a string field.
System localization fallback language
Another new feature is a fallback language, which will help in situations where the UI is not translated into the language needed by the user. You need the administrator role to set the language. There is no need to add custom translations in user interface strings. Users will get the most suitable translations and if any of the translations is unavailable, then the instance session will use English.
Admins can set fallback languages on the Languages (sys_language) table, but English cannot be chosen there as it is the default language. If fallback language is not preferred, it is possible to set glide_i18n.language_fallback_enabled as false and then the language is always set to English.
Sys log tampering prevention
The new Tokyo release also gives the possibility to configure system rules to prevent sys log tampering. From the current version, all manipulation over sys logs tables will be visible. To start the protection, you need to activate com.glide.protected_tables plugin. For now, protection rules are available for the following tables and their children: syslog, syslog_transaction, sys_outbound_http_log, sysevent, sys_audit, sys_push_notification, protected_table_configuration.
After plugin activation, any attempt of deleting or changing logs from those tables will be visible as log records on protected_table_log table. It is possible to choose if we want to block modifications and log attempts, not block modifications but still log the attempts, or block modifications without logged attempts.
Safe records deleting and updating
Since the Tokyo release, it is possible to safely delete or update records. We need a scheduled job to delete records. After creation, but before execution of the job, you can preview all affected records. Even after the job has ended, we can still use rollback and restore deleted records.
Deleting a bigger number of records is also possible thanks to the table cleaner. Table cleaner is a type of scheduled job that helps remove all old records and maintain a number of records in the table. It runs once per hour and deletes all old, expired, and unneeded records. Table cleaner cannot be used for tables that are configured to use table extension or rotation. Table cleaner deletes records by 20 minutes session, the number of deleted records can be different if queries are slow.
Bulk updates without scripting are also possible. To perform it, we need to create an updated job. To prevent the table from being locked during the job execution we should add some conditions to limit updated records. Also, here it is possible to check records before updating and restore them by rollback if needed. The rollback can be performed by the Admin.
New scoped cache API
In the Tokyo release, we also get ScopedCacheManager API for faster access to data stored in memory. To retrieve, set or flush cache the com.glide.scopedcache plugin need to be activated by the Admin user. To be able to use it, one or more cache or cache pairs need to be chosen. For now, we can use table pair cache, table row pair cache, table column pair cache, or table column and row pair cache.
ScopedCacheManager API gives us a few advantages, like the possibility to use cache data outside the transaction cycle and caching output of valuable operations for quick use in the future. We can also cache strings to have access to it or applications that can be flushed depending on changes in the underlying tables.
Support for system localization
The Tokyo release also made changes in core platform ServiceNow, the first of which is the system localization. Localization helps accommodate users from around the world on the same instance. Information like time, date or currencies can be specified and based on a location. ServiceNow supports many languages but it is also possible to provide your own translations, especially for custom-made modifications or applications.
Sidebar
Since the Tokyo version, we can use a side bar in Conversational Interfaces. With the sidebar workspace, agents can open real-time discussions on interaction or task table-based records. For now, it is possible to create one discussion per record.
Sidebar can be used in:
- CSM Configurable Workspace,
- CSM Manager Workspace,
- HR Agent Workspace,
- ITSM Manager Workspace,
- and Vendor Management Workspace.
Summary
I hope that the numerous changes and improvements introduced on the ServiceNow platform in the Tokyo version will affect the ease and efficiency of using the tool in everyday work. I encourage you to try them.
Sources
- Tokyo Platform Administration – Sidebar overview
- Tokyo Platform Administration – JavaScript modes
- Tokyo Platform Administration – Localization
- Tokyo Platform Administration – Updating records safely
- Tokyo Platform Administration – Deleting records safely
- Tokyo Platform Administration – Avoid log tampering
- Tokyo Platform Administration – Set a fallback language
- Tokyo Platform Administration – IP address field type
***
If you are interested in ServiceNow, we recommend our expert’s article:
Leave a comment