How do I query sys_user table to get current logged in User's primary group

Sid_Takali
Kilo Patron
Kilo Patron

I want to get a current logged in user's primary assignment group. I have tried a following Script

 

var userName = gs.getUserID();
var gr = new GlideRecord("sys_user");
gr.addQuery('user_name', userName);
gr.query();
if (gr.next()) {
var grp = gr.primary_group;

}

2 REPLIES 2

Community Alums
Not applicable

Hi @Sid_Takali ,

Quick Point : User can be part of multiple group 

 

 checkGroup: function() {
        var currentUser = gs.getUser();

        if (currentUser.isMemberOf("Group Name")) {

            var gr = new GlideRecord('sys_user');

            gr.addActiveQuery('active=true'); // Filter to return active records.

            gr.query();

            while (gr.next()) {

                return gr.group.name; // Do you have Field called Group in User Table if yes return

return gr.group+"";
            }
        }
    }

Client Script : Onload:

   var ga = new GlideAjax('Display_Organization_fALU_fNokia');
    ga.addParam('sysparm_name', 'checkGroup');
    ga.getXML(groupName);


    function groupName(response) {

        var answer = response.responseXML.documentElement.getAttribute("answer");

alert(answer) - let me know what is in the alert
        g_form.setValue('organization',answer);

    }

 

BharathChintala
Mega Sage

@Sid_Takali script will change based on where you write it.

 

I hope you are writing this in ServerSide

mistake in your script is  getUserID will return sys_id.

so gr.addQuery('sys_id',userName);

 

Thanks,

Bharath

If my inputs have helped with your question, please mark my answer as accepted solution, and give a thumb up.
Bharath Chintala