We have a new project (v8.0.10) that has the following requirement for a tag change log:
- Tag name
- Username of who made change
- Old value
- New value
This would be doing things like recording the old and new values of a setpoint, alarm limit, alarm enabled, etc… I’m expecting to have about 75-100 UDT instances which each could have 10-20 different parameters we would want to monitor. Basically, a lot of things.
It seems like the audit log would do this pretty well except for the old value. Is there a good way to record that value without doing some fancy querying to associate the previous new value as the old value for the latest record?
The other option that we were thinking of was to create a single tag UDT for each of the base tags that we expect (boolean, integer, float, string) that has a tag event script that will log all the information we need into a custom database table using a property change script. This would be for the purpose of only having to maintain a few scripts. These building block UDTs would then be used in the main UDTs instead of the normal float/int/boolean/etc. tags.
On a similar question, we have another requirement to record all of the setpoints at the end of the day and back them up. We would then create a daily report on those. Additionally, a user would be able to roll the setpoints back to those previous values. Are transaction groups the best option for that? I’m not excited about having to maintain a group that potentially has 2,000 individual tags in it.
Thank you in advance!