r20616-20630 (GncOwner)

John Ralls jralls at ceridwen.us
Thu May 12 08:14:30 EDT 2011


On May 12, 2011, at 6:22 AM, Geert Janssens wrote:

> On donderdag 12 mei 2011, John Ralls wrote:
>> Geert,
>> 
>> Where are you trying to get to with these changes?
>> 
>> Regards,
>> John Ralls
> 
> My larger goal is to get better integration of the business functions in the 
> GnuCash UI and logic. In my experience it just takes way too many clicks and 
> context switches to efficiently work with the business objects. So I'm looking 
> for ways to improve this.
> 
> These recent commits are a first step in that direction. They add overview 
> pages for business objects such as vendors or customers, just like there is an 
> overview page for accounts. The idea is that each of these overview pages get 
> their own toolbar buttons tailored to the type of object that is listed. For 
> now there's only add/edit vendor/customer/employee when such a page is open, 
> but I plan to add buttons for at least new invoice/bill/job. In my opinion 
> that would be a first important improvement to a business workflow where 
> invoices/bills are entered in batch. For bills, you could open the Vendor's 
> overview page, and start entering invoices with the click of a (toolbar) 
> button.
> Another useful future enhancement I'm thinking of is adding some kind of a 
> balance column, which shows the amount each customer is still due or you still 
> owe each vendor, similar to the account's balance columns.
> 
> The whole concept still needs additional polish and refinement obviously. For 
> example, I'm still evaluating which columns would make sense to be visible by 
> default, which filter options to provide,...
> 
> There is an enhancement request I wrote last year that is mostly related to 
> this:
> https://bugzilla.gnome.org/show_bug.cgi?id=635003

OK, sounds reasonable.

My concern is that the data model for business is a bit of a mess, with separate objects for the different flavors of "owner". (I don't even like using "owner" here, but "counterparty", which is technically correct, sounds rather ponderous.) There's no real difference between customers and vendors except the direction of the cash flow. The same is true of bills and invoices. Employees and payroll are quite different, and I rather doubt that Gnucash's handling of payroll is really adequate. I'd intended to rework the design as part of the transactional refactoring after getting unit test coverage in place, but ISTM you should consider it as part of this effort as it will make a big difference in how your overview pages work.

Regards,
John Ralls







More information about the gnucash-devel mailing list