官术网_书友最值得收藏!

Running background scripts

The simplest place to experiment with server-side scripting is perhaps the Background Scripts section in ServiceNow. This provides you with a large text box in which you place your code and a button saying Run Script, without any fuss, formatting, or further complexity. Outputs from your session during execution (such as log statements) are captured and presented to the screen. This, therefore, provides an excellent place to run server-side code where you need to monitor the results, where you can experiment, or where you need to run one-off scripts.

Navigate to Background Scripts by going to System Definition > Scripts (Background).

You will be presented with a large script box; however, before you get too enthusiastic, heed the warning shown. The reason that accessing background scripts requires elevated privileges is to remind you that some badly written code can, in fact, delete all your data. Never experiment in a live production instance!

Tip

Inefficient scripts get stuck in an infinite loop and can seriously impact performance or even cause outages or security breaches. Always test in a sandbox instance first. If you do get stuck, try going to https://<instance>.service-now.com/cancel_my_transaction.do, using the same browser session. The instance will attempt to halt execution of whatever it is doing in the other tab.

Let's run the standard Hello, World! as our first script:

gs.info('Hello, world!'); 

As the output, you should see the following:

*** Script: Hello, world! 

The function used is in this code is not a standard JavaScript command, but is part of the ServiceNow platform. gs stands for GlideSystem, which is a collection of useful functions and utilities. The info function of gs writes a message to the system log, and Background Scripts echoes it back. In Chapter 8, Securing Applications and Data, we will explore logging in ServiceNow in much more detail.

Note

The various functions of GlideSystem will be introduced throughout this book. For a detailed list of all its capabilities, refer to the product documentation: https://developer.servicenow.com/app.do#!/api_doc?v=geneva&type=server&scoped=true&to=class__scoped_glidesystem__geneva.

You must be wondering why it's called GlideSystem. Originally, the company now named ServiceNow was called GlideSoft, and they produced a platform called Glide. As the company and platform grew, they were both renamed to the more familiar monikers used today. You may see other references to Glide and GlideSoft, particularly in the less recent parts of the platform.

The gs object is one of several that are instantiated before the code is run. You will see many more as we journey through the ServiceNow platform. Which ones are available is dependent upon the context the code is running in.

主站蜘蛛池模板: 胶州市| 德格县| 穆棱市| 察隅县| 溆浦县| 县级市| 井陉县| 罗江县| 襄汾县| 铜山县| 娱乐| 邓州市| 台湾省| 丘北县| 安仁县| 庆云县| 张掖市| 来凤县| 孝义市| 措勤县| 莱芜市| 新乐市| 榆林市| 雅江县| 绥德县| 松原市| 霞浦县| 霍州市| 志丹县| 安宁市| 科技| 北碚区| 宁阳县| 原阳县| 阳春市| 闻喜县| 乌海市| 新河县| 郎溪县| 宝应县| 长海县|