BigTables limitations for computed columns

I’m wanting to move my Transactions table to a BigTable as it’s getting too big. Currently the client’s pull a CSV file of their Transactions from the Transactions table. My questions are(for reference I did read the docs so I know some are technically “answered” but the wording confused me a bit):

  • Can a CSV(or PDF or both) file be created using BigTable data?

  • Do relation and look-up columns work the same way in BigTable? I.E relate customer ID in BigTable Transactions to Customer ID in Users table and look-up their name, then number, etc?

  • In User’s table can I create a relation column to BigTables Data?(I think this was a limitation in docs?)

  • Do ITE columns work in BigTables?

  • Can I create a query column in BigTables and use it as a source in layout?

PDF I haven’t tried, so I’m not sure. Generally with a PDF you’re just working with a single row of data, so I expect it should be fine. CSV is a bit different because you’re working with multiple rows of data. The CSV Integration doesn’t work (I’ve tried it), so you’d need to roll your own solution. Two options that have occurred to me:

  • Pre-generate the CSV for every row and save it in a non-computed column. You could then use a Joined List to aggregate that through a Query for several rows. Probably the simplest option, but it would mean that the CSV structure is predetermined and couldn’t easily be changed.
  • Another option could be to use a series of Joined Lists to aggregate all the data required, then use a JavaScript column to create the CSV. I’ve actually done a proof of concept with this option, and it does work, I’m just not sure how well it would scale.

Yes.

Yes, you can.
I suspect the limitation that you’re thinking of is that you cannot use a Big Table as the source of your User Profiles table.

Yes.

Yes.

Okay so currently every time a PDF invoice is generated, on our end, it gets saved in a basic text column along with all the other data about the transaction like so:

When they request a statement we have a relation column in customers to pull the transactions for that customer, then use a query column to filter it based on the dates they picked like so:
Screenshot 2023-11-29 083237

We then generate a CSV file based on that query and send it through to the customers that looks like the following(including pdf invoice link):

If our transactions table is in BigTables, but our customers table is still in Glide Tables, would this method still work? Pulling the data via a relation from BigTables, into Glide tables, then generating a CSV from there?

If not what would you recommend?

I think that should work, as long as you are only fetching non-computed columns via the relation.
But I would recommend testing it before committing to making wholesale changes.

2 Likes

So if I’m currently pulling relations from a normal Glide Table that has a bunch of computed columns, and I want to change that relation to a Big Table while keeping the same info, then I should leave the computations in that Glide table, add a button that takes those values and writes them into basic columns in the Big Table, and then use those basic columns as the look up for relations?

Yes, that sounds about right.

1 Like

Thank you so much, also does BigQuery work with Glide’s BigTables?

Also when you duplicate an app(to test BigTables) which option pulls the data but WON’T affect the main app? ie if I delete a basic name column it won’t delete the column in the main app, which option out of the 2 is it?