I have an autosave form with autobiding. The downside is I cannot log changes easily because a new database change exists each time a field is updated. For example the form will have information about the name and date of birth of the user, phone numbers, addresses etc. And if I would use the database trigger event it would create tons of logs. Is there a way to perhaps gather some log that the user recently changed some data without having a multitude of logs and kind of cluster them into a single log?
So if I change my phone number, address and date of birth, i would like to get a single āuser updated personal profileā log.
Good question: itās an application page and the application can be quite long. The client wants to monitor activity of the applicant to evaluate the likelihood of the applicant completing the application and follow up with the applicant to close the deal.
In my opinion this should be done via a ācompleteness scoreā metric and not a log of changes being made.
As I understood your concept of logs of changes, you are essentially wanting to keep track of each change the user makes to their application, which could lead to a situation in which you log the fact the user changed their name 5 times.
Instead, based on the use case for the logs, you should attempt to get a sense of how much has the user filled in to lead to the idea of how likely are they to finish. This would use a ācompleteness scoreā in which you attribute point values or percentage values to each input of the application, so maybe Name is 5% and address is 5% etc.
When doing this there are various ways to do it. One way is to run a workflow that will use arbitrary text with format as text operators and a convert to number operator at the end. This would be arbitrary text, then inside of that a series of format as text operators like āname is empty:format as textā and if yes, put 5 and if no put 0 and then after that use the convert to number, followed by an addition operator and continue for each input until you basically have a calculation of the total points associated with all the filled in values.
Iām unsure but could you use a database trigger for when data changes create a new log? Personally never tried with auto binding but Iād assume it works.
Thanks for the suggestion. We actually arleady implemented a completeness score. On top of that, the log could help tracking recent activity vs. idle applications.
It does work, I am just worried as to this would be a smart move. It will create tons of logs. Iām trying to think of a way to cluster changes, say if you edited 10 datapoints under a minute, a single log would be enough.
I canāt think of a stable way to do that, time based will leave potential room for errors if they leave page. Your client will have to settle for button or trigger based
For something like this, what I do when the input is autobinding, and I need other actions to trigger when that input is modified, I just use the page workflow action of āwhen input value is changedā to trigger the workflow actions I want to runā¦but ultimately I donāt see much value in keeping track of the changes in a log the way the OP is asking about.