Dynamically selecting Data Variables – suggestions please

My simplified set up.

Into Page – User selects a level – 1, 2, or 3 and then a ‘Start’ button…which opens the next page and sends the level as a page parameter to it.
Next Page – Uses a different data table, depending on the level previously selected, so I have Data Variables called DataTable11, DataTable21, DataTable31. The APIs are GET COLLECTION.

What I have tried: In ‘Next Page’ I have tried changing the (for example, FIND) formulas that reference the Data Variable using a JOINED string which includes the page parameter…something like this FIND(JOIN[(“data.DataTable”,page.params,”1”,………). I can see this doesn’t work so I figure referencing the Data Variable with a string is a no go? I think I have found a thread on the forum (which I don’t 100% understand) that confirms this….not sure.

What I tried next: I could in theory create three Next Pages, each one set up to refer to the appropriate Data Variable. This would involve getting the Intro Page to open the correct page, depending on the level selected. So I would need to configure the ‘Open page’ logic to work dynamically, and I can do that by populating a page variable with the level, and then referencing that variable in several IF CONDITION utilities used before the OPEN PAGE utility.

There are probably other ways too. Any help and suggestions much appreciated. The later seems a bit cumbersome in that I will need to replicate lots of pages (the only difference between them will be the Data Variable they use…), there are more than three, so to be able to do it dynamically would perhaps be better. Or maybe not linking to data dynamically is more robust.


A consideration would be to have all the level data (i.e. 1, 2, 3) in one data variable. Then you can use the SELECT_BY_KEY formula to get all the objects in the list that have a level value that matches what the user selected.

If you have an API that accesses the data then you could use the API to filter the list to just the Level that the user selected. You could do this by using the AppGyver Data Resource Query parameter and call an API that you have built.