ANNOUNCE: QOF the query object framework

Linas Vepstas linas at linas.org
Sun Jun 15 12:34:39 CDT 2003


Hi,

I've just started the QOF "Query Object Framework" project on
sourceforge.  QOF consists of that part of the GnuCash engine
that isn't about accounting.  I started the project because 
I want to use the GnuCash query framework in another project
of mine (GnoTime), and after thinking about it a bit, it seemed
good to split it out into its own component.

QOF consists of Derek Atkin's Query objects, Rob Browning's
KVP trees, Bill Gribble's Numeric classes, Dave Peticolas'
GUID's & events, and my own fractured Backend, books, & sessions.
For now, I plan to keep the code in sync with GnuCash by hand.
I'm not sure how things will play out in the future; I have
no immediate plans.

The really big deal in QOF is the query framework.  I think its
unique: there is no code out there that I can google that provides
generic structured query functions for generic objects, without
forcing you to use SQL.  I think QOF can fill an important need 
for programmers who write apps that need to have reports, and 
are sophisticated enough to realize they need queries, and yet 
are not ready to convert thier app to an SQL app.

The other big part of QOF is that it can act as a cache for an
SQL backend.  Note, however, that this part is 'under construcion'.
Done right, it should make it easy to add SQL support for the 
Business Objects in GnuCash.  However, this work hasn't been 
started, and needs volunteers.  In particular, I'm hoping
that anyone who has contemplated the SQL re-write for GnuCash
can help in this area.

QOF compiles on my box, but I haven't yet checked in all the
Makefile.am & configure.in into CVS.  Hopefully, I'll have a 
version 0.1 out shortly. If any of the regular GnuCash developers
want developer access on sourceforge, let me know. 

http://qof.sourceforge.net

--linas
-- 
pub  1024D/01045933 2001-02-01 Linas Vepstas (Labas!) <linas at linas.org>
PGP Key fingerprint = 8305 2521 6000 0B5E 8984  3F54 64A9 9A82 0104 5933


More information about the gnucash-devel mailing list