Follow-up: Currency Transfer Accounts

Dave Peticolas dave@krondo.com
06 Nov 2001 16:33:49 -0800


--=-sT6dTwBheDKCb+Z76RFK
Content-Type: text/plain
Content-Transfer-Encoding: quoted-printable

Part of the problems you are seeing is that the
currency model of GnuCash has changed since the
1.6 stable series.

In GnuCash, a transaction contains multiple 'splits'
or ledger entries. Each ledger entry has an 'amount'
and a 'value'.

In the original model, accounts had two commodities:

currency =3D=3D denomination of the 'value' quantity for
            splits in this account
security =3D=3D denomination of the 'amount' quantity for
            splits in this account

Every transaction had to have a 'common currency'
in the sense that there had to be at least one
currency in common with every split and thus the
need for currency accounts to do transfers between
accounts with different currencies.

In the new model, accounts have a single commodity,
which is the denomination for the split 'amount'
quantities. Transactions have an explicity
commodity, which is the denomination of all
split 'value' amounts in the transaction.
The 'value' amounts determine whether the
transaction is balanced or not. Since the
transaction sets the balancing commodity
explicitly, transfers between arbitrary
currencies are possible.

Most of the work to convert the engine to
the new model is done, but it hasn't been
extensively tested. But the GUI, especially
the register and transfer dialog, needs to
be updated for the new model.

Right now, the register is designed mainly
for transfers between accounts with the same
commodity, in that the user cannot edit both
the split amount and split value fields. Only
the stock/currency account registers are set up
to do that.

So, we need a GUI that allows multi-currency
transfers to be set up, but that doesn't add
a lot of clutter for the common case of single-
currency transfers.

dave


--=-sT6dTwBheDKCb+Z76RFK
Content-Type: application/pgp-signature

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.0.6 (GNU/Linux)
Comment: For info see http://www.gnupg.org

iD8DBQA76IFt5effKKCmfpIRApKOAKC8GvIA8Gbmukx4iEOWbVisubQORQCgl0pc
kebDTMraiHkKwFxE/OGxHDg=
=dgbW
-----END PGP SIGNATURE-----

--=-sT6dTwBheDKCb+Z76RFK--