GNOME Bugzilla – Bug 165174
Report on "virtual accounts" - search results
Last modified: 2018-06-29 20:49:26 UTC
Feature request: it would be great if GnuCash could generate reports based on "virtual" accounts - the results of a search. The search functions in GnuCash already are fantastic and very powerful, but currently you can't do enough with the results of a search. If the transactions found could be grouped into a temporary account (not copied - because this shouldn't affect any account balances) it would be possible to use GnuCash's graphing tools more effectively. For example, imagine I have an expense account for CARS and child account CARS::RUNNING COSTS. This account contains expenses like parking fees, registration fees, petrol and oil costs and service fees etc. Currently it is possible to generate a graph showing the two CARS accounts. But with the feature proposed, it would be possible to (for example) search for all transactions with the words "petrol" or "oil" and then generate a graph based on the transactions discovered. This feature may also help the problem described in bug #113772. (Requests are similar.)
*** Bug 437666 has been marked as a duplicate of this bug. ***
This bug request and the "Multiple Views" section of the GnuCash wishlist suggest a different specification for accounts. Accounts are currently sets of splits. If a split, S, is placed into a unique account, A, S is implicitly a member of all ancestors of A in the account hierarchy. However, accounts other than ancestors of A cannot contain S as an element: all immediate children of an account in the hierarchy are _disjoint_ sets of splits. Virtual accounts and multiple views suggest that we relax the restriction that immediate children of an account be disjoint sets of splits. Consider describing the accounts by making each account a node and placing edges from an account A to an account B if B is a subset of A. Under the current hierarchy description, the graph of accounts is a tree. If we relax the requirement that immediate children of an account be disjoint, the account graph would become a directed acyclic graph. (A cycle in the graph would imply that all accounts in the cycle are setwise equal. Disallowing this situation does not cost us much generality.) Changing to this system that allows splits to be members of multiple accounts might allow book closings, variable time slices, event-specific groupings, and other wish-list items to be more easily implemented. However, I realize that implementing the DAG rather than tree relationships would be a very extreme structural change to GnuCash, and may not be a very high priority at present.
*** This bug has been marked as a duplicate of bug 113772 ***
GnuCash bug tracking has moved to a new Bugzilla host. This bug has been copied to https://bugs.gnucash.org/show_bug.cgi?id=165174. Please update any external references or bookmarks.