Join the #BuildWithBuildAgent Challenge! Get recognized, earn exclusive swag, and inspire the ServiceNow Community with what you can build using Build Agent.  Join the Challenge.

Sys id displayed instead of Name in email notification

kun1
Tera Expert

Mail script:-

(function runMailScript(current, template, email, email_action, event) {

template.print(current.variables.property_authorization_card.Type+ '\n\n'+"<br/> Property card Details");

})(current, template, email, email_action, event);

 

here issue is it provide me the sys id of Type. How to populate name instead of sys id.

1 ACCEPTED SOLUTION

search on google , you will find plenty of reference regarding the style .

try with below code. 

 

(function runMailScript(current, template, email, email_action, event) {

 

var arr =[];

var variableArray = JSON.parse(current.variables.property_authorization_card);

for(var i=0; i < variableArray.length; i++) {
 

var gr = new GlideRecord('table name');

gr.addQuery('sys_id','IN',variableArray[i].Type);

gr.query();

gs.log('Row count'+ gr.getRowCount());

while(gr.next()){


arr.push(gr.name);

}

}

template.print(arr+ '\n\n'+"<br/> Property card Details");

})(current, template, email, email_action, event);

View solution in original post

26 REPLIES 26

Harsh Vardhan
Giga Patron

try now

 

(function runMailScript(current, template, email, email_action, event) {

template.print(current.variables.property_authorization_card.Type.getDisplayValue()+ '\n\n'+"<br/> Property card Details");

})(current, template, email, email_action, event);

after adding getdisplayvalue, it provide me "undefined".

Type field is a reference field ?

 

field name should be in small letter. 

 

(function runMailScript(current, template, email, email_action, event) {

template.print(current.variables.property_authorization_card.type.getDisplayValue()+ '\n\n'+"<br/> Property card Details");

})(current, template, email, email_action, event);

Type field is reference field and backend value is "Type".