Book Image

Learning ServiceNow. - Second Edition

5 (1)
Book Image

Learning ServiceNow. - Second Edition

5 (1)

Overview of this book

This book is an updated version of Learning ServiceNow, that will cover the new and updated features of the ServiceNow platform. It will show you how to put important ServiceNow features to work in the real world, while introducing key concepts via examples of managing and automating IT services. It'll help you build a solid foundation of knowledge, and will demonstrate how to effectively implement and configure modules within ServiceNow. We'll show you how to configure and administer your instance, and then move on to building strong user interfaces and creating powerful workflows. We also cover other key elements of ServiceNow, such as notifications, security, reporting, and custom development. You will learn how to improve and automate your business' workflow and processes. By the end of this book, you will be able to successfully configure and manage ServiceNow like a pro.
Table of Contents (19 chapters)
Learning ServiceNow Second Edition
Contributors
Preface
Index

Index

A

  • Access Control Lists (ACLs)
    • versus data policies / Data policies versus ACLs
    • security rules / ACLs – security rules
    • High Security Settings plugin / High security plugin
  • ACL process order / ACL process order
  • addActiveQuery() method, GlideRecord / addActiveQuery()
  • addErrorMessage() method, GlideSystem
    • about / addErrorMessage() and addInfoMessage()
    • example usage / Example usage
  • addInfoMessage() method, GlideSystem
    • about / addErrorMessage() and addInfoMessage()
    • example usage / Example usage
  • addNotNullQuery() method, GlideRecord
    • about / addNullQuery() and addNotNullQuery()
    • example usage / Example usage
  • addNullQuery() method, GlideRecord
    • about / addNullQuery() and addNotNullQuery()
    • example usage / Example usage
  • addQuery() method, GlideRecord
    • about / addQuery()
    • query operators / Available query operators
    • example usage / Example usage
  • admin pro tips
    • about / Admin pro tips
    • list personalization / List personalization
    • update set selector / Update set selector
    • reference field background color / Reference field background color
    • List v3 rendering / List v3 rendering
    • list shortcut / List, form, and new window shortcuts
    • form shortcut / List, form, and new window shortcuts
    • new window shortcut / List, form, and new window shortcuts
    • ServiceNow frame, adding by URL / Adding the ServiceNow frame by URL
    • impersonation simplification / Impersonation simplification
    • derived field risks / Derived field risks
    • derived fields, finding / Finding derived fields and other field data
    • field data, finding / Finding derived fields and other field data
    • dictionary overrides / Dictionary overrides
  • Angular / Styling the CMS
  • API class
    • structure / The structure of an API class
  • application menus
    • about / Important application menus and modules
  • application navigator
    • about / The application navigator
    • filter text box / Filter text box
    • favorites, adding / Favorites
  • appointments
    • setting up / Setting up appointments
  • approvals / Approvals
  • assignment / Assignment
  • asynchronous business rules / Asynchronous business rules

B

  • banner frame
    • about / Banner frame
    • system settings / System settings
    • Help icon / Help
    • Connect chat conversations / Connect chat conversations
    • global text search / Global text search
    • Profile link / Profile
  • Bootstrap / Styling the CMS
  • breakpoints
    • creating / Breakpoints
  • build for performance
    • about / Build for performance
    • reference fields / Reference fields
    • GlideAjax / GlideAjax and asynchronous GlideRecord
    • asynchronous GlideRecord / GlideAjax and asynchronous GlideRecord
    • g_scratchpad / g_scratchpad
  • business rule / Active
  • business rules
    • about / Business rules
    • post business rules / After business rules
    • asynchronous business rules / Asynchronous business rules
    • display business rules / Display business rules and g_scratchpad

