Category:
Updated on: August 31, 2025  |  0

Server Side Scenarios 2 - Scheduled Jobs, Glide Aggregate

🔧 Server-Side Scripting: Examples & Scenarios


 

⏰ 3. Scheduled Jobs

Scheduled Script Executions automate backend maintenance.

3.1 Close Resolved Incidents after 30 days

 
var gr = new GlideRecord('incident'); gr.addQuery('state', 'Resolved'); gr.addQuery('sys_updated_on', '<=', gs.daysAgo(30)); gr.query(); while (gr.next()) { gr.state = 'Closed'; gr.update(); }

3.2 Send Monthly Report to Managers

 
var gr = new GlideRecord('sys_user'); gr.addQuery('roles', 'itil_manager'); gr.query(); while (gr.next()) { gs.eventQueue("monthly.report", gr, '', ''); }

📊 4. GlideAggregate (Reporting)

4.1 Count Active Incidents per Priority

 
var agg = new GlideAggregate('incident'); agg.addAggregate('COUNT'); agg.groupBy('priority'); agg.query(); while (agg.next()) { gs.info("Priority " + agg.priority + ": " + agg.getAggregate('COUNT')); }

4.2 Find Max Resolution Time

 
var agg = new GlideAggregate('incident'); agg.addAggregate('MAX', 'resolved_at'); agg.query(); if (agg.next()) { gs.info("Longest resolution took until: " + agg.getAggregate('MAX', 'resolved_at')); }

📩 5. Events & Notifications

5.1 Fire an Event when Incident Priority = 1

 
if (current.priority == 1) { gs.eventQueue("incident.critical", current, current.sys_id, gs.getUserID()); }

5.2 Event Script Action: Send Notification to On-Call Team

 
gs.addInfoMessage("Critical incident alert sent to On-Call Team!");

Comments

No comments yet.


Log in to post a comment