Auditing (also known as the auditing trail) guarantees that all the operations on the database:
- Are performed in a non-destructive manner.
- This means that it is possible for a DBA to revert changes that have been made.
- Every change has indication of when that change was made and who did that change (if the user is known by the system).
- This means that you can see who did what and when.
Note that Orbeon Forms as of Orbeon Forms 2018.2 doesn't provide a user interface for this feature.
For auditing to work meaningfully, Form Runner needs to know who is presently using the application.
When you use a relational persistence layer:
- Every table has the following 4 columns:
createdtells you when given the data (e.g. attachment to a form for the
last_modifiedtells you when the data was last changed.
usernametells you who did that change.
deletedtells you if the data is marked as deleted, and hence invisible to users.
- Once a row is added to a column, it is never updated or deleted. Only new rows are added.
- When data is first added to a table,
last_modifiedhave the same value. Then, when this data is modified, another row is added:
createdis copied over and
last_modifiedis set to the current time stamp.
- When data is deleted by users, a new row is added. This row is a copy of the latest row for the data that is being deleted, except for
last_modifiedwhich is set to the current time stamp and
deletedwhich is set to