C

  • calculated field values
    • versus default field values / Default versus calculated field values
    • about / Calculated values
  • callback function
    • about / Client-side APIs
  • canCreate() method, GlideRecord
    • about / canRead(), canWrite(), canCreate(), and canDelete()
    • example usage / Example usage
  • canDelete() method, GlideRecord
    • about / canRead(), canWrite(), canCreate(), and canDelete()
    • example usage / Example usage
  • canRead() method, GlideRecord
    • about / canRead(), canWrite(), canCreate(), and canDelete()
    • example usage / Example usage
  • canWrite() method, GlideRecord
    • about / canRead(), canWrite(), canCreate(), and canDelete()
    • example usage / Example usage
  • catalog UI policies
    • about / Catalog UI policies
  • changes() method, GlideElement
    • about / changes(), changesFrom() and changesTo()
    • example usage / Example usage
  • changesFrom() method, GlideElement
    • about / changes(), changesFrom() and changesTo()
    • example usage / Example usage
  • changesTo() method, GlideElement
    • about / changes(), changesFrom() and changesTo()
    • example usage / Example usage
  • class
    • about / The structure of an API class
    • example / The structure of an API class
  • client-side APIs
    • versus server-side APIs / Client-side versus server-side APIs
    • about / Client-side APIs, Client-side APIs
    • g_form / Client-side APIs, GlideForm (g_form)
    • g_user / Client-side APIs, GlideUser (g_user)
    • g_list / Client-side APIs
    • g_menu / Client-side APIs
    • GlideRecord / Client-side APIs, GlideRecord
    • GlideAjax / Client-side APIs, GlideAjax
  • client-side debugging
    • about / Client-side debugging
    • field visibility, debugging / Debugging field visibility
  • client-side Glide classes
    • GlideUser / GlideUser
  • client scripts
    • about / Client scripts
    • types / Client script types
    • onLoad / onLoad
    • onChange / onChange
    • onSubmit / onSubmit
    • onCellEdit / onCellEdit
  • compatibility / Compatibility
  • condition builder / Condition builder
    • dot-walking / Dot-walking
  • configuration
    • examples / UI settings and personalization
  • constructor
    • about / The structure of an API class
  • content frame
    • about / Content frame
  • Content Management System (CMS)
    • styling / Styling the CMS
  • custom homepage
    • creating / Creating a custom homepage
  • custom relationships
    • defining / Defining custom relationships
  • custom table
    • creating / Creating a custom table
  • custom themes / Custom themes

D

  • database table inheritance / Database table inheritance
  • data policies
    • about / Data policies
    • demo / Demo
    • UI policies, converting to / Converting between data and UI policies, Demo
    • versus ACLs / Data policies versus ACLs
  • debug() method, GlideSystem
    • about / debug()
    • example usage / Example usage
  • default field values
    • versus calculated field values / Default versus calculated field values
    • about / Default values
  • deleteMultiple() method, GlideRecord
    • about / deleteRecord() and deleteMultiple()
  • deleteRecord() method, GlideRecord
    • about / deleteRecord() and deleteMultiple()
    • example usage / Example usage
  • display business rules / Display business rules and g_scratchpad
  • documentation, ServiceNow
    • reference / Help
  • documentation macro / Documentation macro
  • Document Object Model (DOM) / Compatibility
  • dot-walking / One-to-many relationships in ServiceNow
    • about / Dot-walking and GlideElement

E

  • emails
    • about / Emails and notifications
  • encoded query / addQuery()
  • encoded query strings
    • generating / Generating encoded query strings
  • errors
    • about / Logging
  • eventQueue() method, GlideSystem
    • about / eventQueue()
    • example usage / Example usage

F

  • favorites
    • adding, to application navigator / Favorites
  • Field Watcher
    • about / Client-side debugging
  • filter
    • building / Building a filter
  • filter text box
    • in application navigator / Filter text box
  • for-loop macro / For-loop macro
  • foreign key / Related lists
  • foreign key (FK)
    • about / One-to-many relationships in ServiceNow
  • form designer / Form designer
  • form layout / Form layout
  • forms
    • about / Forms
  • frames
    • about / Frames
    • banner frame / Banner frame

