Budget report improvements

Chris Shoemaker c.shoemaker at cox.net
Wed Oct 11 22:41:38 EDT 2006


Hi Steven,
        Sorry for the late reply, I'm just getting back to stuff like
this now.  Thanks for the patch.  That's pretty impressive for not
having programmed in guil or lisp before - you must be a natural.  I
have some comments below.

On Sat, Sep 09, 2006 at 11:51:58AM +0800, Steven Wilton wrote:
> I like the budget feature in gnucash 2.0, but there were a few features 
> that I felt were missing in the report.  Unfortunately I've not programmed 
> in guile or lisp before, but I gave it a shot, and thought I'd send the 
> work I'd done to this list in case anyone else thinks the features are 
> useful.
> 
> The patch does 3 things:
> 1 - It adds the sub-accounts in the budget columns to give a total.  I did 
> this because the actual columns already contained the total of all 
> sub-accounts.

I don't think that's generally correct behavior.  What if not all
sub-accounts are budgeted for?  If a user wants to budget at the level
of the parent account, they can enter a budget value for the parent
account.  This may or may not be the sum of budgeted children (if
there even are any).


> 2 - It adds an option to make the budget and actual amounts cumulative.

Interesting.  I'm ambivalent about this behavior.  On the one hand, I
understand why it is useful to see this information.  You're basically
viewing actual and budgeted account _balances_.  I'd like to see this
information be easily available.  

On the other hand, this means reporting budget values that are
_accumulation_ of the specified values, instead of identical to the
specified values.  Also, there are clearly uses when seeing the
accumulated values is definitely not what you want.  (But, yes, it's
optional.)  

I'm going to think about this some more, but in any case, if we want
this optional behavior, there are easier ways to get account balances
- and it could probably use some assistance from the C-side of
budgets.

> 3 - It allows the user to select a single budget period to show data for.

That's clearly useful.  Maybe a range of periods?

> 4 - It reduces the displayed accounts to income and expense only (not a 
> core feature, but it was the only way I could see to easily remove all the 
> asset and liability accounts from the report)

You just changed the default.  There's a full account selector in the
options.  But, I like that as default setting.

> 5 - It makes the default display depth 3, once again not a core feature.
> 
> There are a few bugs that I'm aware of:
> 1 - For some reason the code that adds the sub-totals for the budget 
> columns sometimes ends up with a blank entry.  I have no idea why this is 
> ocurring, as there is no pattern that I can see.
> 2 - The report takes a very long time to run.  I've probably done something 
> wrong int he code to make it run slowly.
> 3 - The number of periods that are displayed in the options menu is 
> hard-coded to 12.  This value should really be obtined from the number of 
> periods in the budget.

That's _really_ tricky to do right.  It's the sort of thing I'd try to
figure out how to avoid altogether.  :)

> I hope the work I've done is useful.

Thanks for sharing the patch.  I'll see if I can commit some of these
improvements some time in the future.

-chris

> 
> regards
> 
> Steven 



> _______________________________________________
> gnucash-devel mailing list
> gnucash-devel at gnucash.org
> https://lists.gnucash.org/mailman/listinfo/gnucash-devel



More information about the gnucash-devel mailing list