Specifications General Ledger
Jump to navigation
Jump to search
multiple currencies
- There is a base currency for each ledger, the balances of the ledger are stored in the base currency
- There is an international currency
- it is only used for reporting (previously it was stored with each balance, but that caused too much problems/overhead)
- There can be foreign currency accounts which have balances in their own currency
- they can be revaluated with a new daily exchange rate
- exchange rate is stored in the database
- corporate exchange rate (eg. issued once per month, an average exchange rate over the last 30 days)
- the corporate exchange rate is used for calculating the reports in international currency
- it is also used by ICH for clearing the debits/credits of the different offices between each other
- daily exchange rate: this can be updated each day, or downloaded from Yahoo Finance etc.
- the daily exchange rate is used for transactions with other currencies (different from base currency)
- corporate exchange rate (eg. issued once per month, an average exchange rate over the last 30 days)
transactions
double entry bookkeeping
- each transaction has an opposite transaction
- this was more complicated in the old Petra 2.x, with summarised transactions to save number of transactions in the database
- only one reference/narrative for a pair of transactions
- hmm, this is not completely true; there can also be a group of 5 transactions, balancing to 0, with different amounts, different narrative etc
- could we use a journal for that in the database? how to display to the user? they want to see all transactions in one list, grouped by journal?
- improved reports will show the opposite transaction(s), on Account Detail report etc.
Transactions in GnuCash
- see GnuCash Manual: Multiple Split Transactions; also see a discussion here: [1];
- there are simple transactions (one split), which just post to 2 accounts, with same (opposite) amount, same narrative etc
- there are multiple split transactions, that have several transactions, and combined they balance
- see the GUI of GnuCash for this:
You can switch between View: Basic Ledger, this shows only the summary:
The other View is: Transaction Journal, this shows all movements of money involved:
Posting
- posting: should show a preview of how the account balances would be after posting???
reduce number of tables
- to test: should there be 3 different tables, for transactions from the current periods, the closed periods of the current year, and periods of previous years?
- is Postgresql fast enough to cope with all transactions in one table?
- this would make reporting much easier