Looking for way to identify when a customer or admin updates an incident ticket

Justin Gesling
Tera Contributor

Good Morning!

 

I am looking to have the functionality where any customer or admin update to a ticket creates a flag or updates a field. The "Updated" field is close, however it also takes into consideration when the system updates an incident ticket for whatever reason.

 

I previously used BMC Remedy, and it had an ability to put an asterisk (was it's own field) on a ticket (viewable in list view) when the above occurred. This way, we can cut through the 1600+ tickets we monitor and see only the tickets where something new is posted from a human source.

 

Are there any ideas on how to create this? I asked our ServiceNow contracting group to possible re-create the "Updated" field but not allow the system updates to register. I was told this would create too much of a load on the system.

1 ACCEPTED SOLUTION

DrewW
Mega Sage
Mega Sage

We added the following to the task table

Last Assigned to Update - Shows date/time that the person listed in the assigned to field updated the record interactivly.

  BR Condition: gs.isInteractive() && gs.getUserID() == current.getValue("assigned_to")

  Script: current.setValue("u_last_assigned_to_update", new GlideDateTime());

 

Last Interactive Update - Shows the date/time that a person updated the record.

  BR Condition: gs.isInteractive()

  Script: current.setValue("u_last_interactive_update", new GlideDateTime());

 

That should allow you to do the reporting you are looking for.

View solution in original post

6 REPLIES 6

DrewW
Mega Sage
Mega Sage

We added the following to the task table

Last Assigned to Update - Shows date/time that the person listed in the assigned to field updated the record interactivly.

  BR Condition: gs.isInteractive() && gs.getUserID() == current.getValue("assigned_to")

  Script: current.setValue("u_last_assigned_to_update", new GlideDateTime());

 

Last Interactive Update - Shows the date/time that a person updated the record.

  BR Condition: gs.isInteractive()

  Script: current.setValue("u_last_interactive_update", new GlideDateTime());

 

That should allow you to do the reporting you are looking for.

Gave this to the admin I was working with. He said it might be possible, so we're going to try.

 

Is there a way to combine into one field/value? Just curious...

Yes but it depends on what reporting you want to get out of it.  We wanted to know when a record was updated by a human and also when the assigned to updated the record last so we could pester the assigned to to update their records more often than once a month.  If all you care about is a human updating the record then just use the Last Interactive Update field code and call it whatever you want.

 

So, the code works as the field updates anytime a logged in user updates the record.

 

This is a good step forward, but I'd like to know if emails can also update the value? The goal here would be if the customer responds (which would be via email if external...internal would just update the record) to also update that field. is there something additional we can put in the script?