Skip to content

Commit e55ee64

Browse files
authored
Create backgroundScriptManagerReassign.js
1 parent 91a5339 commit e55ee64

File tree

1 file changed

+52
-0
lines changed

1 file changed

+52
-0
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
var oldManagerSysId = '506c0f9cd7011200f2d224837e61030f'; // <Include sys id of old Manager >
2+
var newManagerSysId = '46c6f9efa9fe198101ddf5eed9adf6e7'; // <Include sys id of New Manager >
3+
4+
gs.print('========== MANAGER REASSIGNMENT FROM GROUP, USERS AND DEACTIVATE RETIRING MANAGER USER ID ==========');
5+
6+
// --- STEP 1: Update Groups managed by old manager ---
7+
var grpCount = 0;
8+
var grpGR = new GlideRecord('sys_user_group');
9+
grpGR.addQuery('manager', oldManagerSysId);
10+
grpGR.query();
11+
12+
gs.print('Checking groups managed by retiring manager...');
13+
while (grpGR.next()) {
14+
gs.print('➡️ Group: ' + grpGR.name + ' | Old Manager: ' + grpGR.manager.getDisplayValue());
15+
16+
grpGR.manager = newManagerSysId;
17+
grpGR.update();
18+
gs.print('✅ Group manager updated ');
19+
20+
grpCount++;
21+
}
22+
gs.print('Total groups updated: ' + grpCount);
23+
24+
// --- STEP 2: Update Users reporting to old manager ---
25+
var userCount = 0;
26+
var userGR = new GlideRecord('sys_user');
27+
userGR.addQuery('manager', oldManagerSysId);
28+
userGR.query();
29+
30+
gs.print('\ Checking users reporting to retiring manager...');
31+
while (userGR.next()) {
32+
gs.print('👤 User: ' + userGR.getDisplayValue('name') + ' | Current Manager: ' + userGR.manager.getDisplayValue());
33+
userGR.manager = newManagerSysId;
34+
userGR.update();
35+
gs.print('✅ User manager updated ');
36+
userCount++;
37+
}
38+
gs.print('Total users updated: ' + userCount);
39+
40+
// --- STEP 3: Deactivate old manager ---
41+
var mgrGR = new GlideRecord('sys_user');
42+
if (mgrGR.get(oldManagerSysId)) {
43+
gs.print('\n Retiring Manager: ' + mgrGR.getDisplayValue('name'));
44+
mgrGR.active = false;
45+
mgrGR.locked_out = true; // optional – prevents login
46+
mgrGR.update();
47+
gs.print('✅ Old manager deactivated and locked out.');
48+
} else {
49+
gs.print(' Could not find old manager record.');
50+
}
51+
52+
gs.print('\n========== PROCESS COMPLETE ==========');

0 commit comments

Comments
 (0)