How to restrict a record producer available for only with the groups with the parent company as ABC

Sheetal18
Tera Contributor
 
13 REPLIES 13

Means you want to show the record producer to logged user if that user is member of that group right?

if yes then try below code

 

 

checkUsers(gs.getUserID());
function checkUsers(user){
    var userGrp = new GlideRecord('sys_user_group');
    userGrp.addEncodedQuery("u_par_company=ABC^active=true");
    userGrp.query();
    while (userGrp.next()){
        var grMember = new GlideRecord('sys_user_grmember');
        grMember.addQuery('group',userGrp.sys_id);
        grMember.addQuery('user',user);
        grMember.query();
        if(grMember.next){
          return true;
        }else {
          return false;
        }

    }

}

 

 

 

Declare the answer variable in your code 

 

still not working

There is no active field on group table so try the below code

checkUsers(gs.getUserID());
function checkUsers(user){
    var userGrp = new GlideRecord('sys_user_group');
    userGrp.addEncodedQuery("u_par_company=ABC");
    userGrp.query();
    while (userGrp.next()){
        var grMember = new GlideRecord('sys_user_grmember');
        grMember.addQuery('group',userGrp.sys_id);
        grMember.addQuery('user',user);
        grMember.query();
        if(grMember.next){
          return true;
        }else {
          return false;
        }

    }

}

Is company field on group table is refence filed? if it is reference field then add below query

userGrp.addEncodedQuery("u_par_company.name=ABC");