Not working as expected

Sathwik1
Tera Expert

In portal, for a page under the "Can View" section, I mapped a user criteria for it.. and I used advance scripting over there.. and while testing I don't see logs are getting generated.. can anyone please help me to understand on why LOGS are not getting Generated? It makes me feel like user criteria it's self is not working..

answer = AccessValidation();

function AccessValidation() {
    var UserID = gs.getUserName();
    gs.info("Sathwik Entered");
    var gr = new GlideRecord('sys_user');
    gr.addEncodedQuery('user_name=' + UserID');
    gr.query();
    if (gr.next()) {
        gs.info("Sathwik found");
        return true;
    } else {
        gs.info("Sathwik not found");
        return false;
    }
}

@Ankur Bawiskar 

1 ACCEPTED SOLUTION

Ankur Bawiskar
Tera Patron
Tera Patron

@Sathwik1 

where did you add that? share screenshot

try this script

answer = AccessValidation();

function AccessValidation() {
    var gr = new GlideRecord('sys_user');
    gr.addEncodedQuery('sys_id=' + user_id);
    gr.query();
    if (gr.next()) {
        gs.info("Sathwik found");
        return true;
    } else {
        gs.info("Sathwik not found");
        return false;
    }
}

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

17 REPLIES 17

Robert H
Mega Sage

Hello @Sathwik1 

 

There is a syntax error in this line:

 

gr.addEncodedQuery('user_name=' + UserID');

 

remove the single quote character at the end:

 

gr.addEncodedQuery('user_name=' + UserID);

 

I also need to highlight that this script will always return true because it basically checks if the there is a record for the current user in the User table, which is always the case.

Maybe you can share what exactly your requirement it.

 

Regards,

Robert

syntaxs are already corrected, but still issue persits

Hello @Sathwik1 ,

 

Have you updated the System Property for enabling User Criteria in Service Portal, as described here?

Else your User Criteria would not be evaluated.

Also I need to highlight again that your current script will let everyone pass, always.

 

Regards,

Robert