G

  • general debugging / General debugging
  • get(), GlideRecord
    • about / get()
    • example usage / Example usage
  • getClientData() method, GlideSession
    • about / getClientData() and putClientData()
    • example usage / Example usage
  • getDayOfMonth() method, GlideDateTime
    • about / getDayOfMonth() and getDayOfWeek()
    • example usage / Example usage
  • getDayOfWeek() method, GlideDateTime
    • about / getDayOfMonth() and getDayOfWeek()
    • example usage / Example usage
  • getDisplayValue() method, GlideElement
    • about / getDisplayValue()
    • example usage / Example usage
  • getDisplayValue() method, GlideRecord
    • about / getDisplayValue()
    • example usage / Example usage
  • getED() method, GlideElement
    • about / getED()
    • example usage / Example usage
  • getPreference() method, GlideUser
    • example usage / Example usage
  • getProperty() method, GlideSystem
    • about / getProperty()
    • example usage / Example usage
  • getReferenceTable() method, GlideElement
    • about / getReferenceTable() and getRefRecord()
    • example usage / Example usage
  • getRefRecord() method, GlideElement
    • about / getReferenceTable() and getRefRecord()
    • example usage / Example usage
  • getters
    • using / Always use getters and setters
  • getUniqueValue() method, GlideRecord
    • about / getValue() and getUniqueValue()
    • example usage / Example usage
  • getUser() method, GlideSystem
    • about / getUser()
    • example usage / Example usage
  • getUserID() method, GlideSystem
    • example usage / getUserID()
  • getValue() method, GlideRecord
    • about / getValue() and getUniqueValue()
    • example usage / Example usage
  • GlideAggregate / Server-side APIs
  • GlideAjax / Client-side versus server-side APIs, Client-side APIs
    • about / GlideAjax
  • Glide API / Client-side versus server-side APIs
  • GlideDate / Server-side APIs
  • GlideDateTime / Server-side APIs
    • about / GlideDateTime
    • time, adding / Adding or removing time
    • time, removing / Adding or removing time
    • getDayOfMonth() method / getDayOfMonth() and getDayOfWeek()
    • getDayOfWeek() method / getDayOfMonth() and getDayOfWeek()
  • GlideElement / Server-side APIs
    • about / GlideElement, Dot-walking and GlideElement
    • changes() method / changes(), changesFrom() and changesTo()
    • changesFrom() method / changes(), changesFrom() and changesTo()
    • changesTo() method / changes(), changesFrom() and changesTo()
    • getDisplayValue() method / getDisplayValue()
    • getED() method / getED()
    • getReferenceTable() method / getReferenceTable() and getRefRecord()
    • getRefRecord() method / getReferenceTable() and getRefRecord()
    • nil() method / nil()
    • toString() method / toString()
  • GlideForm API
    • about / GlideForm (g_form)
    • messages, setting on form / Setting/clearing messages on the form and fields
    • messages, clearing within forms / Setting/clearing messages on the form and fields
    • messages, clearing within fields / Setting/clearing messages on the form and fields
    • messages, setting on fields / Setting/clearing messages on the form and fields
    • drop-down list fields / Dealing with drop-down list fields
    • values, obtaining on form / Getting and setting values on the form
    • values, setting on form / Getting and setting values on the form
    • field visibility, controlling / Controlling field visibility
    • fields, setting as mandatory / Setting fields mandatory and read-only
    • fields, setting as read-only / Setting fields mandatory and read-only
    • client-side form, submitting / Submitting a client-side form
    • checking, disabling of mandatory fields / Disabling checking for mandatory fields
  • GlideRecord / Client-side APIs, Server-side APIs
    • about / GlideRecord, GlideRecord
    • initialize() method / Initialize, initialize() and insert()
    • addQuery() method / addQuery()
    • addActiveQuery() method / addActiveQuery()
    • addNullQuery() method / addNullQuery() and addNotNullQuery()
    • addNotNullQuery() method / addNullQuery() and addNotNullQuery()
    • canRead() method / canRead(), canWrite(), canCreate(), and canDelete()
    • canWrite() method / canRead(), canWrite(), canCreate(), and canDelete()
    • canCreate() method / canRead(), canWrite(), canCreate(), and canDelete()
    • canDelete() method / canRead(), canWrite(), canCreate(), and canDelete()
    • deleteRecord() method / deleteRecord() and deleteMultiple()
    • deleteMultiple() method / deleteRecord() and deleteMultiple()
    • get() method / get()
    • getDisplayValue() method / getDisplayValue()
    • getValue() method / getValue() and getUniqueValue()
    • getUniqueValue() method / getValue() and getUniqueValue()
    • hasNext() method / hasNext()
    • insert() method / initialize() and insert()
    • next() method / next()
    • orderBy() method / orderBy() and orderByDesc()
    • orderByDesc() method / orderBy() and orderByDesc()
    • query() method / query()
    • setAbortAction() method / setAbortAction()
    • setLimit() method / setLimit()
    • setValue() method / setValue()
    • setWorkflow() method / setWorkflow()
    • update() method / update() and updateMultiple()
    • updateMultiple() method / update() and updateMultiple()
    • records, querying / Querying for one or more records
    • records, deleting / Deleting a record asynchronously
  • GlideRecord macros / GlideRecord macros
  • GlideSession / Server-side APIs
    • about / GlideSession
    • getClientData() method / getClientData() and putClientData()
    • putClientData() method / getClientData() and putClientData()
  • GlideSoft / Client-side versus server-side APIs
  • GlideSystem
    • about / GlideSystem
    • addErrorMessage() method / addErrorMessage() and addInfoMessage()
    • addInfoMessage() method / addErrorMessage() and addInfoMessage()
    • debug() method / debug()
    • eventQueue() method / eventQueue()
    • getProperty() method / getProperty()
    • getUser() method / getUser()
    • getUserID() method / getUserID()
    • hasRole() method / hasRole()
  • GlideUser
    • about / GlideUser
    • getPreference() method / getPreference() and savePreference()
    • savePreference() method / getPreference() and savePreference()
    • hasRole() method / hasRole()
    • isMemberOf() method / isMemberOf()
  • GlideUser (g_user)
    • about / GlideUser (g_user)
    • user details, obtaining / Getting user details
    • user permissions, checking / Checking user permissions
    • client data, obtaining / Getting client data
  • global UI scripts / UI scripts
  • groups
    • about / Groups and roles
  • gs / Server-side APIs
  • g_scratchpad / Display business rules and g_scratchpad, g_scratchpad

