- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎09-09-2018 02:28 PM
How to get current loggedin user's manager name and email id?
Solved! Go to Solution.
- Labels:
-
Scripting and Coding

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎06-18-2022 03:54 AM
Hi,
If it's absolutely necessary to create a client script, following will get current user's manager's info.
Client script
function onLoad() {
var ajax = new GlideAjax('UserUtilClient');
ajax.addParam('sysparm_name', 'getManagerInfo');
ajax.getXMLAnswer(function(answer) {
if (answer.length > 0) {
var json = JSON.parse(answer);
g_form.setValue('manager_name', json.name);
g_form.setValue('manager_email', json.email);
}
});
}
Script include
var UserUtilClient = Class.create();
UserUtilClient.prototype = Object.extendsObject(AbstractAjaxProcessor, {
getManagerInfo: function() {
var grUser = new GlideRecord('sys_user');
if (grUser.get(gs.getUserID())) {
var manager = grUser.manager;
if (manager) {
return JSON.stringify({
"name": manager.name.toString(),
"email": manager.email.toString()
});
}
}
},
type: 'UserUtilClient'
});
The result is a same as when using default value. This is a little bit slower because the form is loaded and then the form makes an ajax request to the server to get manager's information. When setting the default value, manager's name and email is filled when before the form is loaded so there's no ajax call after the form is loaded.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎06-18-2022 12:26 AM
client Script

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎06-20-2022 06:08 AM
Hi,
Please create a new question and let's discuss there?
Please consider marking my reply as Helpful and/or Accept Solution, if applicable. Thanks!

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎06-18-2022 03:28 AM
Hi,
If the question is about getting the current user's manager's name and email in a form, there's no need to use client script.
Default value on a field may be set to get manager's name and email address.
1. Manager's name.
Type: Single Line Text
Default value:javascript:var gr=new GlideRecord('sys_user');gr.get(gs.getUserID());gr.manager.name;
2. Manager's email.
Type: Email
Default value:javascript:var gr=new GlideRecord('sys_user');gr.get(gs.getUserID());gr.manager.email;
Execution result sample. I've set my manager to be Abel Tuter.

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎06-18-2022 03:54 AM
Hi,
If it's absolutely necessary to create a client script, following will get current user's manager's info.
Client script
function onLoad() {
var ajax = new GlideAjax('UserUtilClient');
ajax.addParam('sysparm_name', 'getManagerInfo');
ajax.getXMLAnswer(function(answer) {
if (answer.length > 0) {
var json = JSON.parse(answer);
g_form.setValue('manager_name', json.name);
g_form.setValue('manager_email', json.email);
}
});
}
Script include
var UserUtilClient = Class.create();
UserUtilClient.prototype = Object.extendsObject(AbstractAjaxProcessor, {
getManagerInfo: function() {
var grUser = new GlideRecord('sys_user');
if (grUser.get(gs.getUserID())) {
var manager = grUser.manager;
if (manager) {
return JSON.stringify({
"name": manager.name.toString(),
"email": manager.email.toString()
});
}
}
},
type: 'UserUtilClient'
});
The result is a same as when using default value. This is a little bit slower because the form is loaded and then the form makes an ajax request to the server to get manager's information. When setting the default value, manager's name and email is filled when before the form is loaded so there's no ajax call after the form is loaded.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎06-20-2022 11:40 AM
I actually needed it for a validation and it worked, thank you