How to fetch specific field values from the output of Lookup Record(s) action through Scripts?

Sujitha5
Kilo Contributor

Hi 

I have created a custom action using the Flow Designer on my instance. I have used the Look Up Record(s) action to retrieve the list of records from the conditions that i have given. On next step i need those records from the 1st step to be ingested into 2nd step which is a Script Step.

For. eg I have 3 records as output from the Look up Records action and iterating the 3 records with a loop condition. Here I cannot fetch the specific fields from the output of the 1st record. The output records has data with integer, string and duration data type. u_corporate_account is the field that is present in the output.

(function execute(inputs, outputs) {
var inputArray = inputs.lookupRecords;                                         -------> Ingesting input records from the Lookup action
var corpName= inputs.currentAlertCorpName;
var resultant = [];
outputs.debugstr="go-";
for (var value in inputArray){
var corporate_account = value.u_corporate_account;                 
outputs.debugstr+="corp_account is "+corporate_account+" \n";                   -------> here received "Undefined" as output
if(corpName.startsWith(corporate_account)){
resultant.push(inputArray[value]);
}
}
})(inputs, outputs);

This is a piece of code that i used to debug. Can anyone help me how to fetch fields from the output records of the Look up Records step through the script.

1 ACCEPTED SOLUTION

Hi,

try this

you can iterate over using .next()

(function execute(inputs, outputs) {
var inputArray = inputs.lookupRecords.records;                               
var corpName= inputs.currentAlertCorpName;
var resultant = [];
outputs.debugstr="go-";
while(inputArray.next()){
var corporate_account = inputArray.u_corporate_account;                 
outputs.debugstr+="corp_account is "+corporate_account+" \n";      
if(corpName.startsWith(corporate_account)){
resultant.push(inputArray);
}
}
})(inputs, outputs);

Regards
Ankur

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

View solution in original post

16 REPLIES 16

What does var inputArray = inputs.lookupRecords.records;  what .records mean?

Hi,

what input you are sending to this custom action?

what is it's type?

please refer this link on something similar

How to loop through Flow Designer step result list in a script

Regards
Ankur

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

Inputs are from a table which has string, integer and duration data type values. I need to fetch one of the field value from the list of records from the Lookup records action.

Hi,

did you check the link I shared

Regards
Ankur

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

I dont see any links