Background Script Scenario based interview questions.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
09-15-2024 06:09 AM
6)Use a background script to create 100 incidents with different short descriptions such as (test1, test2, …, test100).
var gr= new GlideRecord('incident');
for(i=1; i<=100;i++){
gr.initialize();
gr.short_description= "shortDescription" + i;
gr.insert();
}
gs.print("The new 100 record is crated");
7) Print the incident numbers updated last month using an array.
var Inc = [];
var gr = new GlideRecord("incident");
// Properly format the encoded query
gr.addEncodedQuery('sys_updated_onONLast month@javascript:gs.beginningOfLastMonth()@javascript:gs.endOfLastMonth()');
gr.query();
// Use a while loop to iterate over results
while (gr.next()) {
Inc.push(gr.getValue('number'));
}
// Print the collected incident numbers
gs.print("Incidents updated last month: " + Inc.join(', '));
😎 Print the incident numbers where the caller is marked as VIP or NULL VIP, without using an encoded query.
var gr = new GlideRecord("incident");
gr.addQuery('caller_id.vip','=', true);
gr.addQuery('caller_id.vip','!=',"");
gr.query();
gs.print(gr.getRowCount());
while(gr.next())
{
gs.print(gr.number);
}
9) Using a background script, how can you print duplicate records in the sys_user table?
var gaDupCheck1 = new GlideAggregate('sys_user');
gaDupCheck1.addQuery('active','true');
gaDupCheck1.addAggregate('COUNT', 'email');
gaDupCheck1.groupBy('email');
gaDupCheck1.addHaving('COUNT', '>', 1);
gaDupCheck1.query();
while (gaDupCheck1.next()) {
gs.print(gaDupCheck1.email);
}
10) Write a background script to resolve all low-priority incidents that are in the InProgress state,
// Create a new GlideRecord object for the incident table
var gr = new GlideRecord('incident');
// Add a query to find incidents that are In Progress and have low priority
gr.addEncodedQuery('state=2^priority=4'); // 'state=2' typically represents 'In Progress' and 'priority=3' typically represents 'Low'
// Query the records
gr.query();
// Loop through each record and update its state to Resolved
while (gr.next()) {
// Set the incident state to Resolved (assuming 'Resolved' has a value of 3)
gr.state = 4; // Update this value if your 'Resolved' state has a different value
// Optionally, set the resolution code and comments
gr.resolution_code = 'Resolved by Background Script'; // You can modify this as needed
// Update the record in the database
gr.update();
// Print the incident number for reference (optional)
gs.print('Resolved incident: ' + gr.number);
}
gs.print('All low-priority In Progress incidents have been resolved.');
- 2,466 Views