User Preference Settings

Hi, I have a problem regarding the preservation of user preference settings. Is there any way to preserve the user preference settings for any particular Itemtype even after that Itemtype is being modified. Though I have come up with a solution but I still need you to suggest me whether it would be appropriate or not. Can we add a server method for the event "OnBeforeUpdate" and "OnAfterUpdate" of Itemtype "Itemtype", where "OnBeforeUpdate" event will just store the required field value of Preferences for a particular Itemtype id to a Session state variable before the Itemtype is being updated and "OnAfterUpdate" event will just set the required field's value to the previous value stored in a Session state variable after the Itemtype is being updated? Can you please suggest anything on this problem?
  • Hello, We recommend against modifying core ItemTypes like ItemType. This kind of change especially is more tricky than just making sure the preferences aren't cleared. The reason the preferences are simply reset is to avoid the issue of needing to check every user's preferences and resolve any discrepancies that could exist between the old data model of the ItemType and the new one. Depending on the amount of users and the amount of relationships to that ItemType, it could become a very slow operation to save an ItemType. Chris
    Christopher Gillis Aras Labs Software Engineer
  • Hi, Thank you, for your reply. So, you mean to say that there is no other way to preserve the user preference settings, and if applied any custom method then it would slow down the whole operation. Is it right?
  • Hello, The Aras Innovator platform is flexible enough that I don't like saying there's no way to do something. With enough time to investigate, a solution that meets all of your business needs could certainly be designed. I could see a potential solution of using a scheduled event at end of the day to backup all user preferences, apply any queued changes to ItemTypes, and restore the user preferences after the ItemTypes have been updated. This would require custom functionality as well as a change to your business practices to ensure that ItemTypes don't get updated outside of this scheduled event. If you are an Aras subscriber, you can set up this kind of scheduled event using the Aras Scheduler Service. If you're not a subscriber, you could accomplish the same thing with the standard Windows Scheduler Service if you create a custom application. Chris
    Christopher Gillis Aras Labs Software Engineer