|
|
This week I installed GnuCash in a Linux box. It seems to me GnuCash is an excellent option for personal / small-business accounting (a la Quicken or M$-Money). But it's still not clear for me how we will integrate that, and what are the benefits to integrate GnuCash.
- XML: actually, when they say "XML" it isn't really something like SOAP or Web Services. They use XML as a way to store the data pretty much like Quicken uses the QIF format. What I mean is that GnuCash doesn't have an active DB behind it storing data. I. e.: GnuCash generates this XML file when the user clicks on the "save" button, and I'm not sure how this would work if we call GnuCash from the API. So, this XML file doesn't seem to be a good integration point to me.
- Database: only integration to Postgres is offered, and the main purpose is to enable multiple users sharing the same data storage. Still, this is not "active", meaning that the data is stored into the DB when the user clicks on the "save" button. The SQL Howto states that: The SQL code has been "finished" for many years, and hasn't been in recent active development. This means that the current SQL backend does not support some of the newer GnuCash features; in particular, it doesn't support the business objects needed for the business accounting.". Therefore this is not a good integration point either.
- Engine: the Engine provides objects basic financial entities. Even though we could integrate it through JNI (the Engine code is in C), the benefit of such integration is not clear for me: those "entities" are very simple, and seems like the functionality we are looking for is implemented by the business component.
I still need to learn more about the GnuCash source code. So far, it seems that accessing Engine through Java JNI would be the best integration strategy. We also have to seriously consider exactly what are the benefits integrating GnuCash: as far as I could learn, the only benefit would be that we would be able to use those basic financial entities...
-- FelipeAlbertao - 03 Oct 2003
|
|