[Feature] Computed Entities in Reports #3433
Labels
feature
This issue is a feature request
needs votes
Please upvote this feature request if you would like to see it implemented!
Verified feature request does not already exist?
💻
Pitch: what problem are you trying to solve?
When creating reports, I often want to see how much are these two things added up compared to these 2 things. If all of those things are of the same type like "categories" or "groups" no problem, I just select the categories or groups I want and boom.
But sometimes I want to add up 3 categories from separate groups, or compare a group to two categories... ooooooor compare transactions to these payees with transactions from these accounts.
Another thing it can enable is easier splitting of "account" objects into virtual accounts independent of categories (Because I could create a computed entity to automatically aggregate the balances of my virtual accounts and use that when I need to know the real account balance). I know, I know... for this point, someone is going to say "envelope budgeting doesn't care which account your money is in and envelopes/categories are like mini accounts anyways". My response: envelope budgeting doesn't care but people care, this feature wouldn't affect the budgeting features of Actual in any way, but it is a feature that would be useful to some people. If actual can achieve its envelope budgeting dreams and also have additional features that help some people, that's a bonus. Also, even if you don't like or wouldn't use it in this way, this feature is still useful (see the other examples above)
Describe your ideal solution to this problem
I would like to be able to create "computed entities" for use in reports. These would be values that are not directly represented by the raw data in Actual, but rather are represented by the output of some function that operates on the data.
These functions could be things like (this is not an exhaustive list):
add(value, value, ...)
subtract(value, value, ...)
multiply(value, value, ...)
divide(value, value)
(could also be defined likedivide(value, value, ...)
)average(value, period, range)
median
standard deviation
variance
as well as combinations of these functions.
The arguments to these functions would be some sort of filtered raw data in Actual.
All together a computed entity could look like:
account balance
whereaccount
matchessomething
,account balance
whereaccount
matchessomething else
)account balance
whereaccount
iscredit card
, montly,date
between2024-01-01
and2024-09-13
), average(transaction amount
whereaccount
iscredit card
ANDcategory
is notelectricity
, montly,date
between2024-01-01
and2024-09-13
) ), average(transaction amount
wherecategory
isfun
, montly,date
between2024-01-01
and2024-09-13
))I would also want to be able to use computed entities as input values for other computed entities
Teaching and learning
The reporting docs could have a section on this with a list of available functions, examples of how they could be used/configured, and examples of how they can get displayed in reports.
The text was updated successfully, but these errors were encountered: