Report designer

Hi there,

I’m about to embark on writing some kind of report designer/generator in
Rails and was wondering if anyone had done anything like this before and
could give me some pointers. The output format will usually be CSV.

It seems to me that the process can be split up into a few separate
parts.

  1. Data gathering. I am planning to do this by letting the user define a
    set
    of ‘rules’ which each return a bunch of objects, similar to what Trac
    allows
    you to do. The data to be used in the report can be retrieved by joining
    the
    result of all the rules. I’m not convinced this is the best approach.

  2. Layout. For CSV, this is simply the columns they want to have
    displayed.
    This could be done with a bunch of pre-defined columns that they can
    tick,
    or possibly generated from the columns of the model. I also may allow
    advanced and trusted users to define columns with snippets of Ruby code.
    Very dangerous I know, but it might be worth it.

  3. Generating the CSV. Pretty straight forward. Could use Ruport for
    this.

Any advice, links to existing projects etc… would be most
appreciated.

Thanks,
-Jonathan.

Take a look at ActiveWarehouse:
http://rubyforge.org/projects/activewarehouse/

This is an open source plugin for Rails which helps with the creation of
data warehouses. One part of that is the presentation of the data
including
support for drill down on both axis of the report. The project is fairly
new
but I should be coming out with a first release in the next week or two,
once I’ve fixed the auto aggregation functionality.

It may not be exactly what you are looking for, but feel free to email
me if
you have questions or if it is of interest.

Sincerely,
Anthony E.