- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
09-28-2016 08:53 PM
Hi,
I have two grps one newly created as permission type grp(X) and another existing support type grp (Y).
The support type grp(Y) has 900 + users. I need all the members of Y grp to be copied to X grp through background script.
Can any one help us with the background script for this?
Solved! Go to Solution.
- Labels:
-
Scripting and Coding

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
09-28-2016 09:03 PM
var groupXid = 'sys_id_of_group_X';
var groupYid = 'sys_id_of_group_Y';
var newGr;
var gr = new GlideRecord('sys_user_grmember');
gr.addQuery('group', groupYid);
gr.query();
while (gr.next()) {
newGr = new GlideRecord('sys_user_grmember');
newGr.initialize();
newGr.group = groupXid;
newGr.user = gr.user;
newGr.insert();
}
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
02-15-2017 04:47 PM
above Script works great, except has a one small issue what if the member already exist in target / cop_to group (it will foce duplicate). Below script should address the issue
//sys_id of the group you are copying from
var copy_from = '287ebd7da9fe198100f92cc8d1d2154e';
//sys_id of the group you are copying to
var copy_to = '8cee8950db01320017c278eebf961993';
var grUser = new GlideRecord("sys_user_grmember");
grUser.addQuery("group", copy_from);
grUser.query();
while (grUser.next()) {
gs.log("Members Identified: " + grUser.user);
//Check if user already exist
var grUserExist = new GlideRecord("sys_user_grmember");
grUserExist.addQuery("user", grUser.user);
grUserExist.addQuery("group", copy_to);
grUserExist.query();
if (!grUserExist.next()) {
gs.log("Add Members: " + grUser.user);
var rec = new GlideRecord('sys_user_grmember');
rec.initialize();
rec.group = copy_to;
rec.user = grUser.user.sys_id;
rec.insert();
}
}