Built something you're proud of? Tell the story. A quick G2 review of App Engine or Build Agent helps other developers see what's possible on ServiceNow. Share your experience.

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

hvrdhn88
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".