Email Notification Subject

snowuser111
Kilo Guru

Hi I am creating a email template where the Subject line should be as below but I am not getting the Item name.

Table Sysapproval_approver

Service Request REQxxxxx for "Item name" has been Approved

Email Script for Subject:

_________________________________________________________________________________

email.setSubject("Service Request " + $(sysapproval) + " " +"for" + " " + req + "has been approved");  

  var gr = new GlideRecord("sc_req_item");

  gr.addQuery("request", current.sys_id);

  gr.query();

while(gr.next())

{

  // template.print(gr.cat_item.getDisplayValue() + " ");

    var req = gr.cat_item.getDisplayValue();

    }

</mail script>

____________________________________________________________________________________


can anyone help where I am wrong in subject why isn't it retrieving the Item Name?


Thanks

1 ACCEPTED SOLUTION

Kalaiarasan Pus
Giga Sage

Not sure what exactly you are looking for but try the below and use the subject you want ...



<mail script>


var requestNumber = '';
var catalogName = '';
var ritmNumber = '';
var gr = new GlideRecord("sc_req_item");
gr.addQuery("sys_id", current.sysapproval);
gr.query();
if(gr.next())
  {
  catalogName = gr.cat_item.name.toString();
  requestNumber = gr.request.number.toString();
  ritmNumber = gr.number.toString();
}

email.setSubject("Service Request " + requestNumber + " " +"for" + " " + catalogName + " has been approved");
//email.setSubject("Service Request " + ritmNumber + " " +"for" + " " + catalogName + " has been approved");


</mail script>



Note : The template must be running on sysapproval_approver


View solution in original post

23 REPLIES 23

  no luck


Try following



  var req = "";


  var gr = new GlideRecord("sc_req_item");


  gr.addQuery("request", current.sys_id);


  gr.query();


  while(gr.next())


  {


      var req = gr.number ;


  }


gs.log("RITM Number:   "+ req) ;


email.setSubject("Service Request " + $(sysapproval) + " " +"for" + " " + req + "has been approved");


its undefined,


and also i wanted Item Name.


First check that sys_id is coming



  while(gr.next())


  {


      var req = gr.sys_id;


  }



...... And so the notification should be on Request table .


Kalaiarasan Pus
Giga Sage

Not sure what exactly you are looking for but try the below and use the subject you want ...



<mail script>


var requestNumber = '';
var catalogName = '';
var ritmNumber = '';
var gr = new GlideRecord("sc_req_item");
gr.addQuery("sys_id", current.sysapproval);
gr.query();
if(gr.next())
  {
  catalogName = gr.cat_item.name.toString();
  requestNumber = gr.request.number.toString();
  ritmNumber = gr.number.toString();
}

email.setSubject("Service Request " + requestNumber + " " +"for" + " " + catalogName + " has been approved");
//email.setSubject("Service Request " + ritmNumber + " " +"for" + " " + catalogName + " has been approved");


</mail script>



Note : The template must be running on sysapproval_approver