I need interactive calculations using circular dependencies, but Glide doesn't allow circular dependencies in the Glide Table. Is there any way to enable circular dependency similar to Google Sheets or Excel?

I need interactive calculations using circular dependencies, but Glide doesn’t allow circular dependencies in the Glide Table. Is there any way to enable circular dependency similar to Google Sheets or Excel?

I believe the short answer is no, but can you describe your use case?

Maybe there is an alternative way to get what you need.

1 Like

the best way to avoid circular dependency is to create a hard record of the value… so you can pass it back to the formula…

The circular dependency I would like was something like this, for example:

Add a new table with two columns: “Column A” and “Column B”.

In column B, add the following formula: “=[Column A] + 1”.

Then, in column A, add the formula: “=[Column B] + 1”.

I wish it had a function like Google Sheets and Excel, where I can select Maximum number of interactions: “100” and Limit value at “0.0001”.

May we know what exactly is your use case for this?

It would be for use in an app to calculate the cache of an orchestra. I currently use a spreadsheet on google sheets, but the data takes a long time to update in the app, so I would like to pass the entire formula to the Table of the glide. Then when it got to that part of the formula with interactive calculation, the glide informed that it is not possible to use interactive calculation on the platform. In the example below, the name on the left is the column name, and on the right side the column and row, and after the “=” is the column value:

Calculation basis:

TOTAL INCOME: A1 = BRL 22,000

FIXED EXPENSES: B1= BRL 3,300
GENERAL EXPENSES: C1 = BRL 0.00
TAXES: D1 = BRL 0.00

TOTAL EXPENSES: E1 = (B1 + C1 + D1) = (BRL 3,300 + BRL 0.00 + BRL 0.00) = BRL 3,300

Number of Tests: F1 = 9
Cooperated Musicians: G1 = 23
Suit Bosses: H1 = 5

Report:

NET I: I1 = (A1 - E1) = (BRL 22,000 - BRL 3,300) = BRL 18,700

Amount to be added to net: J1 = BRL 0.00
NET I + ADDITIVE: K1 = (I1 + J1) = (BRL 18,700 + BRL 0.00) = BRL 18,700

PERCENTAGE OF SUIT HEAD: L1 = 20.00%

BONUS FOR SUIT HEADERS (UNIT): M1 = (S1 * L1) <<<<<<
BONUS FOR SUIT HEADERS (TOTAL): N1 = (M1 * H1) <<<<<<

AMOUNT PAID GRAT. OF SUIT MANAGER: O1 = BRL 628.57
Remaining Bonuses for the Head of Suit: P1 = -(BRL 157.14)

NET II: Q1 = (K1 - N1 -+ P1) <<<<<<
REGENT 300%: R1 = (S1 * 300%) <<<<<<

FINAL BASE CASH: S1 = (Q1 / G1) <<<<<<

CONCERT CASH: U1 = (S1 * 40%) <<<<<<
TESTS CASH: V1 = (S1 * 60%) <<<<<<

However, to calculate S1, M1, N1, R1, U1 and V1, you need to calculate S1 first, which is where the circular dependency starts. (Marked with “<<<<<<”).

To calculate the final result of S1, it is necessary to perform a series of interactive calculations, which are as follows:

Calculate the Net I value: I1 = (A1-E1), where A1 is total income (R$22,000) and E1 is total expenses (R$3,300).

Calculate the Net I + Additive: K1 = (I1 + J1), where J1 is the amount to be added to the net, which is defined as R$ 0.00.

Calculate the suit boss bonus (unit): M1 = (S1 * L1), where L1 is the percentage of suit bosses (20%).

Calculate the suit boss bonus (total): N1 = (M1 * H1), where H1 is the number of suit bosses (5).

Calculate the bonus amount paid for heads of suit: O1 = BRL 628.57.

Calculate the remaining bonuses for the leaders of the suit: P1 = -(R$ 157.14).

Calculate Liquid II: Q1 = (K1 - N1 -+ P1).

Calculate the Regent 300%: R1 = (S1 * 300%).

Calculate the Final Base Fee: S1 = (Q1 / G1), where G1 is the number of cooperative musicians (23).

Calculate the Fixed Fee: U1 = (S1 * 40%).

Calculate the Test Fee: V1 = (S1 * 60%).

The value of S1 is found from an interaction, where S1 is re-evaluated at each calculation, until the value stabilizes and comes as close as possible to the desired result, which is when it has been recalculated 100 times, which will finally give the value of R$ 785.71, (according to my google spreadsheet).

I would like Glide to have the option to do interactive calculations with purposeful circular dependency, just like Google Sheets and Excel, and to have the option to configure the limits of the calculations:

Maximum number of interactions: 100
Limit value: 0.0001

Since it is not possible to do this through Glide Tables, I was wondering if there is any way I could do this. And that I just changed the name of the columns, because I’m new to programming, I only have knowledge in google sheets and excel. I would like some admin to put this function in the glide.

Below is a print of my table. This table already takes data from another tab, it’s not exactly the same columns and rows used in the example above. They are just to give you an idea of the results. Ah, the print is all in Portuguese because I’m from Brazil, and I’m using google translator to talk to you.

1 Like

That’s quite a few calculations that depend on circular dependency. I don’t think Glide can offer that for now. Have you chosen Extra Sync mode so that the calculation can be synced faster back to your project?