[reportlab-users] Advice on switching from XSL-FO (FOP) to ReportLabs
David Fraser
reportlab-users@reportlab.com
Fri, 31 Oct 2003 16:24:01 +0200
Felix McAllister wrote:
> Hi,
>
> We're in the middle of developing a large ERP system, a big component
> of which is a reporting module. Early on, we chose XSL-FO and FOP to
> automate the generation of all our reports into PDF format. (We're
> using FOP because it is free: we can't afford expensive commercial
> systems). We have about 250 reports to do. The data comes from a SQL
> Server database in an XML format. Our experience with the 10 or so
> that we've implemented using FO has lead us to the following conclusions:
>
> 1. XSL is tedious to program in and difficult to debug.
> 2. Because of the limitations of XSL as a programming language, we've
> had do 'pipeline' the processing in certain cases to generate the
> end-result FO file. (XML -> XSL-1 | XSL-2 | XSL-3 -> FO file)
> 3. This makes the development time for a report quite long.
> 4. Reuse of code between reports is difficult or non-existant.
> 5. FOP is slowish. For most of the time, that doesn't matter (e.g. it
> takes 5 seconds on a server to generate an invoice). However, we have
> a couple of large batch jobs that will process tens of thousands of
> documents that must run within a 12 hour period. At 5 seconds per
> invoice, 20,000 of them will take 27 hours.
>
> We're currently evaluating other free and open-source tools. We've
> played around with the ReportLabs demos and are impressed, especially
> with the speed of execution, so we're asking if anyone familiar with
> the ReportLabs toolkit could give us some advice/pointers.
>
> Our main areas of concern are:
>
> * Reducing development time.
> * Increasing re-use among reports.
> * Increasing speed for batch processing ( although I don't think this
> will be an issue from what we've seen)
>
> Thanks,
>
> Felix McAllister.
Our experience with reportlab to generate reports dynamically over the
web is as follows:
- The API is good for creating reports, especially using Platypus
- The mailing list is a very helpful support resource, and it being open
source is wonderful - you can make changes/enchancements where
neccessary, and these are often included.
- There are some problems with auto-sizing tables that span across
multiple pages. This is an issue that we encountered because of
dynamically generating reports where we do not know column & row sizes
etc... There are discussions on how to resolve these...
Hope that helps
David