[Date Prev] [Date Next] [Prev in Thread] [Next in Thread] [Date Index] [Thread Index]

Re: Code for pushing People changes to existing tickets etc... Is this needed?


I concur, the Data Wizard should be used for these updates.  However, there are still issues in 8.x where certain forms are missed.
We ended up writing an AI job to simulate the functions and update the missing forms.

Kind Regards,
Carl Wilson

On 21 Jan 2016 19:59, "Jarl Grøneng" <jarl.groneng@gmail.com> wrote:

Have you looked into the Data Wizard Console? You can change a persons name using this application.


2016-01-21 9:46 GMT+01:00 David Charters <david@charterstechnologies.com>:



So in the last six months I ran into a little house keeping bug in the People form (Now CTM:People). Let’s say someone gets married and there last name changes or after years of Remedy being its own source of truth you started using something like Active Directory to populate/update CTM:People , or for an unusual reason (since this one is rare) someone’s email changes. These changes might be pushed from something like AD or maybe they are manually changed directly in the CTM:People form, either way it didn’t matter.

What we found was that these changes did not propagate out to other forms like Incidents, Changes, Approvals, etc… If a Ticket was assigned to Linda Smith then her name is changed to Linda Jones in CTM:People the Assignee still says Linda Smith even though you changed her last name in people to Linda Jones, or let’s say Steve becomes Steven due to an AD update. There are several fields on CTM:People that might change for a good reason, yet only the new records (Incidents, Changes, Approvals, etc… ) going forward have the new data like name, email address, Manger etc…


So when my reporting guy is trying to run reports for all of Linda Smith’s ticket’s or Steven’s approvals but now their names are different he doesn’t get all of the data back, unless he changes the report or query in general. Let’s also say you have a reporting staff that does not want to have to adjust reports every time something like this changes (kind of can’t blame them).

In the system I was working with there were a ton of changes because they switched to having an external system set the CTM:People data and it didn’t use Nicknames only their legal names. So I had several hundred People records that related to over 100,000 rows (spanning Change, Incident, Problem, SLM etc…) where the name in the ticket no longer matches the name in CTM:People. Keep in mind their User ID which should be a Unique index did not change.

I don’t recall ever running into this before, so I assumed I was just missing something like running some kind of reconciliation job that didn’t used to exist. After all having people as relational items is relatively new OOB code, so I might have missed something. So first I of course read the docs again and then I called support. After 3 days back and forth they said nope there is nothing out of the box that will propagate this data. They said the is  fix is you don’t change the existing people data you create new people records (which by the way I don’t remember any such process in ITIL training). Tis would STILL leave the same gap however.

So after all of this the names are still different. So I ended up writing custom code to push all of these changes everywhere they needed to go, which was many many different places. I wrote code to change the existing disconnects and I used direct SQL so it would run much faster, allow me to modify closed tickets, and in general bypass any workflow that these updates might trigger. Using direct SQL straight into the database is something I always fear doing. It’s never a smart idea if you can avoid it. Since most them where not even linked back to People or User by a User ID or GUID of some sort, I couldn’t just change a User ID or GUID in each record, if Linda Smith was in 3 different places on the same form I had to change all of those fields on that form.


So based on this scenario I have 2 questions.

1.      Is there an “already built in way” that anyone knows of, that would automatically propagate these changes which support and I missed?

2.       If there isn’t a built in way that I missed, do you guys think it would be useful if I make the code I wrote more generic (based only on out of the box items) and published it to the communities? I just don’t want to do the work to make it generic if this isn’t an issue for anyone, lord knows I had never ran into it before and it was not a simple thing to fix. I feel like this should have been out of the box functionality for ITSM,SLM, etc but I couldn’t find it and I am happy to save anyone else the work if it’s needed.


Thank You,


David Charters

Charters Technologies


_ARSlist: "Where the Answers Are" and have been for 20 years_

_ARSlist: "Where the Answers Are" and have been for 20 years_
_ARSlist: "Where the Answers Are" and have been for 20 years_