Web interface for gnuCash
Neil Williams
linux at codehelp.co.uk
Mon Jul 4 15:15:07 EDT 2005
On Monday 04 July 2005 6:09 pm, Derek Atkins wrote:
> Hi,
>
> I think it would be a lot of work to implement a web interface
> frontend for Gnucash.
Personally, I think it would be more reasonable to implement a data access
interface in HTML/PHP/Perl than to replicate the entire program. QSF could
help here - much like I'm planning on doing with Palm / Psion applications -
create an interface that can handle GnuCash data as QSF XML or just handle
certain elements, like creating invoices or transactions. This would parse
XML exported from GnuCash and then output modified XML that GnuCash could
merge back into the main data file(s).
It's important that the data is merged rather than simply hacked into the
existing storage. The user must have control over how any conflicts are
handled.
This kind of abstraction / separation is useful because it frees each program
to do what they do best without artificial restrictions on "it must do X this
way because that's the way GnuCash does it" which would inevitably result if
you tried to access GnuCash storage directly.
The reality is that a www front-end for GnuCash cannot work as GnuCash works.
It must work within the confines of the www interface itself. This sounds
obvious but the effects percolate down through the entire design. The more
you think about the design, the more you realise the subtlety of the changes.
QOF-generator is a start in this direction. There will be a Perl parser for
QSF XML and a PHP one will follow. That should allow any PHP script to accept
GnuCash data. Probably use some form of MySQL database for temporary storage
and cookies, sessions, etc., for data processing and then write out more QSF
XML.
http://qof-gen.sourceforge.net/
This is purely theoretical at this stage, it's a nice idea and I'd support
anyone who wants to give it a go!
:-)
Derek is spot on, it could be a huge amount of work, depending on how *much*
of current GnuCash functionality is supported in the www data interface.
With the Palm applications, I'm planning on supporting existing open source
finance applications for the Palm and providing a QOF/QSF conduit via
pilot-link. The logic is already implemented and therefore my task is
considerably easier. Even so, there is virtually 0% chance that any of this
will be supported by the time G2 is released - more likely it will develop to
it's own timetable once G2 is out and my time becomes my own again!
:-)
> There is a lot of business logic in the UI.
> The "database" has no logic at all, it's just a data storage system.
This is the real challenge - handling complex GnuCash data within the
relatively simplistic handling methods available over www. Parsing and
exporting QSF XML would be the easy part. The particular difficulties relate
to how one object (like a transaction) is related to another (like an
account). This can be difficult to replicate outside C/Scheme.
--
Neil Williams
=============
http://www.data-freedom.org/
http://www.nosoftwarepatents.com/
http://www.linux.codehelp.co.uk/
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
Url : http://lists.gnucash.org/pipermail/gnucash-devel/attachments/20050704/4cc037cf/attachment.bin
More information about the gnucash-devel
mailing list