Can Do records every action that changes data in the system. In this article I describe why this is so important, what you can do with it and what increasing importance this feature will get.
How does the history table work?
Every action of a user that changes data is recorded by Can Do or rather the history table. This change log is permanently linked to the respective object. Thus, for a work package, all changes are documented. This function cannot be switched off or manipulated.
If you now select a line in the project planner app and click the button for the history, the corresponding window opens immediately.
The date on which the action was performed is displayed. The "Level" field describes the significance or importance of this action. This rating is stored in the configuration for all actions and could also be changed. For example, the message service in Can Do, which informs about changes by mail, evaluates this field. This is followed by a description of what specifically was done (i.e. what data was changed) and the author of the action.
The entries created by the system cannot be changed or deleted. They therefore, and this is particularly significant, make the system "audit-proof". This means that no one can change the data in the system without being noticed. This is particularly crucial when, for example, a project audit is being carried out or the financial auditors are in the building.
The primary task is therefore to make transparent who created, deleted or changed what and when. But the history has many more functions:
Manual Entries
Manual entries can also be created in the history for each object. For example, to justify why one has moved a package. These entries can be entered either directly in the table or as a comment (for example in the project planner app).
The project log
All entries of the selected object are always displayed in the window. However, the "Project Log" button in the Project Planner app lists all history entries of all objects in the project
and sorts them by date. This is useful, for example, when the project manager returns from vacation and wants to know what has happened in the meantime.
The history and the messaging service
The various groups of users can be automatically informed of significant changes in the system by the integrated messaging service. This service accesses the history data. According to the entries a mail is triggered and the entries themselves are copied into the mail.
The undo function and history data
This function also uses the history data. With the Undo function, users select an element and simply press the Undo button. The last action in the history table is now "turned around" and executed. Because all actions are recorded in the history, an "endless" undo is possible, even for actions far back in the history table.
See this Article to learn how the Undo-Function works.
... and here is a more detailed article on the subject.
Usage statistics
For administrators there is an app that shows how active which users were in the system. This evaluation is of course also based on the history table.
Here is an article that describes this function
What's next?
The amount of data stored in the system in the history table is huge. There are installations with several million entries. In the idea list of the Can Do programming team, this table plays a role again and again, and we have the following topics directly in mind for upcoming versions of Can Do:
- Changed loading strategy of the history table when starting the server: Currently, all entries are uploaded, which takes a long time and requires a lot of memory in the server. We will optimize this.
- Anonymization as part of the GDPR apps. With these apps, the personal data is anonymized, i.e., the reference to the name is deleted. This is then the only app that allows history to be changed.
- We are constantly developing the capabilities of AI in Can Do. Of course, this "treasure trove" of data keeps falling into our hands, and sooner or later we will develop an AI that evaluates the history table.