H

  • hasNext() method, GlideRecord
    • about / hasNext()
    • example usage / Example usage
  • hasRole() method, GlideSystem
    • about / hasRole()
    • example usage / Example usage
  • hasRole() method, GlideUser
    • example usage / Example usage
  • history
    • storing / History

I

  • initialize() method, GlideRecord
    • about / Initialize, initialize() and insert()
    • example usage / Example usage, Example usage
  • insert() method, GlideRecord
    • about / initialize() and insert()
    • example usage / Example usage
  • instance
    • branding / Branding your instance
  • Integrated development environment / Integrated development environment
  • isMemberOf() method, GlideUser
    • about / isMemberOf()
    • example usage / Example usage

J

  • JavaScript debugger
    • about / JavaScript debugger
    • interface / Debugger interface
    • breakpoints / Breakpoints
  • JavaScript Log
    • about / Client-side debugging
  • Jelly / Styling the CMS

L

  • legacy APIs / Server-side APIs
  • linting / Integrated development environment
  • list personalization / List personalization
  • lists
    • about / Lists and tables
  • List v2 plugin
    • versus List v3 plugin / List v2 versus List v3
  • List v3 rendering / List v3 rendering
  • list view / List view
  • logging
    • about / Logging

M

  • M2M table
    • creating / Creating a M2M table
  • many-to-many relationships
    • about / Many-to-many relationships in ServiceNow, Other M2M relationships
  • meeting widget
    • creating / Creating the meeting widget
    • aesthetic changes / Aesthetic changes
    • option schema / Option schema
  • method
    • about / The structure of an API class
  • modules
    • about / Important application menus and modules
  • Mozilla Rhino / Client-side versus server-side APIs
    • about / Server-side APIs

