SQL Backend

Josh Sled jsled at asynchronous.org
Sun Apr 30 10:14:00 EDT 2006


On Sun, 2006-04-30 at 19:50 +0800, Jesse wrote:
> Will the SQL Backend allow me to do this or would I be better off
> attempting to help improve the business features, or create a web from
> that accesses the xml direct? Is there any documentation on how gnucash
> structures it's xml files?

The SQL backend is very not supported right now. In particular, it never
supported the business objects.
http://wiki.gnucash.org/wiki/FAQ#Q:_Is_the_Postgres_DB_.2F_SQL_backend_supported.3F


Integration possibilities seem like:

- read/write gnucash xml directly.  It's usually never a good idea to
peek and poke under the covers of a program's datafile, but
realistically this is probably the easiest option right now.  The only
authoritative documentation is the source itself, see
http://svn.gnucash.org/trac/browser/gnucash/trunk/src/backend/file/ and
http://svn.gnucash.org/trac/browser/gnucash/trunk/src/business/business-core/file in particular.  As well, http://svn.gnucash.org/trac/browser/gnucash/trunk/src/doc/xml/gnucash-v2.rnc is a relatively readable and concise description of the xml schema.


- use the existing C API, linking against gnucash modules.  Then you
could load the datafile, manipulate objects and save the datafile back
out.


- wait for future development to use a SQL backend; this isn't too far
off.  [Note that I consider this to be as ill-advised as peeking and
poking through an application's datafile, but for some reason it's not
as bad... close, though.]


- wait for future development to expose better Application and Network
programming interfaces.


As well, there's a "human integration" possibility: you could change
your workflow to export sufficient data from gnucash to leverage
OpenOffice as -- effectively -- a better rendering/printing engine for
an exported Invoice report.

-- 
...jsled
http://asynchronous.org/ - `a=jsled; b=asynchronous.org; echo ${a}@${b}`


More information about the gnucash-devel mailing list