This section may need updating !!!
It is possible to write reports if the current ones are not suitable. To do this
you will need to know Scheme (a LISP-like programming language), and it is an
excellent idea to have a copy of the
GnuCash source code available.
The reporting interface is documented in the source code file
src/report/report-system/doc/report-html.txt. The file
GnuCash source distribution provides a good example of how reports are
It is also necessary to access data from the engine to get information for your
report. This is performed by a set of Scheme wrapper functions that are documented in
src/g-wrap/gnc.html. Examine some of the other reports in src/scm/report for
an indication of how they are used.
At present, reports are produced by calling a HTML-generation API, which outputs a dialect of HTML and rendering this with a HTML widget. This has limitations, particularly when trying to align objects precisely, as might be necessary for printing onto pre-printed invoices for example.