N

  • next() method, GlideRecord
    • about / next()
    • example usage / Example usage
  • nil() method, GlideElement
    • about / nil()
    • example usage / Example usage
  • non-global UI scripts / UI scripts
  • notification devices / Notification devices
  • notifications
    • about / Emails and notifications
    • demo / Demo

O

  • object
    • about / The structure of an API class
  • onCellEdit client scripts / onCellEdit
    • arguments / onCellEdit
  • onChange client scripts / onChange
  • one-to-many relationships
    • about / One-to-many relationships in ServiceNow
  • one-to-one relationships
    • enforcing / Enforcing one-to-one relationships
  • onLoad client scripts / onLoad
  • onSubmit client scripts / onSubmit
  • OOB scripts
    • modifying / How to modify OOB scripts
  • orderBy() method, GlideRecord
    • about / orderBy() and orderByDesc()
    • example usage / Example usage
  • orderByDesc() method, GlideRecord
    • about / orderBy() and orderByDesc()
    • example usage / Example usage

P

  • pages
    • styling / Styling pages and widgets
  • personalization / UI settings and personalization
    • examples / UI settings and personalization
  • preferences
    • in update sets / Preferences in update sets
  • primary key (PK)
    • about / One-to-many relationships in ServiceNow
  • putClientData() method, GlideSession
    • about / getClientData() and putClientData()
    • example usage / Example usage

Q

  • query() method, GlideRecord
    • about / query()
    • example usage / Example usage

R

  • reference
    • versus value / Reference versus value
  • reference field background color / Reference field background color
  • reference fields / Reference fields
  • reference qualifier condition / Adding a field
  • related lists / Related lists
  • Reverse if false tick-box / Reverse if false
  • roles
    • about / Groups and roles

S

  • savePreference() method, GlideUser
    • example usage / Example usage
  • scoped APIs / Server-side APIs
  • script auto-completion / Script auto-completion
  • script editor macros
    • about / Script editor macros
    • documentation macro / Documentation macro
    • for-loop macro / For-loop macro
    • GlideRecord macros / GlideRecord macros
    • demo / Demo
  • script includes
    • about / Script includes
  • scripting
    • in UI policies / Scripting in UI policies
    • about / To script, or not to script?
    • avoiding / To script, or not to script?
    • examples / To script, or not to script?
    • support scenarios / Where scripting is supported
  • scripting pro tips
    • about / Scripting pro tips
    • nested loops, avoiding / Avoiding nested loops
    • limit logging / Limit logging
  • scripts
    • necessary scripts, running / Running only necessary scripts
    • running, from server / Scripts from the server
  • script tree / Script tree
  • security / Security
  • server-side APIs
    • versus client-side APIs / Client-side versus server-side APIs
    • about / Server-side APIs, Server-side APIs
    • GlideAggregate / Server-side APIs
    • GlideDateTime / Server-side APIs
    • GlideDate / Server-side APIs
    • GlideRecord / Server-side APIs
    • GlideElement / Server-side APIs
    • gs / Server-side APIs
    • GlideSession / Server-side APIs
  • server-side debugging
    • about / Server-side debugging
    • reference, versus value / Reference versus value
    • debugging security / Debugging security
  • server-side GlideAjax
    • about / Server-side GlideAjax
  • server-side Glide classes
    • GlideRecord / GlideRecord
    • GlideElement / GlideElement
    • GlideDateTime / GlideDateTime
    • GlideSession / GlideSession
    • GlideSystem / GlideSystem
  • ServiceNow
    • versions / Versions
  • service portal UI
    • configuring / Configuring service portal UI
  • session debug logging / Logging
  • setAbortAction() method, GlideRecord
    • about / setAbortAction()
    • example usage / Example usage
  • setLimit() method, GlideRecord
    • about / setLimit()
    • example usage / Example usage
  • setters
    • using / Always use getters and setters
  • setValue() method, GlideRecord
    • about / setValue()
    • example usage / Example usage
  • setWorkflow() method, GlideRecord
    • about / setWorkflow()
    • example usage / Example usage
  • SLAs (Service Level Agreements) / SLAs
  • support scenarios, scripting
    • access controls / Access controls
    • business rules / Business rules
    • client scripts / Client scripts and catalog client scripts
    • catalog client scripts / Client scripts and catalog client scripts
    • condition builder / Condition builder (and the URL)
    • default value / Default value
    • script includes / Script includes
    • UI actions / UI actions
    • UI policies / UI policies and catalog UI policies
    • catalog UI policies / UI policies and catalog UI policies
    • UI scripts / UI scripts
    • workflow activities / Workflow activities

