I don’t have a particular need for this feature…yet…but I think it would be useful to be able to pick a date column in a table and have it drive an automated process to automatically delete the row if the date in that column is so many days older than today’s date.
Much like how you can select row owner columns or protected columns, you could designate an ‘Expire’ column with an option to choose how many days a row can exist before it expires and automatically deletes that row.
For example, if you designate 30 days as the number of days before a row expires, then after 30 days, the Glide system will automatically delete the row. If a row contains an empty date, then it could be set up so the row never expires and never deletes.
I think it would be reasonable for this process to compare dates based to GMT time or anything within reason. This would be a nice way to keep data sets small. Also with glide tables, it would be easier to maintain since we can’t currently run any scripts against the data in them to do any automatic cleanup.
Set columns works to clear cells, but it doesn’t delete a row, but there is a Delete action coming soon.
The difference is that what I’m proposing is an automated process to delete rows without any user interaction. It would just delete the row after a certain amount of time. So if you have old rows that aren’t needed anymore, nobody is going to interact with those rows anymore, so it would be a way to clean them up.
It’s not a feature that I particularly need for myself. It’s just based on an idea I had while answering another post.
Say you have an app that generates 10,000 rows a month and you only need the data for 30 days. Sure you can hide it, but that data is still there and you will end up with 120,000 rows after a year. You could manually clean it up by deleting the old rows or build a script if it happens to be a google sheet (can’t do that easily with glide tables)…but, what I’m proposing is a way to automatically delete old rows through a built in background process with zero user interaction and zero after thought, without having having garbage data that’s not needed anymore. It would just be something you set and never think about again…and your row usage would stay manageable.
I agree and can definitely see a need for this in the future, especially since manually deleting multiple Glide Table rows at once is not working properly.
This may also be something that Actions with Multiple Relations could help solve (once the Delete Row Action is in place too). Either way, an auto-delete function would be great and would help keep data sets from expanding needlessly for some situations. Maybe even an auto-export to CSV + delete from Glide Tables would work so that users can still keep historic data locally, if needed.
There are no automations in glide. Everything is controlled through user activated actions.
I’ve recently implemented a process to “archive” rows in a table (in my case I change the row owner email so it is no longer owned by anyone). A similar process could be done to delete rows. Right now I archive one row at a time. I talk more about it here.
A similar method could be used to delete rows instead of marking them as archived.
Recently Glide opened up the option to delete multiple rows at once through a relation. What I think you could do is create an action somewhere in your app, so when a user clicks a button or views an item in a list, you could perform the delete action. All you need is a relation that only links to rows that are more than 30 days old, much like what I did in my app. In my case, it’s anything older than 2 years. You would just need a math column to find the number of days between now and a date on your table, then an of column to return ‘true’ or some other value if the number is greater than 30, then in whichever table would be used with the action, create a template column with the word ‘true’ and build a relation linking true to true.
It’s not automated, but with the user simply using the app and calling the action, it will be the user that initiates the delete.
I’ll add this to a list of similar items I’m going to ask the dev team about.
One ask I am going to make is the ability to auto archive records to a secondary spreadsheet or as a downloadable CSV based on date, status, or something like that. Same idea, it would be automatic rather an action associated with an action.
No idea if it’s something the team can or would want to do…but doesn’t hurt to ask.