Background Script Output VP via Job Code

Evan Duran
Kilo Guru

I'm trying to gather users VP in their hierachy by going manager by manager until we find a job code of 11, then returning that value. I have an example going for me, but it isn't working.

 

var gr = new GlideRecord('incident');
gr.addEncodedQuery('state=2^assignment_group=c36b891cdbfb1b041eca3a92ba9619d6');
gr.query();

while(gr.next()) {

        // I need to get assigned_to.manager of each record from query
        var userGR = new GlideRecord('sys_user');
        var hrProfileGR = new GlideRecord('sn_hr_core_profile');
        var manager = '';
        var validJobGroup = false;
 
        if (userGR.get(user)) {
            manager = userGR.manager;
            while (!validJobGroup) {
                if (hrProfileGR.get('user', manager)) {
 
                     if (hrProfileGR.get('user', manager)) {
                        if (hrProfileGR.position.u_job_group == 11) {
                            validJobGroup = true;
                        } else {
                            manager = hrProfileGR.user.manager;

// need to return assigned to name along with their vp here
gs.info("gr.assignedto.toString() + VP.toString()); 
        
1 ACCEPTED SOLUTION

Here's one I got working

var gr = new GlideRecord('incident');
gr.addEncodedQuery('state=2^assignment_group=c36b891cdbfb1b041eca3a92ba9619d6');
gr.query();
 
while(gr.next()) {
           var user = gr.caller_id;      
           var validJobGroup = false;
           var manager = user.manager;
 
           while(manager.u_hr_profile.position.u_job_group != 11) {
            manager = manager.manager;
            if(manager.u_hr_profile.position.u_job_group == 11){
                gs.info(user.getDisplayValue() + ' ' + manager.getDisplayValue() + ' ' + manager.u_hr_profile.position.u_job_group);
            }
           }
}

View solution in original post

5 REPLIES 5

Here's one I got working

var gr = new GlideRecord('incident');
gr.addEncodedQuery('state=2^assignment_group=c36b891cdbfb1b041eca3a92ba9619d6');
gr.query();
 
while(gr.next()) {
           var user = gr.caller_id;      
           var validJobGroup = false;
           var manager = user.manager;
 
           while(manager.u_hr_profile.position.u_job_group != 11) {
            manager = manager.manager;
            if(manager.u_hr_profile.position.u_job_group == 11){
                gs.info(user.getDisplayValue() + ' ' + manager.getDisplayValue() + ' ' + manager.u_hr_profile.position.u_job_group);
            }
           }
}