One of the steps in my company's release process is to delete the entire contents of SysLastValue. We had issues previously where a user had a personalization on a form where changes were made and those personalizations caused problems when the new code was deployed. Since clearing the usage data worked to resolve the problem, it became a regular part of our deployment process.
Of course the users aren't too happy that every time we release an update, they lose all of their personalizations. Now my company would like to take a more intelligent approach to this issue and drop the SysLastValue records only for objects that have been modified since the last release. Is this possible? When looking at rows in SysLastValue with a RecordType of UserSetup (29), there doesn't seem to be a good way to identify the parent object for which the change is being applied. It appears to me that the ElementName column can refer to a form or any form control. I can see the value column stores a container of nested containers and I can unpack that but I don't see anything in this container that tells me which form or object a particular user setup change belongs to.
Is what I'm trying to do even a good idea? If so, does anyone have guidance on how to identify what form a particular UserSetup record is referencing? Any feedback that I can take to our DevOps and Management would be greatly appreciated! Maybe there's a better way to handle this problem of potential issues around usage data and new released code?
*This post is locked for comments
I have the same question (0)