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

Introduction to scripting

ServiceNow uses JavaScript as a language for the majority of the scripts you can write or edit. If you already have a background in JavaScript, then you will certainly have a head start when it comes to writing your first scripts. The JavaScript engine used for writing scripts is updated as new versions of ServiceNow are released. The other language used is called Jelly. Not many people outside of the ServiceNow space are aware of Jelly, and it certainly wasn't a language I was familiar with before working with ServiceNow. Fortunately, Jelly is not used in the majority of scripts, and we'll cover how and where to use it in a later chapter.

Before you start writing your first script, it is important to check whether your goal can be achieved without using script. This should always be a consideration before you get started. By leveraging configurations in the form of UI policies, for example, it is possible to avoid customization all together.  

When scripting, it is important to think about what you want to achieve, and which records and what fields in the database you will need access to. The most common scripts will simply need information from the current record being displayed or updated, but more complex scripts may need to access data from several different tables. It is a good practice to ensure that the database and table structure will allow you to get all the data you need for your script from the current record before you start.

One other point to note when scripting is to make sure your code is well documented, including good comments and descriptions of what goals are to be achieved. While you are writing code, it can seem that what it does will be obvious, but coming back to the same code after some time, that often will not be the case. Maintaining ServiceNow instances is a big part of an administrator's job, and trying to do this with no comments in scripts can be a laborious task. I have come across many instances with insufficient comments and descriptions, and a lot of time is initially wasted on discovering how it all hangs together. Documenting your code will not only help you over time, but will also help any other administrators who need to maintain your scripts and instances.

For example, it is important to explain what each function does:

/*This function returns true or false based on the whether the input variable is 0
Inputs: input - integer
*/
function myFunction(input) {
if (input == 0) {
return true;
} else {
return false;
}
}

Most scripts will use the glide classes provided by ServiceNow, which we will discuss in the next chapter.

主站蜘蛛池模板: 青阳县| 唐河县| 揭东县| 顺义区| 郎溪县| 尼勒克县| 辉县市| 靖江市| 葵青区| 兴业县| 建昌县| 渭源县| 章丘市| 奎屯市| 沙河市| 成都市| 左云县| 涟源市| 平乡县| 武平县| 泰来县| 新源县| 磐安县| 西林县| 瑞丽市| 新疆| 南川市| 瓦房店市| 河曲县| 乐亭县| 达拉特旗| 如东县| 馆陶县| 定西市| 怀集县| 岱山县| 徐水县| 乐亭县| 陆丰市| 沂水县| 辽宁省|