T

  • tables
    • about / Lists and tables
    • creating / Creating the table
    • fields, adding / Adding a field
  • task fields
    • about / Important task fields
    • Active / Active
    • Additional comments / Additional comments and work notes
    • Work notes / Additional comments and work notes
    • Assigned to / Assigned to and Assignment group
    • Assignment group / Assigned to and Assignment group
    • Created / Created, Created by, Updated, and Updated by
    • Created by / Created, Created by, Updated, and Updated by
    • Updated / Created, Created by, Updated, and Updated by
    • Updated by / Created, Created by, Updated, and Updated by
    • Short description / Description and short description
    • Description / Description and short description
    • Number / Number
    • State / State
    • Journal / Journals and the activity formatter
    • Activity formatter / Journals and the activity formatter
    • creating / Creating Task fields
  • task table
    • extending / Extending the task table
    • creating, considerations / Creating Task fields
  • technical best practices / Other technical best practices
  • toString() method, GlideElement
    • about / toString()
    • example usage / Example usage

U

  • UI-impacting system properties / UI-impacting system properties
  • UI15 version
    • versus UI16 version / UI15 versus UI16
  • UI15, and UI16
    • switching between / Switching between UI15 and UI16
  • UI policies
    • about / UI policies
    • catalog UI policies / Catalog UI policies
    • scripting functionality / Scripting in UI policies
    • converting, to data policies / Converting between data and UI policies, Demo
  • UI policy actions
    • about / UI policies
  • UI Policy Order
    • about / UI Policy Order
    • demo / Demo
  • UI scripts
    • about / UI scripts
    • global UI scripts / UI scripts
    • non-global UI scripts / UI scripts
  • UI settings / UI settings and personalization
  • update() method, GlideRecord
    • about / update() and updateMultiple()
    • example usage / Example usage
  • updateMultiple() method, GlideRecord
    • about / update() and updateMultiple()
    • example usage / Example usage
  • update set
    • creating / Creating an update set
  • update set selector / Update set selector
  • URLs
    • in service portal / URLs in the service portal
  • user
    • about / What is a user?
  • user accounts
    • about / What is a user?
  • user preferences
    • about / User preferences
    • example / User preferences
    • default preferences / Default preferences
    • scripting / Scripting user preferences
  • users
    • impersonating, for testing / Impersonating users for testing

V

  • value
    • versus reference / Reference versus value

W

  • War Room page
    • setting up / Setting up the War Room page
  • widgets
    • styling / Styling pages and widgets
    • troubleshooting / Troubleshooting widgets
  • workflow activities
    • about / Important workflow activities
    • Approval - Group / User and group approval
    • Approval - User / User and group approval
    • Approval Coordinator / Approval coordinator
    • If / If
    • Switch / Switch
    • Wait for Condition / Wait for Condition
    • Create Task / Create Task and Catalog Task
    • Catalog Task / Create Task and Catalog Task
    • Branch / Branch and Join
    • Join / Branch and Join
    • Return value / Return value
    • Run Script / Run Script
    • Set Values / Set Values
  • workflows
    • about / Workflows
    • pausing / Pausing workflows
  • Workflow Stages
    • about / Workflow Stages
    • demo / Demo