Getting the logged in user
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
03-08-2017 01:04 PM
Hi Everyone,
I'm creating a widget and need to query a table we created that extends HR Case, but don't know how to set it to be the logged in user. For the HR Profile table, I know the code looks like this:
var gr = new GlideRecord('hr_profile');
gr.addQuery('user', gs.getUserID());
gr.query();
However, that obviously doesn't work for our table:
var hr = new GlideRecord('x_81991_hr_onboarding');
hr.addQuery('hr_profile', gs.getUserID());
hr.query();
What do I have to set hr_profile to in order for it to query the logged in user?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
03-08-2017 01:24 PM
Do you have any reference fields that are tied to the logged in user on your 'x_81991_hr_onboarding table? Like Opened For or Subject Person? Or is the linkage between that record's link to the hr_profile record? Out of the box, only specific roled users can query the hr_profile table anyway so querying through that table may be problematic.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
03-08-2017 01:29 PM
Hi Michael, there are other fields tied to sys_user such as Opened For and Caller. I have admin access to this instance so querying hr_profile shouldn't be a problem. Do you know how I can query hr_profile to set the current user equal to that field?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
03-08-2017 01:40 PM
OK. Yes you can but again ACLs may prevent non-admins from querying. But here is an example of doing it:
var hr = new GlideRecord('x_81991_hr_onboarding');
hr.addQuery('hr_profile.user', gs.getUserID());
hr.query();
As you can see in your addQuery statement you can "dot-walk" there as well. So in my example above it expects there to be a hr_profile field on your x_81991_hr_onboarding table (which if you extended hr_case should exist). Then there the HR Profile has a linkage to the user record via a field called user.