SQL-Ledger at http://www.sql-ledger.org/
It's free and support for a fee is available.
Oh, it's web-based too!
Here is a demo site:
"SQL-Ledger is a double entry accounting system. Accounting data is stored in a SQL Server, for the display any text or GUI browser can be used. The entire system is linked through a chart of accounts. Each item in inventory is linked to revenue, expense, inventory and tax accounts. When you sell and purchase goods and services the accounts are automatically updated.
With the assembly feature you can build manufactured goods from parts, services and assemblies. When you sell assemblies all the accounts linked to the individual parts, services and assemblies are updated and stock levels adjusted accordingly. If any item belonging to an assembly is changed all assemblies are updated as well.
Invoices, Packing List, Income Statement, Balance Sheet, Sales and Purchase Order, Statements, Receipts and Checks are generated from templates and can be changed to suit your needs. Templates are provided in html and tex format. The tex templates are processed with latex to produce postscript and PDF documents and can be sent to a printer, displayed in a PDF viewer or sent out via email ...
SQL-Ledger can be used on any UNIX, Mac OS X and Windows computer. The application is written in Perl, developed on FreeBSD and Linux with Galeon, Konqueror, Netscape, Lynx, Links, W3M, Voyager, Explorer to render the display, Apache, thttpd, boa to communicate between the server and the browser, and PostgreSQL, Oracle, or DB2 to store accounting data. "