Linux Finance Programs Review
The next program is QHacc version 0.4.3. (Note: QHacc's authors have released version 0.5, but too late for me to include in this article.) This program requires the QT toolkit in order to work, which I found to be quite an easy installation process. I compiled the QT toolkit from sources and followed the instructions for installing it, then I compiled and installed QHacc without incident.
QHacc provides a simple two-paned layout. The left pane contains a list of accounts and balances, and the right pane contains the ledger for the selected account (see Figure 3).
Transaction entry is a little different from the other programs. Selecting “new” in the ledger brings up a transaction window where you enter the check number, date, payee, amount and memo. QHacc inserts the next available check number and provides an auto-complete feature for the payee. The transaction is entered into the ledger by pressing the ENTER key, while pressing the ESC key cancels it. Withdrawals must be preceded by a minus sign, because QHacc does not provide separate credit and debit text boxes.
QHacc also provides a mechanism for memorizing transactions. After entering the transaction that you want to memorize, right-click on it in the ledger and select “Memorize” from the pop-up menu. To insert a memorized transaction, right-click on an empty ledger line, go to the memorized item in the pop-up menu and select the transaction you wish to insert.
QHacc can be set up for single- or double-entry bookkeeping. If you want to use categories for keeping track of your transactions, you must use double-entry bookkeeping. You must also use double-entry accounting to automatically update account balances when transferring money between them, otherwise you have to enter the transfer in both accounts. If you elect to use double-entry bookkeeping, you can also split a transaction among several accounts.
QHacc provides a simple graphing function that shows the net total of transactions by the week. According to the companion TODO document, more graphs will be added in the future.
Account reconciliation is the same as in the other programs. Remember to enter any interest payments or service charges before using it. Enter the starting and ending balances from your bank statement, then select entries to clear.
At version 0.4.3, QHacc is the youngest of the programs at which I looked. I did find one problem. If I entered 00 for the year, it used 1900. Also, QHacc does not offer the ability to import QIF files.
GnuCash is the most ambitious financial program being developed at this time. It offers the greatest variety of account types, sub-accounts and stock price retrieval. This program was the most difficult to compile and get working because it depends on quite a few other programs, libraries and Perl modules. I looked at both the stable version (1.2.5) and the current development version (1.3.6).
Before attempting to use either of these versions, read the documentation closely to determine which additional programs, libraries and Perl modules you will require. Version 1.2.5 requires Motif or LessTif and version 1.3.6 uses GNOME and the GTK. I had better luck installing them on a Red Hat 6.1 system than I did on a SuSE 6.1 system.
GnuCash offers a slightly different interface than the other programs I tested. Its main window displays a list of accounts with balances, and a new ledger window is opened for each account. This allows you to view and edit more than one account at the same time (see Figure 4).
GnuCash offers more types of accounts than the other programs (see Figure 5). An account can be identified as a bank account, cash, asset, credit card, stock, liability, mutual fund, currency, income, expense or equity. Accounts can be children of other accounts, allowing you to create portfolios of funds. The ledger windows change slightly depending upon the type of account you are working with.
The ledger windows offer you the choice of displaying single or multi-line entries and allowing you to sort transactions by date, check number, transaction amount, memo or description. Unfortunately, they do not remember your display selections after you close them.
Keyboard entry leaves a bit to be desired in version 1.2.5. While you can use the TAB key to move through the fields, in single-line mode you cannot tab over to the payment or deposit fields because the focus jumps from the account field to the “Record” button. Version 1.3.6 puts the command buttons above the ledger, fixes the tab movement function and accepts a transaction when you press the ENTER key. Neither version automatically increments check numbers in the ledger window.
I had some problems importing my QIF file from Quicken 99. GnuCash version 1.2.5 read my Quicken file and did a good job of creating my chart of accounts, but all the ledger entries from the QIF file had a date of 12/31/1969. Version 1.3.6 could not even read my QIF file, quitting with the message “wrong argument in position 1”.
GnuCash offers reports but no graphs at this time. The reports included in version 1.2.5 are Balance Sheet, Profit and Loss and Portfolio Valuation. Version 1.3.6 offers these reports plus additional ones, such as a budget report, but there is no way to create a budget from within GnuCash at this time.
While certainly the most ambitious program of the group, GnuCash was also the most difficult to install. The documentation does state which programs and libraries are required by GnuCash, and I had better luck installing GnuCash on a Red Hat 6.1 system than a SuSE 6.1 system. The dependence on so many external programs and the difficulty of importing QIF files are the main problems with GnuCash.
Free DevOps eBooks, Videos, and more!
Regardless of where you are in your DevOps process, Linux Journal can help!
We offer here the DEFINITIVE DevOps for Dummies, a mobile Application Development Primer, and advice & help from the expert sources like:
- Linux Journal
- Be a Mechanic...with Android and Linux!
- New Products
- Users, Permissions and Multitenant Sites
- Flexible Access Control with Squid Proxy
- Security in Three Ds: Detect, Decide and Deny
- High-Availability Storage with HA-LVM
- Solving ODEs on Linux
- DevOps: Everything You Need to Know
- Tighten Up SSH
- Non-Linux FOSS: MenuMeters