
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎09-04-2020 02:06 AM
Hi
I have a multi row variable set and there is data in the columns. Does anyone have any idea how can i display that table in notification?
I am using email script wherein i am calling the variables via GlideAppVariablePoolQuestionSet, but unable to get the multi row variable?
Is there any way possible?
or may be some columns in it?
Solved! Go to Solution.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎09-14-2020 03:36 AM
that's correct.
If you are using any reference variable inside MRVS you will get sys_id and not the display value
you will have to query the reference table with that sys_id and get the display value.
Something like this
Updated in bold is the change
(function runMailScript( /* GlideRecord */ current, /* TemplatePrinter */ template,
/* Optional EmailOutbound */
email, /* Optional GlideRecord */ email_action,
/* Optional GlideRecord */
event) {
var req_id = current.sysapproval;
template.print('<p><span style="font-family: arial, helvetica, sans-serif; font-size: 10pt;"><strong>' + req_id.number + '</strong>');
template.print(' : ' + req_id.short_description + ' <br /> <br />');
//print variables
var set = new GlideappVariablePoolQuestionSet();
set.setRequestID(req_id);
set.load();
var vs = set.getFlatQuestions();
if (vs.size() > 0) {
template.print('<strong>Request Item Variables:</strong><br /><br />');
for (var i = 0; i < vs.size(); i++) {
var show_line = 'true';
if (vs.get(i).getLabel() == 'Line Manager Approval required?' || vs.get(i).getLabel() == 'Line Manager') {
show_line = 'false';
}
if (vs.get(i).getLabel() == 'AD Action') {
var ritmGR = new GlideRecord('sc_req_item');
if (ritmGR.get(req_id)) {
gs.log("Entered into the IF conditon of AD Action");
template.print('<table>');
template.print('<th>Name</th><th>Email</th><th>Department</th>');
var mrvs = ritmGR.variables.ad_management_multirow; //check and put correct name
var rowCount = mrvs.getRowCount();
gs.log("print mrvs " + mrvs);
gs.log("Row count of MRVS length " + rowCount);
for (var s = 0; s < rowCount; s++) {
var row = mvrs.getRow(s);
var displayDepartmentValue = getActualValue('cmn_department', row.user_department);
template.print("<tr>");
template.print("<td><center>" + row.user_name + "</center></td>"); //check fieldname
template.print("<td><left>" + row.user_email + "</left></td>"); //check fieldname
template.print("<td><left>" + displayDepartmentValue + "</left></td>"); //check fieldname
template.print("</tr>");
}
template.print('</table>');
}
}
if (vs.get(i).getLabel() != '' && vs.get(i).getLabel() != null && show_line == 'true' && vs.get(i).getDisplayValue() != '' && vs.get(i).getLabel() != 'AD Action') {
template.space(4);
template.print('<strong>' + vs.get(i).getLabel() + "</strong>: " + vs.get(i).getDisplayValue() + "<br />");
}
}
}
function getActualValue(table, value){
var gr = new GlideRecord(table);
gr.addQuery("sys_id", value);
gr.query();
if (gr.next()) {
return gr.getDisplayValue();
}
}
})(current, template, email, email_action, event);
Regards
Ankur
Ankur
✨ Certified Technical Architect || ✨ 9x ServiceNow MVP || ✨ ServiceNow Community Leader
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎09-14-2020 02:03 AM
please share your sample MRVS json string and the script you are trying
Regards
Ankur
Ankur
✨ Certified Technical Architect || ✨ 9x ServiceNow MVP || ✨ ServiceNow Community Leader

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎09-14-2020 02:16 AM
Hi, please find the script below -
(function runMailScript( /* GlideRecord */ current, /* TemplatePrinter */ template,
/* Optional EmailOutbound */
email, /* Optional GlideRecord */ email_action,
/* Optional GlideRecord */
event) {
var req_id = current.sysapproval;
template.print('<p><span style="font-family: arial, helvetica, sans-serif; font-size: 10pt;"><strong>' + req_id.number + '</strong>');
template.print(' : ' + req_id.short_description + ' <br /> <br />');
//print variables
var set = new GlideappVariablePoolQuestionSet();
set.setRequestID(req_id);
set.load();
var vs = set.getFlatQuestions();
if (vs.size() > 0) {
template.print('<strong>Request Item Variables:</strong><br /><br />');
for (var i = 0; i < vs.size(); i++) {
var show_line = 'true';
if (vs.get(i).getLabel() == 'Line Manager Approval required?' || vs.get(i).getLabel() == 'Line Manager') {
show_line = 'false';
}
if (vs.get(i).getLabel() == 'AD Action') {
var ritmGR = new GlideRecord('sc_req_item');
if (ritmGR.get(current.sys_id)) {
gs.log("Entered into the IF conditon of AD Action");
var mrvs = ritmGR.variables.ad_management_multirow; //check and put correct name
var rowCount = mrvs.getRowCount();
gs.log("print mrvs " + mrvs);
gs.log("Row count of MRVS length " + rowCount);
for (var s = 0; s < rowCount; s++) {
var row = mvrs.getRow(s);
template.print("<tr>");
template.print("<td><center>" + row.user_name + "</center></td>"); //check fieldname
template.print("<td><left>" + row.user_email + "</left></td>"); //check fieldname
template.print("<td><left>" + row.user_department + "</left></td>"); //check fieldname
template.print("</tr>");
}
}
}
if (vs.get(i).getLabel() != '' && vs.get(i).getLabel() != null && show_line == 'true' && vs.get(i).getDisplayValue() != '' && vs.get(i).getLabel() != 'AD Action') {
template.space(4);
template.print('<strong>' + vs.get(i).getLabel() + "</strong>: " + vs.get(i).getDisplayValue() + "<br />");
}
}
}
})(current, template, email, email_action, event);
I have been trying different things, this time it did not go into the if condition - Entered into the IF conditon of AD Action
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎09-14-2020 02:34 AM
please update code as below
use req_id to query
if (ritmGR.get(req_id)) {
Regards
Ankur
Ankur
✨ Certified Technical Architect || ✨ 9x ServiceNow MVP || ✨ ServiceNow Community Leader

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎09-14-2020 03:21 AM

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎09-14-2020 03:29 AM
Hello Chenab,
add <tr border=1> in your notification, then you will see a tabular format.
Mark the comment as helpful if it helps.