SI.
NO Glide record Methods Description Syntax
Provides the ability to build a request, which
when executed, returns the rows from the
1 Add query specified table that match the request. abc.addQuery();
2 Add Active query Adds a filter to return active records. addActiveQuery(String query)
Adds an encoded query to other queries addEncodedQuery(String
3 Add Encoded query that may have been set. query)
Changes the domain used for the query
from the user's domain to the domain of the
provided GlideRecord.
addDomainQuery(Object
4 Add Domain query glideRecord)
The addExtraField() method allows you to
query dot-walked fields in a single database
request, rather than perform multiple
queries per dot-walked element in a form or
script (which requires multiple round trips to addExtraField(String
5 Add Extra field the database). dotWalkedField)
Adds a filter to return inactive records.
Inactive records have the active flag set to
false.
6 Add Inactive query addInactiveQuery()
Adds a filter to return records based on a
relationship in a related table.
For example, find all the users that are in
the database group (users via
sys_user_grmember table). Another
example would be find all problems that
have an assigned incident (problems via addJoinQuery(String table)
7 Add join query the incident.problem_id relationship).
Adds a filter to return records based on a
relationship in a related table.
For example, find all the users that are in
the database group (users via
sys_user_grmember table). Another
example would be find all problems that
have an assigned incident (problems via addJoinQuery(String table,
8 Add join query the incident.problem_id relationship). String primaryField)
Adds a filter to return records based on a
relationship in a related table.
For example, find all the users that are in
the database group (users via
sys_user_grmember table). Another
example would be find all problems that addJoinQuery(String table,
have an assigned incident (problems via String primaryField, String
9 Add join query the incident.problem_id relationship). joinTableField)
Adds a filter to return records where the addNotNullQuery(String
10 Add Notnull query specified field is not null. fieldName)
Adds a filter to return records where the
11 Add null query specified field is null. addNullQuery(String fieldName)
Provides atomic add and subtract
operations on a specified number field at
the database level for the current
GlideRecord object. addValue() changes
only take effect in the database after a
subsequent call to update() or insert(). If
insert() is called, the specified field is
initialized with the value parameter passed addValue(String field, Number
12 Add Value into addValue(). value)
Sets the values of the specified encoded
query terms and applies them to the current applyEncodedQuery(String
13 Apply Encoded query GlideRecord. queryString)
Applies a pre-defined
GlideDBFunctionBuilder object to a record.
Use the GlideDBFunctionBuilder scoped
class to define a function. After the function
is defined, use the addFunction(Object
function) method to apply the function to a addFunction(Object function)
14 Add function record.
Apply a template record from the Template
table [sys_template] to the current record. If
the specified template is not found, no
15 Apply Template action is taken. applyTemplate(String template)
Retrieves the number of rows (records) in
16 Get RowCount the current GlideRecord object. getRowCount();
Moves to the next record in the
GlideRecord.
Use this method to iterate through the
17 Next records returned by a GlideRecord query. next()
Determines if there are any more records in
18 Has next the GlideRecord. hasNext()
Enables or disables the update to the fields
sys_updated_by, sys_updated_on,
sys_mod_count, sys_created_by, and
sys_created_on. This is often used for
manually updating field values on a record
while leaving historical information
19 Auto sys field unchanged. autoSysFields(Boolean e)
Determines if the access control rules
(which includes the user's role) permit
20 Can create inserting new records in this table. canCreate()
Determines if the access control rules
(which includes the user's role) permit
21 Can write updates to records in this table. canWrite()
Determines if the Access Control Rules
(ACLs) permit reading records in this table.
This method evaluates all ACL types, such
as user roles, scripted ACLs, ACLs with
22 Can read scripted conditions, and so on. canRead()
Determines if the access control rules
(which includes the user's role) permit
23 Can delete deletion of records in this table. canDelete()
Determines whether any of the fields in the
24 Changes record have changed. changes()
Deletes all records that satisfy the query.
25 Delete Multiple This method does not delete attachments. deleteMultiple()
26 Delete Record Deletes a single record. deleteRecord()
Returns true if any record has a matching
value in the specified column. If found, it
also moves to the first record that matches,
essentially executing next() until the record find(String columnName, String
27 Find is returned. value)
Returns the specified record in the current
28 Get GlideRecord object. get(Object name, Object value)
Returns the dictionary attributes on the
29 GetAttribute specified field. getAttribute(String fieldName)
30 Get classDisplay value Returns the table's label. getClassDisplayValue()
Retrieves the display value for the current
record.
Display values are manipulated based on
the actual value in the database and user getDisplayValue(String
31 Get Display Value or system settings and preferences. fieldName)
Returns the element's descriptor.
32 Get ED getED()
Retrieves the GlideElement for a specified
33 Get Element field. getElement(String fieldName)
Retrieves the query condition of the current
34 Get Encoded query result set as an encoded query string. getEncodedQuery()
getLabel()
35 Get Label Retrieves the field's label.
36 Get Link Retrieves the link for the current record. getLink()
Retrieves the row number of the current
37 Get Location record within the table. getLocation()
Retrieves the plural label of the
GlideRecord table.
For example, if the table name is "Change
Request," this method returns "Change
38 GetPlural Requests." getplural()
Retrieves the field value for the display field
of the current record and adds escape
characters for use in Jelly scripts.
Note: For this method to work, a display
value must have been set on the
associated table. For information on how to
do this, see Select a field as the table
39 Get Escaped display display value. getEscapedDisplayValue()
Retrieves the class (table) name for the
40 Get Record className current record. getRecordClassName()
Retrieves a list of names and display values
of related lists associated with the current
41 Get Relatedlists GlideRecord. getRelatedLists()
Retrieves a list of names and display values
of tables that are referred to by the current
42 Get Relatedtables record. getRelatedTables()
Retrieves the row number set by
saveLocation() or setLocation().
To get the current row number, use
43 Get Row number getLocation(). getRowNumber()
Retrieves a Java ArrayList of fields in the
44 Get Fields current record. getFields()
Retrieves the table name associated with
45 Get Table Name this GlideRecord. getTableName()
Gets the primary key of the record, which is
usually the sys_id unless otherwise
46 Get Uniquevalue specified. getUniqueValue()
Retrieves the string value of a specified
47 Get Value field. getValue(String fieldName)
Creates an instance of the GlideRecord
48 Glide Record class for the specified table. GlideRecord(String tableName)
Determines if the current GlideRecord has
49 Has Attachments any attachments. hasAttachments()
Creates an empty record within the current
GlideRecord that is suitable for population
50 Intialize before an insert. initialize()
Inserts a new record with the field values
51 Insert that have been set for the current record. insert()
Inserts a new record and also inserts or
updates any related records with the
52 InsertWithReferences provided information insertWithReferences()
53 InstanceOf Checks a table for the type\class of table. instanceOf(String className)
Determines whether the current record has
54 Is NewRecord been inserted into the database. isNewRecord()
Determines if the current GlideRecord table
55 Is valid exists. isValid()
Determines if the specified field is defined
56 IsValidField in the current GlideRecord table. isValidField(String fieldName)
57 IsValidRecord Determines if the current record is valid. isValidRecord()
Creates a GlideRecord, sets the default
values for the fields, and assigns a unique
ID to the record.
58 IsNewRecord isnewRecord()
Moves to the next record in the
GlideRecord. Provides the same
functionality as next(), intended to be used
in cases where the GlideRecord has a
59 _Next column named next. _next()
Determines if an operation is insert, update,
or delete.
Knowing the operation enables using
current.operation() to make a generic
business rule which can handle each
60 Operation operation uniquely. operation()
Specifies a field name to use to order the
query set. To order by multiple fields, call
this method multiple times with different
61 OrderBy field values. orderBy(String fieldName)
Specifies the field to use to order the query
62 OrderByDesc set in descending order. orderByDesc(String, fieldName)
Runs a query against the table based on
the filters specified by query methods such
63 Query as addQuery() and addEncodedQuery(). query(String field, String value)
Runs a query against the table based on
the filters specified by query methods such
as addQuery() and addEncodedQuery().
This method is intended to be used on
tables in which there is a column named
"query", which might cause errors running _query(String field, String
64 _Query the query() method. value)
Used in domain-separated instances.
Similar to query(), runs the query against
the table based on the filters specified by queryNoDomain(String field,
addQuery() and addEncodedQuery(), but String value)
65 Query NoDomain ignores domains.
Sets the current record to be the record that
was saved with saveLocation(). If
saveLocation() has not been called, the
current record is set to the first record of
66 Restore Location the GlideRecord. restoreLocation()
Saves the current row number so you can
return to this location using the
67 Save Location restoreLocation() method. saveLocation()
Sets a flag to indicate if the next database
action (insert, update, delete) is to be setAbortAction(Boolean b)
68 SetAbortAction aborted.
Sets the specified field to the specified setDisplayValue(String name,
69 SetDisplayValue display value. Object value)
Updates the record even if fields have not
70 SetForceUpdate changed. setForceUpdate(Boolean force)
Sets the maximum number of records to
71 Set Limit return in the GlideRecord from a query. setLimit(Number limit)
Sets the current row location to the setLocation(Number
72 Set Location specified value. rowNumber)
Generates a new GUID and sets it as the
unique ID (sys_id) for the current record.
This function applies only to new records.
You cannot change the GUID for an
existing record.
73 SetNewGuid setNewGuid()
Generates a new GUID and sets it as the
unique ID for the current record, when
74 SetNewGuidValue inserting a new record. setNewGuidValue (String guid)
Enables or disables using the reference
field's display name when querying a setQueryReferences(Boolean
75 SetQueryReferences reference field. queryReferences)
Disables or enables the running of any
engines (approval rules / assignment rules)
Warning: Disabling the running of engines
can have a significant impact on your
ServiceNow® instance and how it operates.
Ensure that you thoroughly test this change
76 SetUseEngines before deploying it to production. setUseEngines(Boolean e)
Sets the specified field to the specified
value.
setValue(String name, Object
77 SetValue value)
Enables or disables the running of business
rules that might normally be triggered by
subsequent actions. If the e parameter is
set to false, an insert/update will not be
audited. Auditing only happens when the
parameter is set to true for a GlideRecord
78 SetWorkflow operation. setWorkflow(Boolean e)
Updates each GlideRecord in a stated
79 UpdateMultiple query with a specified set of changes. updateMultiple()
Updates a record and also inserts or
updates any related records with the updateWithReferences(Object
80 UpdateWithReferences information provided. reason)
Updates the GlideRecord with any changes
that have been made. If the record does not
81 Update exist, it is inserted. update(Object reason)
Example 1 Example 2 Example 3
var abc = new
var abc = new GlideRecord('incident'); GlideRecord('incident');
abc.addQuery('category','=','hardware'); var abc = new GlideRecord('incident'); abc.addQuery('description','START
abc.addQuery('priority','!=',1); abc.addQuery('category','!=','hardware'); SWITH','Hardware');
abc.query(); abc.query(); abc.query();
var count = abc.getRowCount(); var count = abc.getRowCount(); var count = abc.getRowCount();
gs.info(count); gs.info(count); gs.info(count);
var abc = new
var abc = new GlideRecord('incident'); GlideRecord('incident');
var xyz = abc.addActiveQuery(); abc.addActiveQuery();
var abc = new GlideRecord('incident'); xyz.addOrCondition('category','=','hardware') abc.addQuery('category','=','hardwa
abc.addActiveQuery(); ; re');
abc.query(); abc.query(); abc.query();
var count = abc.getRowCount(); var count = abc.getRowCount(); var count = abc.getRowCount();
gs.info(count); gs.info(count); gs.info(count);
var abc = new
var abc = new GlideRecord('incident'); var abc = new GlideRecord('problem'); GlideRecord('incident');
abc.addEncodedQuery('active=true^category= abc.addEncodedQuery('active=true^state=1 abc.addEncodedQuery('active!
hardware'); 01'); =true^category=software');
abc.query(); abc.query(); abc.query();
var count = abc.getRowCount(); var count = abc.getRowCount(); var count = abc.getRowCount();
gs.info(count); gs.info(count); gs.info(count);
var abc = new
var abc = new GlideRecord('incident'); GlideRecord('incident');
var xyz =abc.addInactiveQuery(); abc.addInactiveQuery();
var abc = new GlideRecord('incident'); xyz.addOrCondition('category','=','hardware') abc.addQuery('category','=','hardwa
abc.addInactiveQuery(); ; re');
abc.query(); abc.query(); abc.query();
var count = abc.getRowCount(); var count = abc.getRowCount(); var count = abc.getRowCount();
gs.info(count); gs.info(count); gs.info(count);
var a = new GlideRecord('problem');
var b = a.addJoinQuery('incident');
a.addQuery('active', 'false'); var prob = new GlideRecord('problem');
b.addCondition('active', 'true'); prob.addJoinQuery('incident');
a.query(); prob.query();
while (a.next()) {
gs.info(a.getValue('number')); gs.info ('problems that have associated
} incidents. ' + prob.getRowCount());
var problem = new GlideRecord('problem');
var incidentJoin =
problem.addJoinQuery('incident',
'opened_by');
problem.addQuery('active', 'true');
var pro = new GlideRecord('problem'); incidentJoin.addCondition('incident_state',
pro.addJoinQuery('incident', 'opened_by'); '6');
pro.query(); problem.query();
gs.info('problems that have incidents using the gs.info('Active problems linked to resolved
open_by field ' + pro.getRowCount()) incidents: ' + problem.getRowCount());
var incidentGr = new GlideRecord('incident');
incidentGr.addJoinQuery('problem',
var gr = new GlideRecord('problem'); 'caller_id', 'opened_by');
gr.addJoinQuery('incident', 'opened_by', incidentGr.query();
'caller_id');
gr.query(); if (incidentGr.hasNext()) {
gs.info('Incidents with associated
gs.info(' problems that have incidents problems: ' + incidentGr.getRowCount());
associated where the incident caller_id field } else {
value matches that of the problem opened_by gs.info('No incidents found ');
field.' + gr.getRowCount()); }
var abc = new
GlideRecord('problem');
var abc = new GlideRecord('incident'); var abc = new GlideRecord('incident'); abc.addNotNullQuery('assignment_
abc.addNotNullQuery('short_description'); abc.addNotNullQuery('assignment_group'); group');
abc.query(); abc.query(); abc.query();
var count = abc.getRowCount(); var count = abc.getRowCount(); var count = abc.getRowCount();
gs.info(count); gs.info(count); gs.info(count);
var xyz = new GlideRecord('incident');
xyz.addNullQuery('assigned_to');
xyz.query(); var xyz = new
while(xyz.next()) GlideRecord('problem');
{ var xyz = new GlideRecord('incident'); xyz.addNullQuery('assigned_group')
xyz.assigned_to = xyz.addNullQuery('assigned_group'); ;
'02826bf03710200044e0bfc8bcbe5d5e'; xyz.query(); xyz.query();
xyz.update(); var count = xyz.getRowCount(); var count = xyz.getRowCount();
} gs.info(count); gs.info(count);
var inc = new
GlideRecord('problem');
var inc = new GlideRecord('incident'); var inc = new GlideRecord('incident'); inc.addQuery('number',
inc.addQuery('number', 'INC0010066'); inc.addQuery('number', 'INC0010066'); 'PRB0000109');
inc.query(); inc.query(); inc.query();
while (inc.next()) { while (inc.next()) { while (inc.next()) {
inc.addValue('impact', 1); inc.addValue('urgency', 1); inc.addValue('urgency', -1);
inc.update(); inc.update(); inc.update();
} } }
function getOpenHighPriorityIncidents() { function getOpenHighPriorityProblems() {
var gr = new GlideRecord('incident'); var gr = new GlideRecord('problem');
gr.addQuery('priority', 1); gr.addQuery('priority', 1);
gr.addQuery('state', 1); gr.addQuery('state', 1);
gr.query(); gr.query();
return gr; return gr;
} }
var highPriorityIncidents = var highPriorityProblems =
getOpenHighPriorityIncidents(); getOpenHighPriorityProblems();
if (highPriorityIncidents.next() ){ if (highPriorityProblems.next() ){
gs.info('Incident number: ' + gs.info('Problem number: ' +
highPriorityIncidents.getValue('number')); highPriorityProblems.getValue('number'));
} else {
gs.info('No open high priority incidents } else {
found.'); gs.info('No open high priority Problems
} found.');
}
var rec1 = new GlideRecord("incident"); var rec1 = new GlideRecord("incident");
rec1.initialize(); rec1.initialize();
while(rec1.next()) while(rec1.next())
{ {
rec1.applyTemplate("my_incident_template"); rec1.applyTemplate("Major Incident");
rec1.setWorkflow(); rec1.setWorkflow();
rec1.insert(); rec1.insert();
} }
var abc = new
GlideRecord('incident');
var abc = new GlideRecord('incident'); var abc = new GlideRecord('incident'); abc.addQuery('description','ENDSS
abc.addQuery('category','!=','hardware'); abc.addQuery('category','=','software'); WITH','Hardware');
abc.query(); abc.query(); abc.query();
var count = abc.getRowCount(); var count = abc.getRowCount(); var count = abc.getRowCount();
gs.info(count); gs.info(count); gs.info(count);
var abc = new
GlideRecord('problem');
abc.addQuery('number',
var abc = new GlideRecord('incident'); 'PRB0000109');
abc.addQuery('number', 'INC0010066'); var abc = new GlideRecord('incident'); abc.query();
abc.query(); abc.addQuery('number', 'INC0010066'); while(abc.next())
while(abc.next()) abc.query(); {
{ if (abc.next()) { var des =
var des = abc.getValue('description'); abc.description = 'Software incident'; abc.getValue('description');
} abc.update(); }
gs.info(des); } gs.info(des);
var record = new GlideRecord('incident'); var record = new GlideRecord('problem');
record.query(); record.query();
if (record.hasNext()) { if (record.hasNext()) {
gs.info('Incident records.' + gs.info('problem records.' +
record.getRowCount()); record.getRowCount());
} else { } else {
gs.info('No incident records.'); gs.info('No problem records.');
} }
var a = new GlideRecord('incident'); var a = new GlideRecord('problem');
a.addQuery('category','=','hardware'); a.addQuery('category','=','hardware');
a.query(); a.query();
while(a.next()) while(a.next())
{ {
a.autoSysFields(false); a.autoSysFields(false);
} }
var a = new GlideRecord('incident'); var a = new GlideRecord('problem');
if(a.canCreate()) if(a.canCreate())
{ {
gs.info('The user can able to create'); gs.info('The user can able to create');
} }
else{ else{
gs.info('The user cannot able to create'); gs.info('The user cannot able to create');
} }
var a = new GlideRecord('incident'); var a = new GlideRecord('problem');
if(a.canWrite()) if(a.canWrite())
{ {
gs.info('The user can able to create'); gs.info('The user can able to create');
} }
else{ else{
gs.info('The user cannot able to create'); gs.info('The user cannot able to create');
} }
var a = new GlideRecord('incident'); var a = new GlideRecord('problem');
if(a.canRead()) if(a.canRead())
{ {
gs.info('The user can able to create'); gs.info('The user can able to create');
} }
else{ else{
gs.info('The user cannot able to create'); gs.info('The user cannot able to create');
} }
var a = new GlideRecord('incident'); var a = new GlideRecord('problem');
if(a.canDelete()) if(a.canDelete())
{ {
gs.info('The user can able to create'); gs.info('The user can able to create');
} }
else{ else{
gs.info('The user cannot able to create'); gs.info('The user cannot able to create');
} }
var a = new GlideRecord('incident'); var a = new GlideRecord('problem');
if(a.changes()) if(a.changes())
{ {
gs.info('The changes are made in the form'); gs.info('The changes are made in the form');
} }
else{ else{
gs.info('The changes are not made in the gs.info('The changes are not made in the
form'); form');
} }
var abc = new GlideRecord('incident');
abc.addQuery('short_description','STARTSWIT var abc = new GlideRecord('problem');
H','printer'); abc.addNullQuery('assigned_to');
abc.query(); abc.query();
abc.deleteMultiple(); abc.deleteMultiple();
var res = new GlideRecord('incident'); var res = new GlideRecord('problem');
res.addQuery('number','INC0010064'); res.addQuery('number','PRB0007601');
res.query(); res.query();
res.deleteRecord(); res.deleteRecord();
var res = new GlideRecord('incident'); var res = new GlideRecord('problem');
var des = 'Critical incident'; var des = 'Email';
res.query(); res.query();
if(res.find('description',des)) if(res.find('cmdb_ci',des))
{ {
gs.info('The record with critical incident is gs.info('The record with critical incident is
found'); found');
} }
else{ else{
gs.info('The record with critical incident is not gs.info('The record with critical incident is
found'); not found');
} }
var abc = new GlideRecord('incident'); var abc = new GlideRecord('problem');
abc.get('1f56326793ed0210045c393efaba105b abc.get('2b0e33df93210210045c393efaba10
'); 0d');
gs.info('Number:'+abc.number); gs.info('Number:'+abc.number);
gs.info('Short gs.info('Short
description'+abc.short_description); description'+abc.short_description);
var gr = new GlideRecord('problem');
var gr = new GlideRecord('incident'); gr.addQuery('priority', '=', 1);
gr.addQuery('priority', '=', 1); gr.query();
gr.query(); while (gr.next()) {
while (gr.next()) { var res =
var res = gr.number.getAttribute('ts_weight'); gr.number.getAttribute('ts_weight');
gs.info(res); gs.info(res);
} }
var res = new GlideRecord("incident"); var res = new GlideRecord('problem');
var value = res.getClassDisplayValue(); var value = res.getClassDisplayValue();
gs.info( value); gs.print(value);
var res = new GlideRecord('problem');
var res = new GlideRecord('incident'); res.get('number','PRB0040007');
res.get('number','INC0010066'); var a =
var a = res.getDisplayValue('category'); res.getDisplayValue('business_service');
gs.info(a); gs.info(a);
var abc = new GlideRecord('incident'); var abc = new GlideRecord('cmdb_ci');
var res = abc.getED(); var res = abc.getED();
gs.info(res); gs.info(res);
var res = new GlideRecord('incident'); var res = new GlideRecord('problem');
res.get('number','INC0010066'); res.get('number','PRB0007601');
var a = res.getElement('description'); var a = res.getElement('description');
res.query(); res.query();
gs.info(a); gs.info(a);
var abc = new GlideRecord('problem');
var abc = new GlideRecord('incident'); var a =
var a = abc.addQuery('category','=','hardware'); abc.addQuery('category','=','software');
a.addOrCondition('priority','=',1); a.addOrCondition('impact','=',1);
abc.query(); abc.query();
var res = abc.getEncodedQuery(); var res = abc.getEncodedQuery();
gs.info(res); gs.info(res);
var abc = new GlideRecord('incident'); var abc = new GlideRecord('problem');
abc.get('sys_id','1481a76e93610610045c393ef abc.get('sys_id','6230432073182300272866
aba1041'); 0c4cf6a7e8');
abc.query(); abc.query();
var res = abc.cmdb_ci.getLabel(); var res = abc.impact.getLabel();
gs.info(res); gs.info(res);
var abc = new GlideRecord('incident'); var abc = new GlideRecord('problem');
abc.addQuery('number','INC0010090'); abc.addQuery('number','PRB0040007');
abc.query(); abc.query();
while(abc.next()) while(abc.next())
{ {
var res = abc.getLink(); var res = abc.getLink();
gs.info(res); gs.info(res);
} }
var abc = new GlideRecord("incident"); var abc = new GlideRecord("problem");
abc.addQuery("priority", "1"); abc.addQuery("priority", "1");
abc.query(); abc.query();
for (x=0; x <4; x++) { for (x=0; x <4; x++) {
abc.next(); abc.next();
gs.print("Location value: " + gs.print("Location value: " +
abc.getLocation()); abc.getLocation());
} }
var abc = new GlideRecord('incident'); var abc = new GlideRecord('problem');
var res = abc.getPlural(); var res = abc.getPlural();
gs.info(res); gs.info(res);
var abc = new GlideRecord('incident'); var abc = new GlideRecord('problem');
var res = abc.getRecordClassName(); var res = abc.getRecordClassName();
gs.info(res); gs.info(res);
var gr = new GlideRecord('problem');
var gr = new GlideRecord('incident'); gr.addQuery('number', 'PRB0007601');
gr.addQuery('number','INC0010066'); gr.query();
gr.query(); var c =
var c = gr.getRelatedLists().values().toArray(); gr.getRelatedLists().values().toArray();
var numElements = c.length; var numElements = c.length;
for( var i = 0; i < numElements; ++i){ for( var i = 0; i < numElements; ++i){
gs.print(i+": "+c[i]); gs.print(i+": "+c[i]);
} }
var gr = new GlideRecord('incident'); var gr = new GlideRecord('problem');
gr.addQuery('number','INC0010066'); gr.addQuery('number', 'PRB0007601');
gr.query(); gr.query();
var c = var c =
gr.getRelatedTables().values().toArray(); gr.getRelatedTables().values().toArray();
var numElements = c.length; var numElements = c.length;
for( var i = 0; i < numElements; ++i){ for( var i = 0; i < numElements; ++i){
gs.print(i+": "+c[i]); gs.print(i+": "+c[i]);
} }
var record = new GlideRecord('incident');
var record = new GlideRecord('sys_user'); record.query();
record.addQuery();
record.query(); while (record.next()) {
record.saveLocation(5); var rowNum = record.getRowNumber();
var savedRow = record.getRowNumber(); gs.info('Row number: ' + rowNum);
gs.print("Saved row: " + savedRow); }
var abc = new GlideRecord('incident'); var abc = new GlideRecord('problem');
abc.addQuery('number','INC0000002'); abc.addQuery('number', 'PRB0007601');
abc.query(); abc.query();
if(abc.next()) if(abc.next())
{ {
var res = abc.getFields(); var res = abc.getFields();
gs.info(res); gs.info(res);
} }
var abc = new GlideRecord('incident'); var abc = new GlideRecord('cmdb_ci');
var res = abc.getTableName(); var res = abc.getTableName();
gs.info(res); gs.info(res);
var res = new GlideRecord('incident'); var res = new GlideRecord('problem');
res.addQuery('number', 'INC0010066'); res.addQuery('number', 'PRB0007601');
res.query(); res.query();
if (res.next()) { if (res.next()) {
var a = res.getUniqueValue(); var a = res.getUniqueValue();
} }
gs.info(a); gs.info(a);
var record = new GlideRecord('problem');
var record = new GlideRecord('incident'); record.get('number', 'PRB0007601');
record.get('number', 'INC0010066');
if (record.isValid()) {
if (record.isValid()) { var sd =
var sd = record.getValue('short_description'); record.getValue('short_description');
gs.info('Short Description: ' + sd); gs.info('Short Description: ' + sd);
} else { } else {
gs.info('No Incident'); gs.info('No Incident');
} }
var glideRecord = new
var glideRecord = new GlideRecord('incident'); GlideRecord('problem');
glideRecord.query(); glideRecord.query();
gs.info("Records in incident table: " + gs.info("Records in problem table: " +
glideRecord.getRowCount()); glideRecord.getRowCount());
var abc = new GlideRecord('incident'); var abc = new GlideRecord('incident');
abc.addQuery('number','INC0010066'); abc.addQuery('number', 'PRB0007601');
abc.query(); abc.query();
while(abc.next()) while(abc.next())
{ {
if(abc.hasAttachments()) if(abc.hasAttachments())
{ {
gs.print('The incident has Attachments'); gs.print('The problem has Attachments');
} }
else{ else{
gs.print('The incident has no Attachments'); gs.print('The problem has no Attachments');
} }
} }
var abc = new GlideRecord('incident'); var abc = new GlideRecord('problem');
abc.initialize(); abc.initialize();
abc.caller_id='62826bf03710200044e0bfc8bcb abc.first_reported_by_task='a9e9c33dc6112
e5df1'; 2760072455df62663d2';
abc.short_description='Microsoft word is not abc.short_description='Microsoft word is not
working'; working';
abc.assignment_group='477a05d153013010b8 abc.assignment_group='477a05d153013010
46ddeeff7b1225'; b846ddeeff7b1225';
abc.setWorkflow(); abc.setWorkflow();
abc.insert(); abc.insert();
var abc = new GlideRecord('incident'); var abc = new GlideRecord('problem');
abc.initialize(); abc.initialize();
abc.caller_id='62826bf03710200044e0bfc8bcb abc.first_reported_by_task='a9e9c33dc6112
e5df1'; 2760072455df62663d2';
abc.short_description='printer is not working'; abc.short_description='Microsoft word is not
abc.assignment_group='477a05d153013010b8 working';
46ddeeff7b1225'; abc.category='software';
abc.setWorkflow(); abc.setWorkflow();
abc.insert(); abc.insert();
var abc = new GlideRecord('problem');
abc.initialize();
var inc = new GlideRecord('incident'); abc.first_reported_by_task='a9e9c33dc6112
inc.initialize(); 2760072455df62663d2';
inc.short_description = 'printer is not working'; abc.short_description='Microsoft word is not
inc.caller_id.first_name = 'Abel'; working';
inc.caller_id.last_name = 'Tuter'; abc.category='software';
inc.setWorkflow(); abc.setWorkflow();
inc.insertWithReferences(); abc.insertWithReferences();
var abc = new GlideRecord('incident'); var abc = new GlideRecord('problem');
abc.addQuery('number','INC0010066'); abc.addQuery('number', 'PRB0007601');
abc.addQuery(); abc.addQuery();
if(abc.instanceOf('incident')) if(abc.instanceOf('problem'))
{ {
gs.info('Record is in incident'); gs.info('Record is in problem');
} }
else{ else{
gs.info('Record is not in incident'); gs.info('Record is not in problem');
} }
var abc = new GlideRecord('incident'); var abc = new GlideRecord('problem');
abc.addQuery('number','INC0010077'); abc.addQuery('number', 'PRB0007601');
abc.query(); abc.query();
if(abc.isNewRecord()) if(abc.isNewRecord())
{ {
gs.info('The incident is new Record'); gs.info('The problem is new Record');
} }
else{ else{
gs.info('The incident is not a new Record'); gs.info('The problem is not a new Record');
} }
var abc = new GlideRecord('incident');
abc.addQuery('numvar now_GR = new
GlideRecord("sys_user");
now_GR.newRecord();
now_GR.setValue("user_name", "John Smith");
gs.print("Is this a new record: " + var abc = new GlideRecord('problem');
now_GR.isNewRecord());ber','INC0010077'); abc.addQuery('number', 'PRB0007601');
abc.query(); abc.query();
if(abc.isValid()) if(abc.isValid())
{ {
gs.info('The Record is present'); gs.info('The Record is present');
} }
else{ else{
gs.info('The Record is not present'); gs.info('The Record is not present');
} }
var abc = new GlideRecord('problem');
var abc = new GlideRecord('incident'); if(abc.isValidField('category'))
if(abc.isValidField('category')) {
{ gs.info('The category is found in problem');
gs.info('The category is found in incident'); }
} else{
else{ gs.info('The category is not found in
gs.info('The category is not found in incident') problem')
} }
var abc = new GlideRecord('incident'); var abc = new GlideRecord('problem');
abc.addQuery('number','INC0010077'); abc.addQuery('number', 'PRB0007601');
abc.query(); abc.query();
if(abc.isValidRecord()) if(abc.isValidRecord())
{ {
gs.info('The Record is Valid'); gs.info('The Record is Valid');
} }
else{ else{
gs.info('The Record is not Valid'); gs.info('The Record is not Valid');
} }
var abc = new GlideRecord('incident');
abc.newRecord();
abc.setValue('short_description','Database is
var now_GR = new GlideRecord("sys_user"); not working');
now_GR.newRecord(); abc.setValue('caller_id','1730006793610210
now_GR.setValue("user_name", "John Smith"); 045c393efaba10cb');
gs.print("Is this a new record: " + gs.print('Is this a new Record:'+
now_GR.isNewRecord()); abc.isNewRecord());
var abc = new GlideRecord('incident'); var abc = new GlideRecord('problem');
abc.addQuery('number', 'INC0010066'); abc.addQuery('number', 'PRB0000109');
abc.query(); abc.query();
while(abc._next()) while(abc._next())
{ {
var des = abc.getValue('description'); var des = abc.getValue('description');
} }
gs.info(des); gs.info(des);
var record = new GlideRecord('incident');
var record = new GlideRecord('incident'); record.addQuery('number', 'INC0010077');
record.initialize(); record.query();
record.short_description = 'New Incident 7 if (record.next()) {
created using to test record operation'; record.description = 'This is a test problem
record.description = 'This is a test incident 6.'; 6.';
record.setWorkflow(); record.setWorkflow();
record.insert(); var updated = record.update();
if (updated) {
if (record.operation() == 'insert') { gs.info('Record was updated.');
gs.info('Record was inserted.'); } else {
} else { gs.info('Record was not updated.');
gs.info('Record was updated.'); }
} }
var gr = new GlideRecord('incident'); var gr = new GlideRecord('problem');
gr.orderBy('priority'); gr.orderBy('priority');
gr.query(); gr.query();
while (gr.next()) { while (gr.next()) {
gs.info('Incident Number: ' + gr.number + ', gs.info('Problem Number: ' + gr.number +
Priority: ' + gr.priority); ', Priority: ' + gr.priority);
} }
var gr = new GlideRecord('incident'); var gr = new GlideRecord('problem');
gr.orderByDesc('state'); gr.orderByDesc('impact');
gr.query(); gr.query();
while (gr.next()) { while (gr.next()) {
gs.info('Incident Number: ' + gr.number + ', gs.info('Incident Number: ' + gr.number +
State: ' + gr.state); ', Impact: ' + gr.impact);
} }
var abc = new GlideRecord('incident'); var abc = new GlideRecord('problem');
abc.addQuery('category','=','hardware'); abc.addQuery('category','=','software');
abc.addQuery('priority','=',1); abc.addQuery('priority','=',1);
abc.query(); abc.query();
while(abc.next()) while(abc.next())
{ {
gs.print('Incident number:'+abc.number); gs.print('Problem number:'+abc.number);
} }
var abc = new GlideRecord('incident'); var abc = new GlideRecord('problem');
abc.addQuery('category','=','hardware'); abc.addQuery('category','=','software');
abc.addQuery('priority','=',1); abc.addQuery('priority','=',1);
abc._query(); abc._query();
while(abc.next()) while(abc.next())
{ {
gs.print('Incident number:'+abc.number); gs.print('Problem number:'+abc.number);
} }
var abc = new GlideRecord('incident'); var abc = new GlideRecord('problem');
abc.addQuery('category','=','hardware'); abc.addQuery('category','=','software');
abc.addQuery('priority','=',1); abc.addQuery('priority','=',1);
abc.queryNoDomain(); abc.queryNoDomain();
while(abc.next()) while(abc.next())
{ {
gs.print('Incident number:'+abc.number); gs.print('Problem number:'+abc.number);
} }
var record = new GlideRecord('problem');
var record = new GlideRecord('incident'); record.addQuery('priority', '=', '1');
record.addQuery('priority', '=', '1'); record.query();
record.query(); var savedLocation = record.saveLocation();
var savedLocation = record.saveLocation(); record.restoreLocation(savedLocation);
record.restoreLocation(savedLocation); if (record.next()) {
if (record.next()) { gs.info('Restored: Problem Number: ' +
gs.info('Restored: Incident Number: ' + record.number + ', Priority: ' +
record.number + ', Priority: ' + record.priority); record.priority);
} else { } else {
gs.info('No incidents found after restoring gs.info('No problem found after restoring
location.'); location.');
} }
var record = new GlideRecord('problem');
var record = new GlideRecord('incident'); record.addQuery('priority', '=', '1');
record.addQuery('priority', '=', '1'); record.query();
record.query(); var savedLocation = record.saveLocation();
var savedLocation = record.saveLocation(); if (record.next()) {
if (record.next()) { gs.info('Problem Number: ' +
gs.info('Incident Number: ' + record.number record.number + ', Priority: ' +
+ ', Priority: ' + record.priority); record.priority);
} else { } else {
gs.info('No incidents found with priority 1.'); gs.info('No problem found with priority 1.');
} }
(function executeRule(current, previous /*null
when async*/) { (function executeRule(current, previous /*null
when async*/) {
if(current.category=='hardware')
{ if(current.description=='test')
current.setAbortAction(true); {
} current.setAbortAction(true);
else{ }
current.setAbortAction(false); else{
} current.setAbortAction(false);
}
})(current, previous); record not found');
} })(current, previous);
var abc = new GlideRecord('incident'); var abc = new GlideRecord('problem');
abc.addQuery('number','INC0010077'); abc.addQuery('number', 'PRB0000109');
abc.query(); abc.query();
while(abc.next()) while(abc.next())
{ {
abc.setDisplayValue('description','Example abc.setDisplayValue('description','Example
description'); description');
abc.update(); abc.update();
} }
var abc = new GlideRecord('incident'); var abc = new GlideRecord('problem');
abc.addQuery('category','hardware'); abc.addQuery('category','software');
abc.setLimit(5); abc.setLimit(5);
abc.query(); abc.query();
gs.info(abc.getRowCount()); gs.info(abc.getRowCount());
var rec = new GlideRecord('incident'); var rec = new GlideRecord('problem');
rec.addQuery('state', '2'); rec.addQuery('state', '2');
rec.setQueryReferences(true); rec.setQueryReferences(true);
rec.query(); rec.query();
while (rec.next()) { while (rec.next()) {
gs.info('Incident: ' + rec.number + ' Caller gs.info('Problem: ' + rec.number + ' Caller
Name: ' + rec.caller_id.getDisplayValue()); Name: ' + rec.caller_id.getDisplayValue());
} }
var record = new GlideRecord('incident'); var record = new GlideRecord('incident');
record.get('number', 'INC0010071'); record.get('number','PRB0000109');
if (record.isValid()) { if (record.isValid()) {
record.setValue('priority', '1'); record.setValue('priority', '1');
record.update(); record.update();
} }
gs.setUseEngines(false); gs.setUseEngines(false);
var abc = new GlideRecord('incident'); var abc = new GlideRecord('problem');
abc.addQuery('number','INC0010077'); abc.addQuery('number','PRB0000109');
abc.query(); abc.query();
while(abc.next()) while(abc.next())
{ {
abc.setValue('category','hardware'); abc.setValue('subcategory','keyboard');
abc.update(); abc.update();
} }
var abc = new GlideRecord('incident'); var abc = new GlideRecord('problem');
abc.initialize(); abc.initialize();
abc.caller_id='62826bf03710200044e0bfc8bcb abc.first_reported_by_task='a9e9c33dc6112
e5df1'; 2760072455df62663d2';
abc.short_description='printer is not working'; abc.short_description='Microsoft word is not
abc.assignment_group='477a05d153013010b8 working';
46ddeeff7b1225'; abc.category='software';
abc.setWorkflow(); abc.setWorkflow();
abc.insert(); abc.insert();
var abc = new GlideRecord('incident'); var abc = new GlideRecord('problem');
abc.addQuery('category', '=', 'hardware'); abc.addQuery('category', '=', 'hardware');
abc.addQuery('priority', '=', 1); abc.addQuery('priority', '=', 1);
abc.query(); abc.query();
while (abc.next()) { while (abc.next()) {
abc.assignment_group = abc.assignment_group =
"8a5055c9c61122780043563ef53438e3"; "8a5055c9c61122780043563ef53438e3";
abc.setWorkflow(); abc.setWorkflow();
abc.updateMultiple(); abc.updateMultiple();
} }
var xyz = new GlideRecord('incident'); var xyz = new GlideRecord('problem');
xyz.addQuery('number','INC0010077'); xyz.addQuery('number','PRB0040007');
xyz.query(); xyz.query();
while(xyz.next()) while(xyz.next())
{ {
xyz.caller_id.first_name='Melinda'; xyz.business_service='26da329f0a0a0bb400
xyz.caller_id.last_name='Carleton'; f69d8159bc753d';
xyz.updateWithReferences(); xyz.updateWithReferences();
} }
var abc = new GlideRecord('incident'); var abc = new GlideRecord('problem');
abc.addQuery('number','INC0010077'); abc.addQuery('number', 'PRB0000109');
abc.query(); abc.query();
while(abc.next()) while(abc.next())
{ {
abc.setDisplayValue('description','Example abc.setDisplayValue('description','Example
description'); description');
abc.update(); abc.update();
} }