Can we search and filter the Data Viewer List?

Hi,

is there a way to make this (Search & Filter LocalDB) work with the Data Viewer List element?

Thanks

2 Likes

Hey @tutzing, :wave:

Good question, I’ve moved it to its own topic so that it gets a bit more visibility.

I’ve also added the Dataviewer tag to keep track of this.

Thanks!

So, is it possible to filter rows of the table? I dont want to show some of them.

1 Like

I’m curious if there are plans to make these lists filterable by column field data characteristics? That would be a very helpful capability. For example, if I have a list of jobs, it would be great to be able to filter it so only those to show only those with a particular date, or assigned to a particular employee, or showing a particular status.

3 Likes

A deleteAllData would be great and would help a lot for the work around !

But the best of the best would be to Change the data source of the list viewer with blocks and choose the “view” that you want in airtable.

That would allow us to create multiple listes with one “list viewer” and also enable us to make filters.

5 Likes

good news @83c4d26aa4d240 - the delete all rows block is now available!

hopefully @tutzing @bymaho @sr3 and yourself can put your heads together and get come up with a way to add filtering!

4 Likes

Just to clarify, the delete all rows block currently only works for Local Data Sources. I’m not sure if there is a use case for Airtable and Google Sheets but it is something we can enable if there is interest.

4 Likes

Hi @Steven, in my opinion this is a very helpful block (I awaited it so long :slight_smile:). I cannot see any use case in connection with Airtable or Google Sheets.

3 Likes

Data Viewer “Filter” Block would be mega.

5 Likes

I wouldn’t see the need for this to be a “block”, however it would be nice to tick a box in the designer properties to enable a filter bar, just like is possible with classic Android. I think to make a custom data viewer search bar we need to be able to list all row id’s alongside its data in a spreadsheet. Until we can do that then the custom search is not very effective.

What would you propose would be the best solution for me in the following scenario;

Data is stored in Airtable, two tables, four columns in each table.
I have an interactive data viewer list (which is awesome), so I can present the data in a legible format, I can swipe right to follow a link (data in one of columns), in edit mode I can swipe left to delete the row (completed), and I can tap the row to “read aloud”.

Current search function… I “download” the airtable date to a list “entire_list”, then search the list to a temp list and present this in a list viewer… which does not have any of the functions of the data viewer list. This morning its not even practical (circa 400 items - don’t even download in time).

A “filter” facility on the data viewer list would save on a lot of “blocks” and provide enhanced functionality, or am I doing it incorrectly?

1 Like

If you aren’t displaying too many images you can just use cloning. I’ve had great results with cloning columns.

1 Like

Hi @1604796tj,

I found two different ways for filtering:

  • first:
    – get the whole airtable with “getAllRows” and store it in a list.
    – deleteAllRows in a local database.
    – loop through the list and populate the local database which serves as a source for a data viewer (list/grid). Here you can apply all kind of filtering

  • second:
    – get only the rows you want from airtable. There is no block for this, but it is very easy to call airtable with the webApi. I described how to filter airtable in my issue #518 (have a look at the end of the issue)
    – the webApi returns JSON data that you can put into the local database (the source for the data viewer).
    – in this case you have to handle the problem, that airtable gives no more than 100 rows in one response, no matter what you do. But it gives you a hint, and an “offset” for the next request.

I found that it is a little bit tricky when you work with linked fields in your tables. You have to handle their IDs (a hidden field called “_id”).

Hope this helps.

1 Like

Along with filtering data in the data viewer, I’d also like to set a default filter for the view (ie. date in my case so that it would show entries from newest to oldest by default).

Or a second option might be to re-order the table. (First option is better).

Additionally, I’ve found the biggest problem with “deleting all rows” in a local table and re-populating the table is that it can take a long time on a slower data connection to show the pictures. The data viewer seems to download all pictures before showing any too, which is another point of improvement.

Can you share Project or any picture for clearly understand.
Thanks

Hi @doctorsof,

have you had a look at github issue #518? There are many pictures and explanations about how to use the airtable API for filtering data.

1 Like

By local data sources which ones do you mean?