You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@cocoon.apache.org by Bobba Fett <st...@hotmail.com> on 2003/07/24 02:58:32 UTC

Very Dynamic XSP

I'm new to XSP, and have a pretty in depth question.  Any help is appreciated.

I am working on reporting tool.  The maintnance will come in the adding of new reports.  Typically these reports will be very simplistic, represented by an html table in a simple rows, cols format.  The cols will represent the fields and the rows the single or multi level aggregation of the data.

An example would be a document report.  The agg is an individual document, and across the columns we will have unique id, document location, author, and owner.  For another style document report we may also want to display the manager, but not the author.

I don't want to write a new xsp for every single report we come up with because there will be very many.  My solution is to come up with a xml file called a report definition.  Ideally, with the addition of one of these, I can direct a hit at report?rpt=doc_1 (the report def) and it will generate the report with what I want.

A simple report def would be
<report>
 <name>Document report type 1</name>
 <desc>This report displays.....</desc>
 <columns>
  <column>UniqueID</column>
  <column>Author</column>
 </columns>
</report>

I would like to simply add a report def and get a new finalized report.  So I've come up with a basic layout of what this might look like.

User -> Report Def (FileGen) -> QueryXSP (XSPGen) -> XSLT (Trans) -> HTML (Serial)

But I don't know how to use the Report Def information in the QueryXSP.  
I have the query working and putting out the desired fields, but it's currently static, aside from requestQuery that I pass it for fun.

One more thing.  These reports must be bookmarkable, in order words all criteria and vars when constructing this must appear on the location bar.

I also considered

User -> Report Def (FileGen) -> ToXSP (XSLTTrans) -> QueryXSP (XSPGen) -> Format (XSLTTrans) -> Viewable (HTMLSerial)

What I mean by that is actually writing a XSLT to transform the Report Def into QueryXSP and then somehow call it as a generator.  Not sure if that's possible but it seems like it would use much more overhead.

Is there a better design for what I am doing?  I'm trying to put in the time now instead of later, writing hundreds of XSPs.  BTW I don't expect to get away with 1, but perhaps 1 for each very general type of report.

Any help is greatly appreciated.

Aaron Gadberry