Easier custom reporting (maybe Lua)?
Sébastien de Menten
sdementen at gmail.com
Sun Oct 23 11:53:22 EDT 2016
Would it be feasible in gnucash to use the guile/scheme report system to
call an external process (a command line program) that would return the
proper html to display in the report ?
The external program could take arguments generated by the options system
of the report (the GUI that is used to customize a report).
If so, we could have a more open system for report generation. Piecash
could be used by pythoneers but others could use a mix of sql + any
external program to build reports.
Does this make sense ? Or are there blocking issues I am not aware of ?
On Oct 23, 2016 16:58, "Julien Cornebise" <julien.cornebise at gmail.com>
> Thanks John. You summarise the situation pretty well: somewhat of a lack of
> alignment between what I need and what the development team has time and
> interest for. I've genuinely thought of contributing a PR, and spent a few
> hours trying to find my way in the codebase some weeks ago, but to be frank
> at this point this is above my coding skills -- unlike less mature projects
> like MoneyManager EX, where I"ve been happy to contribute :
> https://github.com/moneymanagerex/moneymanagerex/issues/934 (yet the
> quality there is not ideal, not enough to want to switch away from
> I imagine the rather arduous aspect of Gnucash's code, and the diverging
> interests of the dev team with some of the more mundane users, might be
> what could push a user to write an external library. It's a bit sad: I'll
> be writing my own external scripts (with the API or with PieCash) for
> reports, but as you say these can't be integrated in Gnucash, and therefore
> they will not be a contribution to the Gnucash ecosystem.
> On Sun, 23 Oct 2016 at 15:48 John Ralls <jralls at ceridwen.us> wrote:
> > > On Oct 23, 2016, at 3:46 AM, Julien Cornebise <
> > julien.cornebise at gmail.com> wrote:
> > >
> > > Dear Gnucash team
> > >
> > > Is there a simpler way to build custom reports than learning Scheme?
> > E.g.,
> > > what would it take to add Lua support?
> > >
> > > I'm trying to create various custom reports on my account [to handle
> > joint
> > > accounts and shared expenses], and find it somewhat complicated -- eg.
> > > compared with MoneyManagerX, which uses SQL+Lua (
> > > https://github.com/moneymanagerex/general-reports).
> > >
> > > I love GnuCash's precision and its ecosystem (great forum, great chat,
> > > great doc), but would be so much happier if I could customise on a
> > week-end
> > > and contribute back...
> > >
> > The easiest way to generate custom reports is to save to SQLite and then
> > query the database with SQL.
> > There are also Python bindings to the GnuCash C API which you can use to
> > query data and generate reports, or you can as Sebastian suggests use his
> > PyCash python library to access the data.
> > But if you want to add reports that are displayed inside of GnuCash then
> > Scheme is at present the only way. We'd like to change that but there's a
> > lot of work that has to happen first and there aren't a lot of people
> > working on it.
> > We're not at all interested in adding another interpreter to GnuCash; in
> > the very long run we'd like to get rid of the one we have. API bindings
> > another matter, though. We use SWIG to generate the bindings, so if SWIG
> > supports Lua it shouldn't be too hard to add Lua bindings. That still
> > get access to the bits of GnuCash written in Scheme because SWIG only
> > on C and C++. The development team doesn't have time (or frankly
> > to do the work, but we'd be willing to consider a pull request.
> > Regards,
> > John Ralls
> gnucash-user mailing list
> gnucash-user at gnucash.org
> Please remember to CC this list on all your replies.
> You can do this by using Reply-To-List or Reply-All.
More information about the gnucash-user