The CreatorCon Call for Content is officially open! Get started here.

ATF - Retrieve output from "Create User" step in "Run Server Side Script" step

Leo Hordijk
Tera Contributor
 
Can't get this piece of code working. It goes wrong in retrieving the user from Create User step before. 
What do I do wrong? 

(
function(outputs, steps, stepResult, assertEqual) {
    var my_query_step_sys_id = "xxxxx";

    // retrieve user record 
    var usrGR = new GlideRecord("sys_user");
    var sys_id = steps(my_query_step_sys_id).user;
    usrGR.get(sys_id);
   
    if (usrGR.next()) {
        stepResult.setOutputMessage('Success retrieving user: ' + usrGR.sys_id);
        stepResult.setOutputMessage('Query step object: ' + JSON.stringify(steps(my_query_step_sys_id), null, 2));
        stepResult.setSuccess();
        //outputs.usr_sys_id = usr.sys_id;
        //outputs.record_id = usr.sys_id;
        return true;
    }

    stepResult.setOutputMessage('Failure retrieving user: ' + JSON.stringify(steps, null, 2));
    stepResult.setFailed();
    return false;

})(outputs, steps, stepResult, assertEqual);
 
1 ACCEPTED SOLUTION

Chidanand_VK
Mega Guru

Hi Leo, 

Use the below script it works.

 

(function(outputs, steps, stepResult, assertEqual) {
var my_query_step_sys_id = "xxxxx";

// retrieve user record
var usrGR = new GlideRecord("sys_user");
var sys_id = steps(my_query_step_sys_id).user;

if (usrGR.get(sys_id)) {
stepResult.setOutputMessage(
'Success retrieving user: ' + usrGR.getUniqueValue() +
'\nQuery step object: ' + JSON.stringify(steps(my_query_step_sys_id), null, 2)
);
stepResult.setSuccess();
// outputs.usr_sys_id = usrGR.getUniqueValue();
// outputs.record_id = usrGR.getUniqueValue();

return true;
}

stepResult.setOutputMessage('Failure retrieving user: ' + JSON.stringify(steps(my_query_step_sys_id), null, 2));
stepResult.setFailed();
return false;

})(outputs, steps, stepResult, assertEqual);

 

 

If my answer helped, please mark it as helpful or accept as the solution.

Regards,

Chidanand

View solution in original post

1 REPLY 1

Chidanand_VK
Mega Guru

Hi Leo, 

Use the below script it works.

 

(function(outputs, steps, stepResult, assertEqual) {
var my_query_step_sys_id = "xxxxx";

// retrieve user record
var usrGR = new GlideRecord("sys_user");
var sys_id = steps(my_query_step_sys_id).user;

if (usrGR.get(sys_id)) {
stepResult.setOutputMessage(
'Success retrieving user: ' + usrGR.getUniqueValue() +
'\nQuery step object: ' + JSON.stringify(steps(my_query_step_sys_id), null, 2)
);
stepResult.setSuccess();
// outputs.usr_sys_id = usrGR.getUniqueValue();
// outputs.record_id = usrGR.getUniqueValue();

return true;
}

stepResult.setOutputMessage('Failure retrieving user: ' + JSON.stringify(steps(my_query_step_sys_id), null, 2));
stepResult.setFailed();
return false;

})(outputs, steps, stepResult, assertEqual);

 

 

If my answer helped, please mark it as helpful or accept as the solution.

Regards,

Chidanand