Hey all wonderful AT peeps!
Quick question. I have to track updates, changes, and versioning to name a few things of assets.
I’d like to have a history that tracks the changes to each asset. I was thinking I could just use the existing “Asset Tracker” table I created, and just use the updated by and date fields, but that wouldn’t necessarily show the true update version, etc history that I want to be able to run reports, or even other team members to just view.
Would I create a separate table “Asset History”, or something like that, that would link to the “Asset Tracker” table? Just curious. Sort of like a drop-down of all the history for each Asset.
Does that make sense?
@Sean_Lake1 There is an update/change history already built into Airtable. Does that meet your needs? If you are on the free version, it is 2 weeks of revision history. Upgrading your workspace will increase the amount of revision history that you have. See the below post for more information on revisions and snapshot history:
@Sean_Lake1 If my above comment does not fit your use case, there is another solution. Here is an example Assets Table:
This table is an example. Each row represents an asset. If there is no primary asset linked, it is the primary asset. The only data stored for each asset in this example is a single line text called “Data”. In a real-life setup, there would be more fields, but this is just an example. With this table, there also needs to be a form view where most updates will happen, like so:
Note that the form does not include the primary name field. It only includes a primary Asset dropdown and any data fields.
Lastly, an automation needs to be set up. This automation should be setup with a trigger for “When a record matches conditions” like so:
Then, you need to add an action called “Update record” which will update the chosen record with all the data:
The ID comes from the Primary Asset field, and then the data is added based on its corresponding field. With this complete, turn on the automation and fill out the form a few times. A view can be created that groups based on Primary Asset, sorts based on modified time, and filters out any records that do not have the Primary Asset, resulting in something like this:
And the corresponding primary fields can be seen in another view that filters for the opposite (an empty Primary Asset):
Due to the automation, the primary assets stay updated, while giving you a revision history as records. The only thing you won’t have is modified by using this solution.
You could even take this setup one step farther and create a pre-filled form button for each asset that will automatically select the correct primary asset using this formula:
"LINK_HERE" & "?prefill_" & ENCODE_URL_COMPONENT("Primary Asset") & "=" & ENCODE_URL_COMPONENT(Name)
@Sean_Lake1 What’s interesting about this implementation is that if you choose to make add the record yourself without a form, and you simply make sure to add the primary field last once you are sure the changes should take, it actually shows who added it on the record. See below:
You can see that my
Test 6 update was added as a simple record rather than a form because it was last modified by
LU Send rather than
Anonymous. To make this a more viable solution, you may want to limit the Primary Asset Linked Record to your Primary Assets view like so:
This means that when I am selecting it from the grid view, I only see the primary assets rather than my history logs. Here is an example when creating my
Test 7 update:
I did have to change my filters slightly on the Primary Assets to hide any records that do not have a name as well, so that the current record that I am working on does not appear as a primary asset:
I will say, there are some gotchas with this solution:
I’ll keep thinking about whether or not there is a better solution. Ideally, the revision history would work as it resolves all of these gotchas without the overhead. However, this could work if you are willing to take that on.