[GNC] Rethinking the placeholder account concept (was: Re: Fwd: The two modules)
John Ralls
jralls at ceridwen.us
Sat Jun 30 16:52:44 EDT 2018
> On Jun 30, 2018, at 12:00 PM, Christian Kluge <frakturfreak at gmail.com> wrote:
>
> Am 30.06.2018 um 05:37 schrieb John Ralls:
>>
>>
>>> On Jun 29, 2018, at 3:26 PM, Christian Kluge <frakturfreak at gmail.com> wrote:
>>>
>>> Hi,
>>>
>>> Am 29.06.2018 um 19:26 schrieb John Ralls:
>>>>
>>>>
>>>>> On Jun 29, 2018, at 9:52 AM, Geert Janssens <geert.gnucash at kobaltwit.be> wrote:
>>>>>
>>>>> Op vrijdag 29 juni 2018 16:59:07 CEST schreef John Ralls:
>>>>>> Stock accounts need to have a parent denominated the currency in which the
>>>>>> stock trades in order for the asset roll-up to work correctly on the
>>>>>> Accounts page. Three-commodity transactions are possible using trading
>>>>>> accounts, but I haven’t dealt with that stuff in a while and the details
>>>>>> have gone fuzzy on me.
>>>>>>
>>>>>> Stock accounts aside, let’s not conflate different purposes. We *should*
>>>>>> have an account type to accommodate the European Passive account with
>>>>>> Liability and Equity children, so let’s create that. We’ll need to tweak
>>>>>> some of the reports a bit to accommodate it, but otherwise it won’t have
>>>>>> much impact. It should, of course, be what we now call a placeholder and it
>>>>>> should be able to have only Root as a parent and only one each Liability
>>>>>> and Equity placeholder children.
>>>>>>
>>>>> I was in fact deliberately trying to come up with a solution that's more
>>>>> flexible than fitting the currently known use cases. The European Passive
>>>>> account was just one example.
>>>>>
>>>>> However we may be spending more time on it than necessary. I checked in the
>>>>> current version of the commercial accounting package* I also have to deal with
>>>>> and it doesn't define a Passive type at all. "Passive" it doesn't even appear
>>>>> on its default balance sheet. That is a bit uncommon though as the reports I
>>>>> get from my accountant do have a passive section. However just like gnucash
>>>>> this package is targeting a worldwide audience (though with country specific
>>>>> extensions). That may explain why they didn't bother adding the Passive
>>>>> section.
>>>>>
>>>>> Let me add that contrary to other accounting packages I have played with in
>>>>> gnucash the chart of accounts takes a very central place. So whether or not we
>>>>> want our own Passive type to group liabilities and equity hierarchically on
>>>>> the chart of accounts as well is up for debate.
>>>>>
>>>>>> I don’t think that creating a generic placeholder type account that can have
>>>>>> children of any type is a good idea,
>>>>>
>>>>> Here's another example: a household that wants to track its finances, but
>>>>> would want to keep separate account hierarchies per family member. Standard
>>>>> response: create two files. However they would benefit from common reporting
>>>>> which is cumbersome with two separate files. So what if we would allow to
>>>>> create two independent account hierarchies in one file. With a view type
>>>>> account one could create two top-levels ("Husband" and "Wife") and create a
>>>>> independent hierarchy for each. While this could also be solved if we would
>>>>> allow multiple root accounts and make that root visible I'm using it here to
>>>>> illustrate there are use cases we are not covering well.
>>>>>
>>>>> I borrowed the idea of a view type account from an old version of the
>>>>> commercial package* we have to use. Looking more closely it turns out the
>>>>> current version has dropped view accounts and instead is organizing charts/
>>>>> reports using a combination of account type (roughly like we do) and
>>>>> hierarchical account numbers. So I must admit perhaps the idea was not so
>>>>> bright after all :)
>>>>>
>>>>> The package also doesn't have a hierarchical account tree. It's flat and
>>>>> hierarchy is only added in reports as explained above. So there is no such
>>>>> thing as a parent account in that package and hence no restriction on which
>>>>> account type a certain account can be.
>>>>>
>>>>> Again in gnucash the chart of accounts is very central and visible so we
>>>>> probably shouldn't drop its hierarchical structure just yet.
>>>>>
>>>>> The downside of this hierarchical structure is then of course we have to think
>>>>> about issues like whether or not we should allow accounts to have any type of
>>>>> child or not. I believe parts of gnucash rely on this (I seem to remember a
>>>>> relatively recent issue in the export code that it didn't find all liability
>>>>> accounts if they had a non-liability parent or such).
>>>>>
>>>>>> and I think that we already have too
>>>>>> many overlapping account types with subtle behavior differences that are
>>>>>> neither documented nor easily discoverable in code.
>>>>>>
>>>>> I'm all for clearing this up. If we can reduce the number of account types
>>>>> that would be great.
>>>>> For reference this is the list of 17 account types supported by the commercial
>>>>> package*:
>>>>> Receivable, payable, bank and cash (one type), current assets, non-current
>>>>> assets, prepayments, fixed assets, current liabilities, non-current-
>>>>> liabilities, equity, current year earnings, other income, income,
>>>>> depreciation, expenses, cost of revenue, credit card.
>>>>>
>>>>> Gnucash currently has 15 of which a few are internal only:
>>>>> Bank, cash, credit, asset, liability, stock, mutual, currency, income,
>>>>> expense, equity, receivable, payable, root and trading.
>>>>>
>>>>>
>>>>>
>>>>> The leftovers from this long discussion for immediate use may be summarized
>>>>> as:
>>>>> - on reports display placeholder accounts once as aggregate account and once
>>>>> as its own account if it has splits.
>>>>> - work to be more pedantic about the meaning of "placeholder". It should
>>>>> become an empty account used for structuring the account hierarchy and for
>>>>> collecting (sub)totals.
>>>>> - introduce a read-only status for accounts one doesn't want to accidentally
>>>>> modify, but that should still appear in the chart of accounts in various
>>>>> places
>>>>> - replace "hidden" combined with current "placeholder" with "inactive".
>>>>> - consider introducing a passive account type to be able to structure the
>>>>> chart of accounts and reports conform European habits.
>>>>> - think of ways to have more than one chart of account in one file (only
>>>>> mentioned first in this message).
>>>>
>>>> There’s been an effort over the last several years between the IASB and the US’s FASB to reconcile IAS and US GAAP for the obvious reason that it’s a royal PITA for international businesses to have to present their books in different ways to different regulators. I discovered when looking for an IAS example CoA earlier today that it’s apparently come to fruition as IFRS and that the standard CoA doesn’t have a “Passive” super-category [1], so perhaps the rest of the world is catching up with GnuCash. ;-)
>>>>
>>>
>>> Not the whole world. Section 266 of the German HGB requires the balance
>>> sheet to split in active and passive and that’s how it’s displayed in
>>> every German accounting software.
>>>
>>> https://www.gesetze-im-internet.de/hgb/__266.html <https://www.gesetze-im-internet.de/hgb/__266.html>
>>>
>>> Also while you add it think about new account structures and the
>>> placeholder concept could you also consider the equivalents of the other
>>> types mentioned in the document above.
>>
>>
>> No surprise that individual country’s legislation hasn’t caught up. That will likely take several more years.
>
> I hope this will never happen because the American way of doing it
> destroys the fundamental aesthetic of the balance sheet, that there two
> numerically identical sides which have just one top label each.
>
>> I don’t see any account types there other than the Active/Passive sections that GnuCash doesn’t already support. What I can’t figure out is what parts of the CoA small companies are allowed to leave out. (And no, my German isn’t good enough to thoroughly read the document. I used Google translate and so I may have gotten some of it wrong.)
>
> To summarize which sections each company type has to use:
>
> micro-entities: capital letters
> small sized: capital letters + Roman numerals
> medium sized and large: capital letters + Roman numerals + numbers
Thanks.
So it's just that larger companies have to report more detail?
Regards,
John Ralls
More information about the gnucash-user
mailing list