This short tutorial is not aimed at our expert builders but for those that may be starting their journey with Knack. When I started building in 2017 what seems obvious now was a mystery . I hope this helps someone setup a process for archiving or soft deleting records so that you don’t have to always give end users the “hard” delete option: Archive, Restore and Soft Delete - YouTube
This is a great video demonstrating key functionality. All types of apps can benefit from having a soft delete or archive option to empower both their live app users and back end data administrators. Thanks for sharing, Carl!
Hey thanks for the very informative video, however I was wondering if was possible to do an archive for one particular user where all the other users could still view the record ?
Obviously not sure what your specific use case. The method I described simply changes the value from yes to no and you are filtering based on that field. In this situation you can’t base it on a particular user.
How I’d get round this is to have two views on the same page. For example, if you have a table of customer details, copy it so you have an exact duplicate below. Amended the new tables data source and add a filter to only show active records.
Then on the page, add a page rule that hides / shows the new table based on a user role.
Send me a DM if you’d like to connect to explore.
Hi @CarlHolmes,
I thought much about you this morning… applying the Soft Delete mode to my new App.
Then I applied some changes that you might found interesting.
For UX considerations, it was not fine to add a Trash filter/button to the many pages targeted.
So I created a Trash page where I centralized in their respectives views the trashed records. And there the users can Restore the records, and the admins can also Delete them.
But for lean & clean App purposes I did not want the Trash to accumulate.
So I added an option to the Trash field: No, Yes, Empty.
And then I created a Trash Date field: current time.
Then I created an automated Task to take out the Trash (Empty), but for each record individually after 7 days. This is communicated in the description of the Trash page.
Live App view: when a user trashes a record, it stays 7 days in the trash before desapearing from the Trash.
Builder superadmin view: I know which records to delete (empty trash), and since they are not visible to the users, I can do it anytime and relax.
I find it to be a very good way of cleaning records.
oh and I forgot.
Because it happened to me importing contacts for a client, I recommend highly to put the view records filter to Trash “IS NOT” Yes.
Because when you import data usually there is no Trash field and it stays blank for all these records.
If the view records filter for Trash “IS” No, the records will not show in the view.
Well that was a trick before I added the Empty option to Trash. It would not work any more, and would show also the Empty records.
So let’s make it this way. And now the view records filter for Trash can be “IS” No.