I have developed a SaaS for hotels to calculate their environmental impact. In the dashboard I need to show a percentage of annual variation. That is, I need to be able to see how much the consumption of water, electricity, gas, waste, etc… has changed.
How should I do the calculation? What is the most efficient way to do it so that it does not consume too much WU?
I am scared that doing the do a search for 7 times (1 per KPIs) would insanely increase my WU consumption
I have 1 data type per KPI (electricity, gaz ,water, waste, laundry, CO2)
The data is divided by month in the database.
I already day the following calculation:
((Do a search for electricity 2023 each item item electricity:sum - Do a search for electricity 2024 each item item electricity:sum) / Do a search for electricity 2023 each item item electricity:sum) *100
It does the calculation but now keep in mind that I have to do the same calculation 7 times in the dashboard…
Are you sure that’s the right approach, versus one data type for the value/date etc with an option set for the resource (gas/electric/CO2)?
Your expression seems fine, the alternative would be storing a calculated number in a different Thing that gets updated with a DB trigger whenever any relevant values change. May work out more efficient depending on the read/write ratio.
Presumably all of your KPI data types are very similar… they all include a value, a year, the User etc
The KPI is the measurement (the Thing). The difference is what you’re measuring (i.e, a property of the Thing = a field, in this case defined by an option set).
This depends on how you’re actually using these KPIs and what you’re storing on them but you get the idea.