Download CSV of all items that are showing in a RG

I have a large custom built table which holds the results of a screener. There is a lot of potential columns and the display will vary per user. Once the user has the layout they want to see, we want to offer a way to download exactly what they see in a CSV file. I just need to take the contents of that repeating group and export it, in the same order.

I am using 1t CSV downloader on another page. For some reason it wants to throw errors on this page even when using :convert to JSON safe expression.

Some of the plugins I looked at were for older bubble versions and didn’t download any data…

The only feature I really need is the ability to sense the data from the hidden columns. I guess it would need to be able to read a group for the list of captions. Any options out there?

1T CSV Creator is the way to go, since your columns are dynamic it’s gonna be a lot of conditions whether or not to include that column in the CSV.

Assuming the user checks a box, and that sets a yes/no custom state called ShowColumnA on the index page

[List of things]:format as text
Inside the window:

{
index's ShowColumnA:format as text
index's ShowColumnB:format as text
index's ShowColumnC:format as text
index's ShowColumnD:format as text
index's ShowColumnF:format as text
}

Then when you click on the :format as text for ShowColumnA,
For “yes” you would do
“[Name for Column A]”: This [thing]'s Field 1:format as JSON safe,

and for “no” leave it blank

Rinse and repeat for all columns

Then , delimiter for the main :format as text window like usual

EDIT: although thinking about this, there’s some weirdness cause the last item can’t have “,” after it, and there’s no telling which one would be the last item…

Do:
{
(index's ShowColumnA:format as text:converted to list:plus item index's ShowColumnB:format as text:plus item index's ShowColumnC:format as text:plus item index's ShowColumnD:format as text:plus item index's ShowColumnF:format as text):filtered:format as text
}

Inside the “:filtered” have it filter out empty values
Inside the last “:format as text” make the delimiter ,
:joy:

2 Likes

This makes a lot of sense. I have an idea how to hack the first idea you have into functioning. Leave each line with a , at the end as mentioned then hardcode the last field to include the unique ID for the row. That line would be expecting the previous to end with a comma and end with none to format the JSON correctly.

{
index's ShowColumnA:format as text
index's ShowColumnB:format as text
index's ShowColumnC:format as text
"UniqueID"=index's ShowColumnID
}

Going to try again soon testing both options out. Thanks!

1 Like

This topic was automatically closed after 70 days. New replies are no longer allowed.