Skip to content

Commit 7e116f1

Browse files
script.js
1 parent 2aa679b commit 7e116f1

File tree

1 file changed

+40
-0
lines changed
  • Server-Side Components/Background Scripts/Reassign Tasks When Assigned User Is Inactive

1 file changed

+40
-0
lines changed
Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
(function() {
2+
3+
var reassignedCount = 0;
4+
var userGR = new GlideRecord('sys_user');
5+
userGR.addQuery('active', false); // inactive users only
6+
userGR.query();
7+
8+
while (userGR.next()) {
9+
var inactiveUser = userGR.getDisplayValue('name');
10+
var manager = userGR.manager; // reference field
11+
12+
// Reassign incidents
13+
var taskGR = new GlideRecord('task');
14+
taskGR.addQuery('assigned_to', userGR.sys_id);
15+
taskGR.addQuery('state', '!=', 3); // not closed
16+
taskGR.query();
17+
18+
var taskCount = 0;
19+
while (taskGR.next()) {
20+
taskCount++;
21+
22+
if (manager) {
23+
taskGR.assigned_to = manager; // assign to manager
24+
} else {
25+
taskGR.assignment_group = 'Any_Group_Sys_ID'; // fallback
26+
taskGR.assigned_to = ''; // clear user field
27+
}
28+
29+
taskGR.work_notes = "Auto reassigned because previous assignee (" + inactiveUser + ") is inactive.";
30+
taskGR.update();
31+
}
32+
33+
if (taskCount > 0) {
34+
reassignedCount += taskCount;
35+
gs.info("Reassigned " + taskCount + " tasks from inactive user: " + inactiveUser);
36+
}
37+
}
38+
//gs.info("Total tasks reassigned: " + reassignedCount);
39+
40+
})();

0 commit comments

Comments
 (0)