Join the #BuildWithBuildAgent Challenge! Get recognized, earn exclusive swag, and inspire the ServiceNow Community with what you can build using Build Agent.  Join the Challenge.

Flow designer remove user action not working

Burhan2
Tera Contributor

I have a flow where reqfor user should be automatically removed from group when requested. We have a list collector group field and when submitted reqfor user should be removed from the mentioned groups in that field . I created action for that but it seems deleteRecord() method is not working in flow...the script was working fine in workflow and user was getting removed.. I have also automation to Adduser and that is working correctly can nyone help me in this

Attaching script for removal from action.:-group.pngremove.png

(function execute(inputs, outputs) {
var req_for = inputs.Reqfor;
var team = inputs.Grouplist.toString().split(',');
var addorremove=inputs.AddorRemove;
if (addorremove == 'Add') {
    for (var i = 0; i < team.length; i++) {

        var grpMembr = new GlideRecord('sys_user_grmember');
        grpMembr.addQuery('group', team[i]);
        grpMembr.addQuery('user', "!=", req_for);
        grpMembr.query();
        while (grpMembr.next()) {
            grpMembr.initialize();
            grpMembr.group = team[i];
            grpMembr.user = req_for;
            grpMembr.insert();
        }

    }
}
else if (addorremove == 'Remove') {
   
        for (var i = 0; i < team.length; i++) {

        var grpMembr = new GlideRecord('sys_user_grmember');
        grpMembr.addQuery('group', team[i]);
        grpMembr.addQuery('user', "=", req_for);
        grpMembr.query();
        while (grpMembr.next()) {
        grpMembr.deleteRecord();
        }

   
}

    }


})(inputs, outputs);
1 ACCEPTED SOLUTION

@Burhan2 

Below is the working solution, user was part of 2 groups and flow ran and removed that user from those groups

flow remove user from group.gifflow remove user from group 1.gif

I believe I have provided enough guidance and responded to all your questions.

If my response helped please mark it correct and close the thread so that it benefits future readers.

Regards,
Ankur
✨ Certified Technical Architect  ||  ✨ 9x ServiceNow MVP  ||  ✨ ServiceNow Community Leader

View solution in original post

33 REPLIES 33

@Burhan2 

list collector will have multiple groups and user is only 1

Why it won't work?

It will work with this approach

1) get the catalog variable

2) use for each to iterate

3) within that for each use Delete record and you know which group it is and Reqfor you already know

Infact both can be handled using main flow without custom action

what's the challenge for this?

If my response helped please mark it correct and close the thread so that it benefits future readers.

Regards,
Ankur
✨ Certified Technical Architect  ||  ✨ 9x ServiceNow MVP  ||  ✨ ServiceNow Community Leader

ok let me try this and get back to you

 

I used for each in that i put the group list collector field then delete record the requestedfor name but i got this error @Ankur Bawiskar 

flow.pngflow1.pngflow2.png

@Burhan2 

you should be able to add it easily in For Each

please share the detailed steps of flow

If my response helped please mark it correct and close the thread so that it benefits future readers.

 

Regards,
Ankur
✨ Certified Technical Architect  ||  ✨ 9x ServiceNow MVP  ||  ✨ ServiceNow Community Leader

I am getting all catalog variables in 1st step only then i have if condition for removal in that iam appplying foreach and delete record in foreach i put the group list collector field and in delete i put the requestedfor name from trigger @Ankur Bawiskar flow3.png