History of Changes

  • 1
  • 1
  • Question
  • Updated 11 months ago
  • Answered
I am working on building a new CRM and Project management application for my company. I am pretty far along but one of the features of our old system that everyone liked and we are trying to keep is the ability to track changes to records. In our current system, there is an automated "notes" section that gets updated whenever there is a change and it lists what user did what change. I was wondering if there was a way to get this functionality in Quickbase. I have attached a screen shot of what it looks like:
Photo of Justin Pauga

Justin Pauga

  • 390 Points 250 badge 2x thumb

Posted 11 months ago

  • 1
  • 1
Photo of Ⲇanom the ultimate (Dan Diebolt)

Ⲇanom the ultimate (Dan Diebolt), Champion

  • 26,572 Points 20k badge 2x thumb
With script it is possible to use a Text Append/Prepend Logging field to keep track of changes to other fields. Normally a logging field keeps track of changes to text input into the logging field. However, with script you can prevent human input into the logging field and instead arrange for other fields that are that are modified to be formatted and automatically inserted into the logging field.

There is actually a demo I created of this that if you are interested I will attempt to locate.

Found it here:

https://haversineconsulting.quickbase.com/db/bgcwm2m4g?a=dr&rid=305
(Edited)
Photo of Justin Pauga

Justin Pauga

  • 390 Points 250 badge 2x thumb
That looks like it will accomplish what I'm trying to achieve. Just a quick question for you. If I'm reading the code right then it will log the old value and the new value for each field. If a user makes a 3rd change, will that wipe out the initial value and just set the 2nd value equal to the old value and the 3rd value equal to the new value? Or will it keep a log of all changes?
Photo of Ⲇanom the ultimate (Dan Diebolt)

Ⲇanom the ultimate (Dan Diebolt), Champion

  • 26,572 Points 20k badge 2x thumb
The current log will get overwritten with he new changes if there are multiple changes during the time the form is open. You might have to adjust the logic if a user changes the field value back to the original value so that there is no new log generated.

This is just an example. If you wanted to you could detect a changed in a field value and use the logging field to scold the user for making a mistake or praise them correcting an error.
Photo of Ⲇanom the ultimate (Dan Diebolt)

Ⲇanom the ultimate (Dan Diebolt), Champion

  • 26,572 Points 20k badge 2x thumb
BTW, you can use a Service Worker to log any changes you make anywhere in the application. For example, you can log all changes to a form, report or web hook definition.  This is not an exaggeration - using a Service Worker is god mode for QuickBase.

The great part is that it works in all cases not just those few cases where you have "less than 10 fields to track".

Why bother with native Rube Goldberg Machine solutions which have arbitrary limitations and clunky setups when you can just use a Service Worker? Come on it is almost 2018!
Photo of QuickBaseCoach App Dev./Training

QuickBaseCoach App Dev./Training, Champion

  • 51,486 Points 50k badge 2x thumb
Justin,
You can do history logging natively without script.

If there are less than 10 fields to track, I suggest making an Action to Record the changes.

The technique is to make a Table called Change history with the fields

Related Parent
Field name
Old value
New value
Changed by

Make a relationship to the table you are trying to track

Setting up an Action is similar to setting up an email Notification.

Make an Action to Record when a certain field changes to write out a history log record. There is a limit of 10 Actions per Table.

Give it a try to get t(e first one done and post back if you have questions. Once you have the first Action done, you can copy i5 t9 make the 2nd one.