How to get first array element

SNOW39
Tera Expert

I have the below code and i am unable to get the first array element

 

var idset = workflow.scratchpad.idvalue;
var idset2 = workflow.scratchpad.idvalue2;
var idset3 = workflow.scratchpad.idvalue3;
var idset4 = workflow.scratchpad.idvalue4;
var idset5 = workflow.scratchpad.idvalue5;
var arr = [];
arr.push(idset, idset2, idset3, idset4, idset5);

for (var i in arr) {
    var myObj = arr[i];
    var r = new sn_ws.RESTMessageV2('Cisco ISE', 'Get voucher details');
    r.setStringParameterNoEscape('id', myObj);
    var response = r.execute();
    var responseBody = response.getBody();
    var httpStatus = response.getStatusCode();
    var jsonObj = JSON.parse(responseBody);
    var UN = jsonObj.GuestUser.guestInfo.userName;
    var unarr = [];
    unarr.push(UN);
    gs.log(unarr+"unarr");
var x = unarr[0].toString();
     gs.log(x+"unarrx");
    
}

26 REPLIES 26

Yes it is.. 

if there is one element i am getting arr as

arr2d68be72-08b7-11ed-b93e-328fa1c8a142,,,,

 

Then only push in array if element is not empty or undefined, will save you a lot of trouble while fetching in loop

Best Regards
Aman Kumar

Done! Still no log from response

 

var idset = workflow.scratchpad.idvalue;
var idset2 = workflow.scratchpad.idvalue2;
var idset3 = workflow.scratchpad.idvalue3;
var idset4 = workflow.scratchpad.idvalue4;
var idset5 = workflow.scratchpad.idvalue5;
var arr = [idset, idset2, idset3, idset4, idset5];
var unarr = [];

for (var i in arr) {
    var myObj = arr[i];
    gs.info("myObj"+myObj);
    var r = new sn_ws.RESTMessageV2('Cisco ISE', 'Get voucher details');
    if(myobj!="undefined"){
    r.setStringParameterNoEscape('id', myObj);
    var response = r.execute();
    var responseBody = response.getBody();
    gs.log("response" + responseBody);
    var httpStatus = response.getStatusCode();
    gs.log("httpStatus" + httpStatus);
    var jsonObj = JSON.parse(responseBody);
    }
    var UN = jsonObj.GuestUser.guestInfo.userName;
     unarr.push(UN.toString());
    gs.log(unarr + "unarr");   
    gs.log(unarr[0]+ "unarrx");

}

Hi,

if your API itself is not working then possibly you don't have correct values in your workflow scratchpad variables

Did you verify that?

Regards
Ankur

Regards,
Ankur
Certified Technical Architect  ||  9x ServiceNow MVP  ||  ServiceNow Community Leader

Yes, 

log for arr:

arr2d68be72-08b7-11ed-b93e-328fa1c8a142,,,,

log for myobj

 

but no response log