Hello Baserow team,
I’m trying to calculate KPIs dynamically across linked tables. Here’s the structure I’m aiming for:
- Table 1: Contains KPI formulas (e.g., “EBIT margin = EBIT / Revenue * 100”)
- Table 2: References the KPI name and inputs (EBIT, Revenue, etc.) and calculates the actual KPI value based on the formula stored in Table 1
Why this is important:
Currently, I have to use a single formula field with dozens of nested IF()
statements, like this:
if(field('unit') = '%',
round(
if(field('KPI') = 'Cash Ratio' and ..., ...,
if(field('KPI') = 'Quick Ratio' and ..., ...,
...
'')))), 2) & ' %',
''
)
This is hard to maintain and quickly hits the formula length limit.
My ideal solution:
I’d love to write the formula once (as a “recipe”) in a separate table, and have the calculation dynamically reference that formula — removing the need for massive IF()
nesting.
Why a single column is required:
I need one consistent column to hold the final calculated KPI value (regardless of type: %, €, days, etc.), so I can filter, visualize, and analyze it in views and reports.
Would you consider supporting:
- A way to reference formulas from another table (e.g. through lookup and evaluation)?
- Or at least a
SWITCH()
/CASE
statement to improve maintainability?
Let me know if you’d like a specific example or demo.
Thanks a lot!
Felix