- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
07-16-2014 03:34 AM
Hi all,
Please see below for our 'Incident Escalated' e-mail, specifically the 'What will it contain' notification details:
* * *
<font face="Calibri">
The following incident has been set to escalated by ${sys_updated_by}:
Customer: ${caller_id}
Updated: ${sys_updated_on}
Priority: ${priority}
Assignment group: ${assignment_group}
Assigned to: ${assigned_to}
Click here to view the incident: ${URI_REF}
* * *
We just want to change this part: The following incident has been set to escalated by ${sys_updated_by}: so instead of showing the user ID of who last updated the record, it shows the name of who last updated it. We have tried dot walking using ${sys_updated_by.name}: but this is not working. I have since realised this is because it is not a reference field back to the sys_user table.
I understand this should be relatively simple so any assistance would be much appreciated.
Many thanks,
D
Solved! Go to Solution.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
07-16-2014 06:59 AM
Hi dasi,
I put in my reply that the script would return the UserID.
It depends what you want to display. If you want the name, you need to do a little more scripting, and use the mail script as proposed by Sanjeev Kumar above, edited to suit your needs. I've added comments in Blue.
- <mail_script>
- var userid = current.sys_updated_by; // Gets the User ID
- var gr = new GlideRecord('sys_user'); // Creates new GlideRecord Object
- gr.addQuery('user_name', userid); // Queries the table for the record of our user found in line 2
- gr.query();
- if (gr.next()) { // If it finds one....
- var userName = gr.name; // set the variable "username" as the users name.
- }
- template.print("Updated By: "+userName); // Print the text "Updated By:" and then the username variable from line 7.
- </mail_script>
Best to remove the comments before adding to your email. This has been tested and works fine on my instance.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
07-16-2014 08:12 AM
I have tested it and it works, but as you say, as it is a string, you should not even need the getDisplayValue() function appending.
IE -
<mail_script> template.print(current.sys_updated_by.getDisplayValue())</mail_script>
<mail_script> template.print(current.sys_updated_by)</mail_script>
...both return the userID of the user.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
07-16-2014 08:15 AM
Sweet. Thanks for the test. I would have just assumed in my ignorance that it would not work.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
07-16-2014 08:19 AM
Just incase anyone has read down here for the answer, the script in post 14 has been tested and works.
It prints the full name of the user who last updated the record.