npo-accounting-ikiwiki/ExistingProjects/GNUCash.mdwn
http://wandborg.se/ fe16442497 GnuCash evaluation
2013-11-27 20:24:00 +01:00

115 lines
5.2 KiB
Markdown

Links:
- [[!wikipedia GNUCash]] - Wikipedia
- <http://www.gnucash.org/> - Project homepage
Actually not named "GNUCash" but GnuCash although it is part of the GNU Project.
## Technical
- C/C++ with CMake + make
- Scheme
## Preliminary evaluation
### Positive
- [Cross-platform](http://www.gnucash.org/)
- [Track record](http://en.wikipedia.org/wiki/GnuCash#Users) with 501(c)3 orgs.
- [Very mature codebase](http://www.ohloh.net/p/gnucash)
### Negative
- Uses svn for source code management.
### Comments
Josh Berkus: from my perspective, this has all of the drawbacks of ledger-cli, without the advantages.
<a id="evaluation"></a>
## Evaluation
### Evaluation of [[Reporting|UseCases/GeneratingReports]] UseCases
- [[Trial Balance Report|UseCases/GeneratingReports#trial-balance]]: Yes
- [[Bank Reconciliation Report|UseCases/GeneratingReports#bank-reconcilation]]: Yes
- [[Chart of Accounts|UseCases/GeneratingReports#chart-of-accounts]]: Yes
- [[Cash Disbursements Journal|UseCases/GeneratingReports#cash-disbursements]]: Yes
- [[Income Report|UseCases/GeneratingReports#income-report]]: Yes
- [[Expense Report|UseCases/GeneratingReports#expense-report]]: Yes
### Evaluation of [[Reporting|UseCases/GeneratingReports]] UseCases for Fund Accounting
Can each of these reports be generated, confined to a specific temporarily
restricted asset type?
[GnuCash is not designed for fund accounting](http://lists.gnucash.org/pipermail/gnucash-user/2006-October/017931.html) although it can possibly be configured to use fund accounting.
<!--
- [[Trial Balance Report|UseCases/GeneratingReports#trial-balance]]: FIXME
- [[Bank Reconciliation Report|UseCases/GeneratingReports#bank-reconcilation]]: FIXME
- [[Chart of Accounts|UseCases/GeneratingReports#chart-of-accounts]]: FIXME
- [[Cash Disbursements Journal|UseCases/GeneratingReports#cash-disbursements]]: FIXME
- [[Income Report|UseCases/GeneratingReports#income-report]]: FIXME
- [[Expense Report|UseCases/GeneratingReports#expense-report]]: FIXME
-->
### Evaluation of [[Fund Accounting|UseCases/FundAccounting]] UseCases
*Not sure.*
- [[Fund-only View|UseCases/FundAccounting#fund-view]]: FIXME
- [[Funds as part of whole org View|UseCases/FundAccounting#fundless-view]]: FIXME
- [[Ignore Funds for operations|UseCases/FundAccounting#fundless-view]]: FIXME
### [[UseCases/Collaborating]] evaluation
- [[Simultaneous Editing of Ledger|UseCases/Collaborating#simultaneous-ledger-edits]]: FIXME
- FIXME: Other uses cases need rewrite.
### Evaluation of [[Double-entry Accounting|UseCases/DoubleEntryAccounting]] UseCases
- Does the system implement pure double-entry accounting? Yes
### Evaluation of [[TrackingDocumentation|UseCases/TrackingDocumentation]] UseCases
- Does the system [[link up to external documentation|UseCases/TrackingDocumentation#document-link-up]]? No
- Does it have a [[the ability to explore transactions via documentation linkage|UseCases/TrackingDocumentation#document-link-explore]]? No
### Evaluation of [[Handling multiple currencies|UseCases/MultiCurrency]] UseCases
- Does it support the concept of
[[a single functional currency|UseCases/MultiCurrency]], while still
permitting multi-currency entries? GnuCash has one currency per account, and whenever a transfer occurs between two accounts with different currency you specify the exchange rate.
### Evaluation of [[draft transaction|UseCases/DraftTransactions]] UseCases
- Does the system allow
[[generally for draft transactions|UseCases/DraftTransactions#draft-general]]
that can be later approved before officially being posted to the books? It does not seem so.
### Evaluation of WorkFlow UseCases
There is no specific workflow, GnuCash is a straight-up double-entry accounting program with report generation
- Is a [[specific workflow dictated by the system|UseCases/WorkFlow#workflow-dictated]]? No, it's very basic, single-user workflow.
- Is a [[the workflow configurable|UseCases/WorkFlow#workflow-configurable]]? No, not that I can find.
- [[Unaccrued Invoice|UseCases/WorkFlow#unaccrued-invioice]]? It does not seem so
### Evaluation of the [[Reading and Reporting API|UseCases/ReadingAPI]]
GnuCash can be configured to store the data in a PostgreSQL, MySQL or SQLite database, where you would have full access to all data from within another application.
### Evaluation of the [[Storage API|UseCases/StorageAPI]]
See above
### Evaluation of the [[Community Health|UseCases/CommunityHealth]]
- Is the [[license both determined as Free Software by FSF and OSI-approved|USeCases/CommunityHealth#license-approved]]? Yes
- Is the [[license GPL-compatible||UseCases/CommunityHealth#gpl-compatible]]? Yes
- Does the project
[[require assignment of copyright or a CLA to get code upstreamed|UseCases/CommunityHealth#no-cla-for-profit]]? No, does not seem like it.
- How many
[[active developers/companies contribute to the project||USeCases/CommunityHealth#dev-count]]? 11
* If there aren't many, how hard would it be to take over the project if needed?
- Is there good [[developer documentation|UseCases/CommunityHealth#dev-docs]]? Yes
- How easy it to [[engage as a developer with the community|UseCases/CommunityHealth#dev-welcoming]]? Public IRC channel, public mailing list, public source code repository, public issue tracker.