- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-08-2022 08:45 AM
Here I'm using List collector variables to add users to multiple groups by using flow designer action (script)
I'm using below mentioned script in flow designer to add multiple multiple users to single group, It is working fine. But Now I want to add multiple users to multiple groups.
(function execute(inputs, outputs) {
// ... code ...
var users ; //Update users to the list collector variable name
var groupID; //Update group to the group reference variable name
users = inputs.RITM.variables.select_members_to_add_in_group;
groupID = inputs.RITM.variables.select_group_which_you_want_to_modify;
//Add users
var userArr = users.toString().split(',');
for(var i=0; i<userArr.length; i++) {
var memberRec = new GlideRecord('sys_user_grmember');
memberRec.addQuery('user', userArr[i]);
memberRec.addQuery('group', groupID);
memberRec.query();
if(!memberRec.next()) {
memberRec.initialize();
memberRec.user = userArr[i];
memberRec.group = groupID;
memberRec.insert();
}
}
})(inputs, outputs);
Solved! Go to Solution.
- Labels:
-
Service Catalog
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-08-2022 08:57 AM
Use below code:
(function execute(inputs, outputs) {
// ... code ...
var users ; //Update users to the list collector variable name
var groupID; //Update group to the group reference variable name (This should be q list collector field)
users = inputs.RITM.variables.select_members_to_add_in_group;
groupID = inputs.RITM.variables.select_group_which_you_want_to_modify;
//Add users
var userArr = users.toString().split(',');
var groupArr = groupID.toString().split(',');
for(var i=0; i<userArr.length; i++) {
for(var j=0; j<groupArr.length; j++){
var memberRec = new GlideRecord('sys_user_grmember');
memberRec.addQuery('user', userArr[i]);
memberRec.addQuery('group', groupArr[j]);
memberRec.query();
if(!memberRec.next()) {
memberRec.initialize();
memberRec.user = userArr[i];
memberRec.group = groupArr[j];
memberRec.insert();
}
}
}
})(inputs, outputs);
You can achieve this just by using For Each loops in flow itself if you are looking for easier option.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-08-2022 08:57 AM
Use below code:
(function execute(inputs, outputs) {
// ... code ...
var users ; //Update users to the list collector variable name
var groupID; //Update group to the group reference variable name (This should be q list collector field)
users = inputs.RITM.variables.select_members_to_add_in_group;
groupID = inputs.RITM.variables.select_group_which_you_want_to_modify;
//Add users
var userArr = users.toString().split(',');
var groupArr = groupID.toString().split(',');
for(var i=0; i<userArr.length; i++) {
for(var j=0; j<groupArr.length; j++){
var memberRec = new GlideRecord('sys_user_grmember');
memberRec.addQuery('user', userArr[i]);
memberRec.addQuery('group', groupArr[j]);
memberRec.query();
if(!memberRec.next()) {
memberRec.initialize();
memberRec.user = userArr[i];
memberRec.group = groupArr[j];
memberRec.insert();
}
}
}
})(inputs, outputs);
You can achieve this just by using For Each loops in flow itself if you are looking for easier option.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-08-2022 09:09 AM
Thanks for your quick response. It works for me.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-09-2023 10:40 PM
Hello Ravindranath,
I am trying to achieve this using flow but stucked in between. Could you please help me the steps how to add multiple users in multiple groups?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
10-28-2024 08:31 AM
Hey @Priyanshi04 Sorry for the late reply I was away from the community for a few months. Were you able to get this figured out?