GNUe Reports: A tool of the GNUe Project (www.gnue.org)

Introduction
------------
GNUe Reports is a platform and output-independent reporting system. It reads an
XML-based report definition and generates arbitrary XML output that can further
be translated into any format for which there is an adapter. GNUe Reports
currently has outputs for Text, HTML, Label Stock, and CSV -- with PDF,
Postscript, and Gnumeric/Excel formats in the works. Reports can output directly
to a file, as an email attachment, to a printer, or to a HylaFax server.

Overview
--------
GNUe Reports is a data transformation and output tool. At its most basic
level, GNUe Reports transforms database data into arbitrarily complex XML.
This XML can then be transformed into whatever format desired.

GNUe Reports can output this XML directly to a file (for processing by
another program), or it can process the XML into its final format all from
the same command. For this extended functionality, GNUe Report implements
Filter Adapters and Destination Adapters.

Filter Adapters take the resultant XML and process it in some way.  The
currently supported Filter Adapters are:

  * sablotron   Uses Sablotron to perform XSL Transforms.  A "filter"
                XSLT script can be created that transforms GNUe Report's
                XML output into another XML output (e.g., Abiword's XML,
                XHTML, or some form of custom XML) or text output (Plain
                Text, CSV, Postscript, etc.)  There are currently examples
                for XSLT scripts for HTML, plain text, and CSV formats
                (and the beginnings of KSpread and Gnumeric support.)

  * merge_rtf   This specialized adapter takes a template RTF file and
                merges it with GNUe Reports' XML to create a merged RTF
                file. The template RTF is a normal RTF file with any fields
                denoted as ::field:: (two leading and two trailing colons.)

Destination Adapters define various output mechanisms for GNUe Reports.
There are four primary adapter classes, File, Email, Printer, and Fax.
There are currently adapters for sendfax, bsd lpr, and HylaFax's sendfax.
It is trivial to add a custom adapter to GNUe Reports specific to your
setup.

Given the two adapters, all of the following scenarios are currently
supported using a single report definition:

  * Print out a hard copy of a report,
  * Fax a copy of a report to a client,
  * Email an HTML version of the report to a coworker,
  * Save the report as a comma separated (CSV) file to load into
    your favorite spreadsheet program.

Of course, any combination is supported, even combinations that make little
sense (e.g., faxing a CSV version of a report)


Installation
------------
For installation and configuration instructions, please read the
file INSTALL.

Compatability
-------------
GNUe Reports is known to work on the following platforms:
  * Debian GNU/Linux 2.x/3.x
  * RedHat Linux 7.x

GNUe Reports should work without issue on any Unix-compatable system
for which Python is available.  This applies to most modern (and some
not-so-modern) distributions.  It should also work on ANY platform for
which Python is available, but the gnue.conf may need to be tweaked for
these platforms (i.e., MacOS, MS-Windows, et al.) -- especially the
LprCommand and similar options.

License
-------
GNU Enterprise is free software.  See the file `COPYING' for the terms and
conditions for copying, distribution and modification.
