Change datasource settings dynamically

Hi,
I have a google sheets document I use to populate a dataviewer list.
When I select an element from the dataviewer list I get into a detail page of the X item.
From there I would like to access another page with a new dataviewer list that use a specific datasouce, basing on the previous selection.
Is it possible to do something like this?

No, it’s not possible but I think you can select different sheets (tabs) within a single Google Sheet:

But it should be an already confugured sheet.
I can’t change sheet of a datasource dynamically,right?
I mean, there is no “sheet” property block in datasource or “set datasource” method in dataviewer list

The “Table1” drop-down menu lets you choose a sheet if I’m not mistaken:

Yes I found that block but it doesn’t allow to populate a whole dataviewer list or to select a sheet.
If I have 20 different sheet I should develop a 20 if statement structure.
It could be nice if I could insert a string in the sheet field instead of a drop-down selection or dynamically select an already loaded data-source to populate the list

I agree that there should be a way to select a data source dynamically.

1 Like

It’s even not clear for me how to populate a dataviewer list using a for loop.
All blocks from datasources ask for a row id but I can only give a numer of the row using a for loop, not a row ID, else I should create a copy of teh datasource locally, getting column by column all the values…

In the list of values Data Source block you can change the drop-down menu to ID which will provide a list of row IDs for the data source.

Ok, I can get the rowID from datasource table.
Now, how to get rowID for dataviewer list?
It asks for it to change value in a field, but maybe it supposes to get it from a click event or from a datasource list of value I don’t have trying to populate the list dynamically.
image

Yes, you need to get it from a click event. Although, it’s the same as the ID field in the list of values block for the data source so you can also get it from there but you won’t know which row was clicked without the green block from the DVL click event.

So it’s not usable to populate the DVL dynamically :frowning:

It is but I’m not sure what you mean exactly. Can you provide an example?

I have a 40 rows sheet.
For every row there is a user.
Each user enters his related events on another specific spreadsheet or on another sheet of the same spreadsheet.
Depending on the case, I should have 41 Spreadsheets or or One spredsheets with 41 sheets.
In both case, I have a dataviewer list to select the user, and then in the detail page of that user, another dataviewer list showing related events.
So I need to read the events sheet row by row (at the moment there’s no way to determine which sheet to open dynamically so I will start with a single user sheet) but I can’t populate the DVL row by row.
I suppose to do so, I should read the sheet and place the result data in a table that act as data source for the DVL.

Personally, I would use Firebase for something like this. Having 41 spreadsheets or 41 sheets sounds like a nightmare.

You can populate a DVL however you want if you use clones instead of the DVL component. It’s a lot of work and hard to debug but it’s what I’ve ended up doing.

Yes, I know 40 spreadsheets is not the best solution…
I developed the same application using AIrTable, and I can bypass these problems using queries.
But recently I’ve seen a brand new tutorial about Thunkable with spreedsheet and DVL And it seems to me a nice and faster solution without using DB, but first of all, simple to allow user to insert their events easily, without learning any new software, simply add a row in a spreadsheet shared via google drive.
I took a look even at google sheet API, but it’s too tricky even only to get a working developer account :slight_smile:

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.