- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎11-28-2017 02:44 AM
Hi,
We have catalog form and it has checkbox variables in it.
user while filling the form, he will select the required checkboxes, some of the checkboxes will remain un-checked.
Here requirement is to display the only checkbox variables which are checked or selected on the email notification template.
If user will not select any checkbox variable on the form, then it should not be displayed on the email notification template.
please help me how can I achieve this.
Thank you.
Solved! Go to Solution.
- Labels:
-
Scripting and Coding
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎11-28-2017 03:39 AM
Hi Ankur,
This is the code I have have been using in email script, But none of the check box variables are displaying in email notification.. even though they are true. please correct me if anything wrong this code.
Thank you.
template.print('<p>Roles that Should be Assigned to the Requested User:<br />');
var item = new GlideRecord("sc_req_item");
item.addQuery("request", current.sysapproval);
item.query();
while(item.next()) {
var keys = [];
var set = new GlideappVariablePoolQuestionSet();
set.setRequestID(item.sys_id);
set.load();
var vs = set.getFlatQuestions();
for (var i=0; i < vs.size(); i++) {
if(vs.get(i).getLabel() != '' && vs.get(i).getDisplayValue()!='' && vs.get(i).getDisplayValue().toString() != 'false') {
if(vs.get(i).getLabel() != "Requested for:" && vs.get(i).getLabel() != "Opened by:" && vs.get(i).getLabel() != "Approval for")
htmlContent += '<tr><td class="nameValue" width="30%">' + vs.get(i).getLabel() + ':<br><br></td><td width="60%" class="body_content" valign="top">' + vs.get(i).getDisplayValue() +'<br><br></td></tr>';
}
template.space(4);
template.print(' ' + vs.get(i).getLabel() + " = " + vs.get(i).getDisplayValue() + "<br />");
}
}
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎11-28-2017 02:47 AM
Hi Harish,
you need to write email notification script for this.
following link should be helpful which also has script:
Ignore any checkbox variable with a value of false in email Scripts
Mark Correct if this solves your issue and also hit Like and Helpful if you find my response worthy based on the impact.
Thanks
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
‎11-28-2017 02:55 AM
Thank you Ankur, I will check it and getback again.
Thanks
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎11-28-2017 03:39 AM
Hi Ankur,
This is the code I have have been using in email script, But none of the check box variables are displaying in email notification.. even though they are true. please correct me if anything wrong this code.
Thank you.
template.print('<p>Roles that Should be Assigned to the Requested User:<br />');
var item = new GlideRecord("sc_req_item");
item.addQuery("request", current.sysapproval);
item.query();
while(item.next()) {
var keys = [];
var set = new GlideappVariablePoolQuestionSet();
set.setRequestID(item.sys_id);
set.load();
var vs = set.getFlatQuestions();
for (var i=0; i < vs.size(); i++) {
if(vs.get(i).getLabel() != '' && vs.get(i).getDisplayValue()!='' && vs.get(i).getDisplayValue().toString() != 'false') {
if(vs.get(i).getLabel() != "Requested for:" && vs.get(i).getLabel() != "Opened by:" && vs.get(i).getLabel() != "Approval for")
htmlContent += '<tr><td class="nameValue" width="30%">' + vs.get(i).getLabel() + ':<br><br></td><td width="60%" class="body_content" valign="top">' + vs.get(i).getDisplayValue() +'<br><br></td></tr>';
}
template.space(4);
template.print(' ' + vs.get(i).getLabel() + " = " + vs.get(i).getDisplayValue() + "<br />");
}
}
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎11-28-2017 03:48 AM
Hi Harish,
Did you check by adding log statements in the code?
First run the script in background and check whether variables with true are coming or not.
Regards
Ankur
Ankur
✨ Certified Technical Architect || ✨ 9x ServiceNow MVP || ✨ ServiceNow Community Leader