Beta
×

Welcome to the Slashdot Beta site -- learn more here. Use the link in the footer or click here to return to the Classic version of Slashdot.

Thank you!

Before you choose to head back to the Classic look of the site, we'd appreciate it if you share your thoughts on the Beta; your feedback is what drives our ongoing development.

Beta is different and we value you taking the time to try it out. Please take a look at the changes we've made in Beta and  learn more about it. Thanks for reading, and for making the site better!

Reporting Functionality for Web Applications?

Cliff posted more than 13 years ago | from the pretty-pages-for-PHBs dept.

Technology 164

Geoffrey Wiseman asks: "I'm considering my options for reporting functionality in a web application. Part of the problem stems from the fact that I'm not aware of a good solution for reporting on any web platform. It may well exist, but I haven't seen one yet. So let's start with the general questions first: I need the ability to build reports from data. The formatting has to be pretty solid, including the ability to make use of appropriate fonts and page breaks. Further, I'll likely need to do some batch reporting, so it has to be able to generate, say, a few hundred pages of reports, with formatting, in a reasonable time frame. That makes HTML and browser printing a little ... underpowered."

"It's not vital that the reports be printed from the client machine (as opposed to the servers), but that would be preferable, for flexibility. At the very least, the person initiating the reporting should be able to choose an appropriate network printer on the server's network, but ideally a client network printer would be better.

Of course it would be nice if the reports were relatively easy to build; I would prefer not to have to write a ton of source to gather and format data. I'd prefer not to have to write any, really. The kind of drag-and-drop report builders you get with something like Microsoft Access would be nice, although it's not a requirement.

First of all, what are the thoughts and solutions on this general problem space? What tools can I make use of to really do this kind of thing well in a web application space.

Secondly, considering that I'd prefer to make use of J2EE for the project, what are some of my options for integration with J2EE. It would be nice if the reporting software could integrate with the object model rather than the database, so that I could re-use business logic. Not necessarily critical, but definitely a nice-to-have feature."

cancel ×

164 comments

Sorry! There are no comments related to the filter you selected.

Use PDFLib (1)

Anonymous Coward | more than 13 years ago | (#250497)

Having faced a similar situation myself, I ended up using PDFlib [pdflib.com] . It's a nice high level API for generating PDFs on the fly. Now my clients can get printer quality reports generated for them dynamically off the web. I used it in conjunction with Perl. But it supports bindings to other languages (including Java) as well. It's not free, but it's quite affordable compared to most other PDF generation software out there.

For Java based PDF generation try iText (1)

Anonymous Coward | more than 13 years ago | (#250498)

Have a look at iText [lowagie.com] for generating pdf in a Java environment. It isn't going to give you the 'drag and drop' report building, but it seems to be one of the most capable pdf libraries for Java.

Re:Not Difficult - Crystal Reports (1)

Anonymous Coward | more than 13 years ago | (#250499)

Definatly Crystap reports. I have used it for reporting off of text files , fox pro databases, SQL, custom databases, etc... Easy to use, lot of re-usuability for search and reporting functions, fully automated if you do it right, able to publish to web, on, and on , and on....... Hey, can you help me out and tell me if there is a program out there to copy files.

Re:Long printed reports are obsolete, deal with it (2)

Anonymous Coward | more than 13 years ago | (#250500)

Welcome to our planet. You'll find the grass green, the sky blue and the clouds white n fluffy. Rainfall varies dependent on location and most of the natives are friendly. You'll find our reality a little different than what your use to, deal with it.
I hope you enjoy you stay on our little blue world.

Crystal Reports (2)

Anonymous Coward | more than 13 years ago | (#250501)

I've had extensive experience with web-based reporting solutions (implemented Crystal as part of a major CRM package and did extensive research on all the others, *nix and MS based). Just because you're doing web reporting doesn't mean you have to use HTML. And web-based reporting it's a helluva easy distribution solution. Crystal is probably your only good bet. Their licensing is steep if you have a need to go beyond their basic license, but it scales well and has support for just about every database solution you can think of.

You can implement two basic kinds of reports. Pre-generated report files, a link to which opens Crystal's web-based viewer(Java, ActiveX or HTML). and custom-data reports which allow you to modify the data displayed based on input from the web page (on-they-fly modification, replaccement of the SQL) as well as reports (the format of which) is generated on the fly. You can also (from the web) export(in just about any format you could want) and print. All formatting, etc. is preserved(when not using the HTML viewer).

And of course, Crystal Reports generation creation tool for Reports is very nice. better than any other I've seen and the only one useable by non-tech savvy people. Of course, if you're wedded to a *nix-based solution, you're pretty much left to code your own, and god forbid someone not of your programming staff needs to generate the report formatting.

What really scares me (2)

Anonymous Coward | more than 13 years ago | (#250502)

What really scares me about this question is the request that the solution somehow use J2EE. The merits of J2EE aside this statement tells me that the person is more interested in finding a interesting problem for this exciting new solution that they have. This backassward approach to IT is what gets so many projects into trouble. The analogy is buying the biggest, baddest hammer in the world cause all of the market reports and trade publications say it is the best hammer to be had bar none, and then trying to assemble electronics with it. If you want to solve this problem 1) Define the problem 2) Select a possible solution 3) Examine the solution to see if it is reasonable in your enviroment 4) Repeat steps 2 and 3 as necessary 5) Confirm that the problem is still the same as before, if not repeat steps 1 - 5 6) Select an apporpriate technological solution to the problem 7) Confirm that the problem is still the same as before, repeats steps 1 - 7 if not 8) Implement the solution. 9 Confirm your implementation solves the problem that you originally were trying to solve. If not check to make sure that problem stil exists and if so, and you have not solved it repeat steps 1-8

Ultimate Solution (3)

Anonymous Coward | more than 13 years ago | (#250503)

Please read this post in Pakistani accent.

First of all, all of the solutions being mentioned here are useless if you need to genrate more than a few hundred pages per report. Apache FOP for instance explodes at 60-100 pages depending on content (Any bad xml/xsl transform tool will do that to you, its called running out of heap by way of using xsl on a huge xml document). If money is no object, I suggest you go for Actuate (http://www.actuate.com/) They have the best reporting server solution out there, it allows complete formatting control with a GUI builder, support for a VBScript like language in addition to Java and extremely neat control over data sources. From my experience extremely scalable too. I generate over 3 gigabytes of PDF reports every night for hundreds of clients in addition to an interactive report generation system that creates PDF output on the fly.

If money is an issue (what!! you cant afford a $80K/Processor 8 Processor recommended solution? what are you working for? a .gone?), you need to stick to your code monkeying skills, PDF format is documented very nicely by Adobe, its pretty straight forward. Write a C/C++ deamon that listens for messages on a queuing server and generates PDF files on the fly based on message queue parameters, records its activity in a table and listens to the queue again. This works for both interactive and batch mode operations, your servlets or cgi or php or perl scripts will look up the database for finsihed reports and their PDF locations on the file server, stream it over to the browser as is. As for queuing solution you can use MSMQ, MQSeries or even a home grown database base queueing engine which won't be asynchronous but will do the job if you create a thread that checks a queue table in a dbms every so often and does the trick.

Hope I helped you solve the problem
If not, give me a shout at optimizer@hotpotatoesmail.com and I will be happy to assist you.
You will need to be able to wire money to Pakistan :) To email me, remove potatoes from my address.

Faraz Babar

Use JReport from JInfonet (2)

Chevyboy (4475) | more than 13 years ago | (#250508)

This tool can generate report in html, text, pdf, excel, rtf and other formats. I use it for a big intranet project and it works perfectly.

Re:Long printed reports are obsolete, deal with it (2)

Jeffrey Baker (6191) | more than 13 years ago | (#250509)

Welcome to MY planet, jackass. The trees on my planet sink CO2, produce O2, provide habitat directly or indirectly for most known land animal species, hold the soil in place, and generally keep the ecosystem humming along. Chopping them up for reports about some business, which will have no lasting value for humanity, is not an appropriate use of trees.

Re:Long printed reports are obsolete, deal with it (2)

Jeffrey Baker (6191) | more than 13 years ago | (#250510)

Hey, I'm trying to do my part. My computer averages 10W power consumption, which I believe to be on the left tail of the power consumption histogram. You're right about the energy: the US uses way too much energy, and it generates it in too-dirty ways. I'm all for nuclear fission, thermal solar, and wind. I abhor coal, oil, and natural gas generation. But, I don't currently have the billions of dollars, nor the political pull required to get that stuff changed. What I can do is advocate paperless reports.

I'd like to see the numbers on it, since you are interested. How much fuel is required to haul a tree to the paper mill? Produce the paper? Ship the paper to retail and the to the customer? Then what, is the above poster going to pay fedex to burn massive amounts of jet fuel to overnight the precious report somewhere?

This useless waste of energy has to stop. Check out today's SF Chronicle: Californians use 15 megawatts of power just to stir the water in their fucking swimming pools [sfgate.com] . WHAT THE FUCK ARE WE DOING WASTING SO MUCH ENERGY?!?!

Actuate (5)

Jeffrey Baker (6191) | more than 13 years ago | (#250511)

Sounds like you want Actuate e.Reporting Suite [actuate.com] . Hopefully in the future you will realize that 1 second spent with Google is equivalent to 1000 Ask Slashdot posts.

Anyway my personal opinion is that HTML is wrong wrong wrong for this stuff. Generate TeX output and convert to postscript, or *roff, or generate postscript directly. If the target is dead trees you should use dead-tree-era technology.

Re:Long printed reports are obsolete, deal with it (1)

Moonwick (6444) | more than 13 years ago | (#250512)

Fortunately, and it seems you don't quite realize this, trees are an incredibly renewable resource. We're not going to run out anytime soon...

PHP 4 and [pdf]LaTeX (1)

hholzgra (6914) | more than 13 years ago | (#250514)

We use the output buffering feature available in PHP 4 and pdfLaTeX for this Task (especially the LaTeX longtable style).

It is not to fast (~1-2 pages a second),
but for reports this should be fast enught IMHO.

Documentation on this is right now only available in German, but if you push me hard enough i'll translate it ...

PHP and PDF (2)

mattkime (8466) | more than 13 years ago | (#250516)

PHP 4 does include PDF functions.

http://www.php.net/manual/en/ref.pdf.php

Or, its seems that people always forget that you can write postscript files by hand. : )

Jinfonet seems nice (1)

cornice (9801) | more than 13 years ago | (#250517)

Try http://www.jinfonet.com/

I had a similar requirement about 18 months ago. I checked out Jinfonet and it seemed pretty nice. I had no budget so I instead used PHP, and LaTeX and some TeX to PDF converter. It was nice since I could offer the option to output to a printer, view a couple pages in HTML, view the whole thing in PDF or export to CSV. I used the largetable macro in LaTeX I think. The output was quite nice but I didn't have time to mess with formatting very much. It wouldn't have been too hard to create several templates. Now I'm stuck with an NT system using Crystal Reports. It's quite nice to design in but not as fast or fun as before.

PHP can massage your data and output to either or. (3)

crovira (10242) | more than 13 years ago | (#250518)

A php script can read files on the server (or submitted by the client,) massage them into the appropriate format.

If you use XML you can really go to town on the data, and ignore what you don't need, generate a PDF (or HTML with XSLT but that's less transportable and controling page formatting is more explicit [you'll have to do that work yourself.])

The client web browser can then load the HTML or the PDF and use Acrobat to view & print to their heart's content.

A step at a time... (3)

James Ojaste (12446) | more than 13 years ago | (#250520)

There are a few solutions out there for generating web-viewable reports but I don't particularly like them (Crystal reports has caused a number of headaches around here in particular).

You need fonts and page breaks? Just about anything other than raw text can do that (yes, even HTML). I use HTML/CSS for all my reports (ranging from crosstabs to listings to canned documents) - how you generate it is wide open.

Hundreds of pages worth of reports at once? If your reports are that large, you probably don't even want to deliver it to a browser. Some sort of server-side report queue would seem to be in order (ie the user requests a report and if they need to download a copy they come back and pick it up later when it's done). If you're printing from the server, just pick and choose your tech.

Drag-and-drop? Well, I far prefer building reports in HTML than in something like Crystal (which is what Access uses, by the way) - I hate mucking around with field alignments/sizes etc. I find that things go a lot quicker for me with HTML (CSS helps tremendously).

I'd really recommend reviewing your requirements. Is *anybody* really going to read hundreds of pages of reports? Perhaps you should be building a more flexible query tool so that your users can get the specific data they want without having to wade through mammoth wads of paper?

Re:reporting (1)

JTFritz (15573) | more than 13 years ago | (#250522)

XML is definitely the way to go. The XSLT stylesheets that you could generate can take you very far. Make sure you look into XSL:FO.

In particular, take a look at the XML Apache Project's FOP [apache.org] .

FOP, which is written in Java, will transform your XML data into PDF format.

reportlab (3)

platypus (18156) | more than 13 years ago | (#250523)

open source and very nice
www.reportlab.com [reportlab.com]
Check the demos.
Really, it's cool

Re:Long printed reports are obsolete, deal with it (1)

headkick (24083) | more than 13 years ago | (#250525)

I appreciate your zeal to blast everyone into the 21st century, but there are still many entities that cannot think outside of the "dead trees in a metal box" box.

Who, you ask? Dealing substantially with the public sector, I would have to say government agencies. They still view computers as a way to streamline form and report generation, provided that they even use computers at all. To boot, government is just now getting the "it's gotta be on the web" bug. Their bottom line is "...and if it doesn't come in triplicate so that I can stuff it into a filing cabinet, I can't use it."

Re:Long printed reports are obsolete, deal with it (1)

headkick (24083) | more than 13 years ago | (#250526)

Then use hemp paper. Tree based paper has been around for less than a hundred years.

Crystal Reports++ (1)

Mdog (25508) | more than 13 years ago | (#250527)

The company I interned at last summer, Dynalivery [dynalivery.com] , focuses on web based reporting. Their main product is an enhancement to crystal reports called parallel crystal which makes it into a "web application." Not sure if their product is exactly what you're looking for, and I need to study for finals instead of actually reading your slashdot post fully, but I thought I'd suggest it.

Good luck,

Mike Hunter

Re:No page breaks in HTML (2)

Brento (26177) | more than 13 years ago | (#250529)

As far as I know, you cannot control page breaks via HTML inside a web browser.

You can kind of cheat with table row counts and style codes. In plain English, if the number of rows so far is greater than, say, 50, put in STYLE=page-break-before:always. v4 & above browsers honor it, if I remember right.

Re:Long printed reports are obsolete, deal with it (2)

Brento (26177) | more than 13 years ago | (#250530)

Computers are everywhere; if your office is set up reasonably well

Oh, I wish. We have a similar setup to what the original poster has: we have to generate huge reports for our clients, most of which aren't able to get high-speed internet access. (We scan comment cards for hotels, restaurants, etc.) They want consolidated reports with color graphs explaining their customer satisfaction trends. We make all of the reports available on the internet, but people just don't want to see them that way. They don't have the time to download 100 pages worth of reports with color graphs over a 33.6.

Reporting with Crystal, PDF's, and GB's of data (5)

Brento (26177) | more than 13 years ago | (#250531)

I've got a group in-house that does almost exactly what you're talking about. There's a lot of people on here spewing off about Crystal and PDF's, so let me give you more details on what worked for us.

We have a few large (2-5gb) databases that we have to report on. Most reports are generated on a periodic basis, but we've got a few that have to be done on-the-fly when the user requests them. The formatting has to be flawless, and we print out reports on color lasers as well as make them available for download.

The solution (picked long before I came on board) was Crystal Reports. Whether you like Windows-based development tools or not, you have to admit that it's easier to hire a Crystal person off the street than it is to hire & train for any other report writer.

To give you some idea, we have a dedicated Crystal person on staff, and several machines that churn out Crystal Reports full time. (We keep five Tektronix color lasers busy for most of the day.)

The same Crystal Report files are used whether the report is going online or being printed. In fact, we print to PDF format, and save the PDF's. Before you get one of our report packets in the mail (or FedEx or whatever), you can view the same report online in your web browser, and it prints out perfectly. Plus, there's no CPU/database load on our servers - each report is run once, and stored on hard drive.

For the reports that are done on-the-fly, we use the Crystal Reports viewers. There's several, a Netscape plugin, ActiveX plugin, and a Java plugin. You have to redirect your web users to the right page for your browser, of course. But for these on-the-fly reports, PDF isn't involved. They can print using the Crystal plugin, and page breaks and everything work fine.

I understand why a lot of people on here throw out solutions like XML, but my experience has been that spending more money on the famously well-used tool usually means spending a little less money on the hiring end later. When this becomes a big business (and aren't you planning for that?) you want to be able to hire quickly, and nothing's more widely used than Crystal Reports.

If you've got any questions about the setup, you can e-mail me.

Re:BRL with LaTeX (1)

topham (32406) | more than 13 years ago | (#250534)

I haven't used LaTeX, but I can agree with you that a text based solution is quite workable.

I've used text based reports in a variety of enviornments, with, and without ReportGenerators in the sequence and straight text is always flexable. You can readily convert it to a format which is what the end users want. (PDF is very nice for 'laser like' output. It looks exactly like it will print. The viewer is easily integrated into the browser, and the viewer is free. (major bonus if the website is publicly accessable).

If you use Python... (1)

Tulip (32922) | more than 13 years ago | (#250535)

If you use Python, you might want to have a look at ReportLab [reportlab.com] , a nice open-source PDF generation library.

Hmmm...printing (1)

zmooc (33175) | more than 13 years ago | (#250536)

Printing from a webapplication can be a problem. At least it was for me; I failed to find a reasonable way to print from MSIE without the stupid page headers. Another problem is that you cannot predict anything about the formatting on the server-side (unless it's plain text). So you will most likely need a client-side application (or print from the webserver).

I solved part of this problem by creating a new MIME-type for the page to print and then create a DOS-app which does `type %1 > lpt1:' which I associated with the MIME-type/extension.

This is not a very good solution. Maybe someone has expierience with this? Is it possible to use a Java-applet or something like that?

for generating printable documents (1)

gimpboy (34912) | more than 13 years ago | (#250537)

you might want to look into a latex/php/xxsql combo. you could construct a template like class file and then yank the info out of a database run latex on it, convert the output to postscript and dump it to a printer. the interface could be done in php. using java you could setup some type of drag and drop thing to tell it what format the data should be in. it would take quit a bit of work, though

use LaTeX? want an online reference manager that

"Web Platform: WebObjects" (1)

kwerle (39371) | more than 13 years ago | (#250539)

For WebObjects [apple.com] I'd say the prefered solution is ReportMill [reportmill.com] . It's what we're using...
(For what it's worth, WO 5.0 (due any time) is supposed to be Java only)

Re:CrystalReports??? (1)

M-G (44998) | more than 13 years ago | (#250542)

Parallel Crystal picks up where Crystal Reports starts having problems. Since you've already invested effort into building reports through Crystal, Parallel Crystal would be a great way to improve your reporting performance.

www.dynalivery.com [dynalivery.com]

Look at Parallel Crystal... (2)

M-G (44998) | more than 13 years ago | (#250544)

If you're not averse to having one component of your solution running on NT or 2000, and need this for a big n-tier solution, consider Parallel Crystal [dynalivery.com] . It uses Crystal Reports to design the reports, then runs them on a scalable report server which integrates into a Java web application server. Output can be to a number of formats, including PDF.

Re:What about using XML/XSL? (1)

ThePixel (47166) | more than 13 years ago | (#250545)

I have done the same thing, but I would really like to be able to have better pagination options than those provided in HTML.

I would LOVE to be able to take my XML datasets, and convert them using XSLT into a PDF somehow.

anyone know how?
.e.
www.perceive.net [perceive.net]

Crystal Reports is the old standby (1)

curtisg (63391) | more than 13 years ago | (#250547)

Crystal Reports [crystaldecisions.com] is the old standby solution. It's highly irritating, but it works, and you can drive down the street and pick up people to write reports for it. The web-based reporting works best on Windows, but it also has a Java client that works passably well.

If you happen to be using WebObjects, then ReportMill [reportmill.com] is an excellent solution. They are working on a non-WebObjects version.

Re:Long printed reports are obsolete, deal with it (5)

Spasemunki (63473) | more than 13 years ago | (#250548)

First of all, this seems to dodge the question. I think we can rely on the poster to know his needs. Secondly, paper reports are obsolete only if you like having your eyes cross. The current state of the industry in data display technology means that most folks have monitors that are ill-suited for long term reading. Even if you have a nice setup with a laptop that you can move around, there still isn't a lot done to prevent 'screen eyes'. People blink less when they use computer screens, and have less control of the distance between them and the screen. The result is that reading long sections can be quite dreadful. For hard contact wearers, there's nothing quite like blinking after your eyes have dried out, thus scraping the contact along your dusty eyeball.

So until there are some better, lighter, and more eye-friendly solutions to reading through computers, paper will still have a place in and out of the workplace.

"Sweet creeping zombie Jesus!"

we do that (1)

bendawg (72695) | more than 13 years ago | (#250554)

Our company does that, except they are all in house applications. I could tell you how to do we do it, but then I'd have to kill you.
Oh god, you know too much already.
~@#$F~-connection terminated

Re:htmldoc (1)

drapak (74492) | more than 13 years ago | (#250555)

I have to second this. If you are comfortable coding in HTML, and simply want the typographical and page control that lacks in browsers, HTMLDOC is a brain-dead easy way to generate consistant PDF files from HTML. I use it a fair bit myself, and appreciate it's directness.

htmldoc (1)

uncadonna (85026) | more than 13 years ago | (#250558)

http://www.easysw.com/htmldoc/
Easy, lightweight, quick HTML -> PDF .

Maybe... (2)

Greyfox (87712) | more than 13 years ago | (#250560)

Webapp to XML
jade(xml) to pdf
ipp(pdf) to printer(remote or local)

Most of your network printers have or are adding IPP and PDF capability, though I'm sure you could just as easily translate your document to PostScript. Fonts shouldn't be a problem, just use the ones on your printer. PDF is handy because you can also kick it around a lot more easily than other document formats, although it does have the problem of being mostly write-only.

Just some thoughts. Hope they help.

Hi Slashdot, can anyone do my job for me? (4)

Chairboy (88841) | more than 13 years ago | (#250561)

Hi slashdot! My boss has asked me to write an extension to our defect tracking system in Perl. Please e-mail me the code for this before 5 PM pst so I can make it home in time to catch The Simpsons.

Please, no confusing external libraries other than CGI.pm or Win32 ODBC. Oh, I heard that printf is gay, so please don't use them.

Thank you!

Re:Crystal Reports (1)

CodeMunch (95290) | more than 13 years ago | (#250562)

I'm glad I'm not alone in this world - I really enjoyed that option althoughI wish they woulda had more music selections under rock or changed the selection more often. In two years, I had called about 10 separate times (v7 CRPE was a PITA on the web) the rock lineup had changed once.

--Clay

Crystal Reports (2)

matt-fu (96262) | more than 13 years ago | (#250565)

A lot of people are saying that Crystal is the goods. I would like to add that in addition to having decent tech support, the hold music system is without a doubt the best I've ever experienced. You dial in, pick your favorite music genre out of four or five, and listen to some pretty decent examples of those genres while waiting.

Actuate (1)

Hurricane_Bill (96738) | more than 13 years ago | (#250566)

take a look at the Actuate web reporting. I work for a software development company, that uses both Actuate and Corvu as 3rd party reporting solutions. Acuate by far has some awesome web capabilities. It's a very sophisticated product, and will probably require some consulting to get it up and running. Once it's up, though, it is a very simple tool for generating complex reports

We wrote one... (2)

alexhmit01 (104757) | more than 13 years ago | (#250567)

Our clients needed central control of the database and reporting, so we wrote a report generator. Our PHP System includes tools ror administering your database (the data side, not the DBA side) so anyone with a browser (and obviously a valid password) can do it. We wrote a report generator that you enter the SQL, it generates the report. If you want it printable, you click on the "export to excel" option, and it loads the thing up in Excel (gotta use IE for our admin, Netscape's busted CSS/DHTML support screws it, and Netscape 6/Mozilla isn't there yet), and they can print. As an added advantage, the Excel format is trivial.

Excel can read tables, you just set the content type. If you need fancy formating, plug it into the PHP source.

If you don't want to code, there are dozens of programming shops that will develop a system for you for a reasonable fee.

You don't want to spend money or effort? Well, you're in trouble. Labor isn't free. Do it in house or hire someone. Some of our baselevel systems (including our DB class, which can help you abstract your DB from the engine, you'd need to write your own if you aren't using Postgres or MySQL) are available on our website. If you want to hire us, e-mail myself or sales@feratech.com.

Alex

reporting (5)

The_Messenger (110966) | more than 13 years ago | (#250568)

While obviously your situation may preclude it, I've always found Perl's built-in formatting capability to be incredibly easy to use, and it also performs nicely. It's so nice that I've often gone through the trouble of adding a Perl reporter to my C++/Java/et cetera applications. They don't call it "Practical Extraction and Reporting Language" for nothing. (Then again, they don't call it "Pathologically Eclectic Rubbish Lister" for nothing, either. ;-)

Regardless of the program you use, try to store the data in XML format. Why? Because then you can use one XSLT for conversion to HTML for web use, another XSLT for conversion to PostScript for printing, another XSLT for conversion to Excel spreadsheets -- you get the idea. While I hate to say so on this site, SQL Server 2000 offers some particularly nice functionality that can be used to implement this -- such as automatic transformation of tables to XML documents.

If you require graphics as well as text, check out the gd graphics library [boutell.com] . The Webalizer [mrunix.net] is an absolutely delicious example of how gd can be used to create slick PDF graphs on the fly.

You mention that you'd like to integrate with J2EE... I'm somewhat of a Java guru and can say without wavering that Java is not a first-choice solution for text-based reporting. If your reports are being generated by a Perl or PL/SQL script and you're just outputting the results from Java, it's fine ;), but text processing and transformation isn't too hot in the standard Java APIs. Now if you want to pay for a third-party API, you may be able to get around this...

For graphical reporting, however, Java is one of the best solutions. There are a plethora of Java charting tools available, although the decent ones will cost some dough...

Anyhoo, if you provide some more details on your specific task I can give a better recommendation.

--

HTML is not a printable format. (1)

jallen02 (124384) | more than 13 years ago | (#250570)

PERIOD.

HTML never was and never will be a content description language intended to be printed.

There are tons of good interfaces to PDF and postcript for Java. I would say PDF all the way. It is more of a pain to get the reports right. But the tradeoff is a printable medium that actually works properly.

Call me crazy but I have dealt with some really high volume, high end situations where HTML just doesnt cut it when you have to generate reports for big wigs at a comapny. Sorry, its not always easy.

Jeremy

Re:PDF does what you want (1)

horatio (127595) | more than 13 years ago | (#250571)

PDFLib [pdflib.com] is free in all cases (that I can tell) *UNTIL* you go to use it as a COM/ActiveX object within something like IIS/Coldfusion. Then its $500 for a license.

Go figure, no one wants to develop for winblows, so they have to charge for it.

Crystal is working out for me... (1)

lowe0 (136140) | more than 13 years ago | (#250572)

At the risk of (-1, Redundant), I'm using Crystal Reports to do Web-based reporting of Process Control Data. It takes some getting used to, but the learning curve flattens out pretty fast. The reports are near-perfect replicas of our old paper forms, and look so much cleaner (partially due to not being 27th-generation Xeroxes.) The web versions are also paper-accurate.

Only downside? You have to configure your web server for it, use ActiveX, use the slower and slightly less featurefull Java Version, use the much slower and much less featurefull HTML version, or a combination of the above. Not pretty.

Hopefully this is enough info for you to evaluate it.

XML + XSL:FO - PDF (1)

__donald_ball__ (136977) | more than 13 years ago | (#250573)

I think you might want to think about accessing the data as XML and using XSL:FO as an output format. You can use Apache FOP [apache.org] to generate PDF's from XSL:FO documents. There's also a commercial offering that does the same thing, can't remember the name offhand though.

Re:Blah. (2)

coolgeek (140561) | more than 13 years ago | (#250577)

pathologically eclectic rubbish lister?

Try doing a little research (2)

grahamsz (150076) | more than 13 years ago | (#250579)

There are lots of perfectly good windows reporting tools and if you dont want to have to do any work yourself - GO BUY ONE!

I'm as much in favour of linux (and uk spelling) as the next guy but to be fair windows has better tools for this sort of thing.

If you want to go down the linux root then I suggest using perl or php to create a pdf file which the client could then print. It'll require a fair chunk of effort on ur part but the final solution will be infinitely more controllable than it would be on a drag and drop windows system.

Re:Long printed reports are obsolete, deal with it (2)

Bobby Orr (161598) | more than 13 years ago | (#250580)

This was not an insightful comment. It was stupid! You don't tell the customer what he/she wants, then insult their office setup if they don't want what you claim they want.

We have many clients that paper reports for many reasons. In this case, it is what the client wants, not what you want, that is important!

Many people can't see the monitor very well, or it gives them a headache (either vision trouble, or having bi-trifocles, etc. can cause this.) Personally, a monitor gives me a headache after a while. This means I have to print out pages that need extra careful study and look at them on the printed page.

Use VB (3)

Pinball Wizard (161942) | more than 13 years ago | (#250581)

I'll be tarred and feathered for saying this, but its a great option for what you are trying to do.

First, with VB, you can use ADO to do all the database work. An ADO recordset has support for paging, so you can easily separate your report into pages. It has an easy to use Printer object(which seems to be there by default, I didn't have to declare an object). At the end of each page, all you have to do is call Printer.Print and Printer.NewPage. At the end of your document, call Printer.EndDoc. Presto. A paginated database report, with no external(read: $$$) component. You can further refine your report by setting fonts, etc, but the above outlines the basics.

Another cool thing about VB is that you can drag a WebBrowser control onto your form to make an instant browser. You can then host your web based app in this form. The only reason I recommend doing the printing with VB instead of the web based app is that you generally have to display everything you print if you do it all on the web page, whereas VB you can print things without necessarily displaying them.

I'm hoping Mozilla has the same functionality, as I've done this, with the majority of the application logic in the (cross-platform) web app, using VB only to display the application and to print. If Mozilla has the same functionality, I'll have a powerful application that is cross-platform and updateable without needing to send clients install programs.

Not Difficult (4)

Tairan (167707) | more than 13 years ago | (#250582)

I can name three right now that can do what you want - Formscape [formscape.com] , Monarch Report Writer [hallogram.com] , and Crystal Reports. [crystaldecisions.com] They've been around for a while.

I'm surprised something like this got through. Its kinda like asking 'I'm looking for a way to share files between my multiple machines, and I don't want to use floppy disks any more."

Web-based Reporting Tools (2)

PatJensen (170806) | more than 13 years ago | (#250584)

You have a few choices for web-based reporting products. Most of them can be integrated using ASP scripting and will connect to your database products via ODBC. Also, functionality can be integrated using SDKs for some of the reporting tools. Two of the most popular choices that my customers work with are Seagate Crystal Reports and Business Objects.

Crystal Reports can be integrated into your application itself as well and features a killer report designer and query builder interface and great printed reports. Crystal Reports can publish report datastraight to the web as well. For more information, check out Seagate's web site [seagate.com] .

Business Objects is very popular for its interactive report functionality, where you can drill down into your query getting different levels of information. It helps you avoid information overload in large reports and is generally the tool of choice for doing crossreporting on related queries. For more information, check out Business Object's web site [businessobjects.com] .

-Pat

Check out FOP (2)

Insideo (171350) | more than 13 years ago | (#250585)

The only thing I know of that even comes close is FOP (XSL Formatting Objects Processor) [apache.org] . FO is an XML-based formatting language that can be used to generate PDF files as well as printable output. You have complete control over page breaks and static content such as report headers and footers.

You will need to use Java (FOP is Java-based), and if the reports are generated on the client, you will need to download about 2.5MB of JAR files to the client for the required libraries. If you use Java servlets, you can generate the reports on the server and save on the size of the download and the processing needed at the client.

Missing something? (5)

Alien54 (180860) | more than 13 years ago | (#250589)

I must be missing something. I would have thought that via perl, or what every that you could generate whatever reports you needed from a data base to your web browser. Once in your browser you could print out as needed. But this requires coding, which you have said you are not partial to.

Now there are a number of products where you could generate a report for a database with HTML tags inserted in the correct local, then print to a text file. snd a separate one for printing. This essentially generates HTML pages for you as you need. All it becomes is a specialized report, that can be uploaded as needed.

So the best option is to have a report that is generated for web display, and have a second one for download in PDF or whatever for printing.

Let's face it, depending on the database, custom reports etc have been where a lot of database analysts and programmers have made the big bucks for a very long time. While you can get away wit simple reports in something like ms access, in the long run your are going to have to get someone who has the knowledge and experience to put it together right.

When I used to do tech support for a consumer database company, I ran into this all the time - Customers wanting to do sometimes complicated things with only a minute or two of effort. Add in some anomolies because the database was not normalised correctly, and you get a bloody mess. It was not so much the system, as it was getting the query right (Alphabetized by state, then town, then family name, and filtering those custers using master card for purchase over 250$ during the month of december, and who still owe us money as of the end of the preceding month)

Depending on the setup, the query could be trivial or a nuisance.

In some cases, you can't get there from here.

Check out the Vinny the Vampire [eplugz.com] comic strip

this sounds evil, but... (1)

bernz (181095) | more than 13 years ago | (#250590)

if you need to do this, considering limiting your users (if you can) to an IE browser and using activeX components. they render faster natively and more cleanly than an HTML page and work well within other Microsoft applications.

I'm a *nix man myself, but we live in an MS world. Sometimes you just have to deal. and if this person is in an office where the clients are ActiveX machines, then that's what they should use.

if it has to be more cross-platform, the Java isn't abad idea as swing renders relatively quickly, though the applet might be a bit slow to load INITIALLY...

-----

Re:No page breaks in HTML (1)

diathesis (186715) | more than 13 years ago | (#250595)

No, I dn't think you can control page breaks in HTML. Besides, if the reports are long, printing them through the web browser isn't ideal. I'd be looking at integrating with reporting software or, alternately, doing something like PDF generation.

Re:Actuate (1)

diathesis (186715) | more than 13 years ago | (#250596)

Acutate was actually topping my list on the J2EE side (based on some threads on the Java Dev Connection), but I was hoping for opinions based on experience, as well as solutions outside of the J2EE space, and the kind of commentary that a forum like this can generate. There's a lot of interesting commentary in this thread already.

Re:A step at a time... (1)

diathesis (186715) | more than 13 years ago | (#250597)

My client prints reports to send to their client, or to do mass mailings to their client's clients. They feel these reports are necessary, and their client (or their client's clients) will not have access to the app in this phase. Frankly, I'd prefer no printed reports at all, but it's not up to me to determine what the client feels they need.

CrystalReports??? (1)

scott1853 (194884) | more than 13 years ago | (#250601)

I've never used it but I had to look at it once. Price drove us away for our relatively small project but from what I remember it was very flexible and powerful. I'm sure plenty of people out here have had experience with it, good or bad.

Try this: (1)

ZeroConcept (196261) | more than 13 years ago | (#250603)

See:
www.microstrategy.com

They have a demo here:
http://demo.microstrategy.com/

No page breaks in HTML (1)

jchristopher (198929) | more than 13 years ago | (#250604)

As far as I know, you cannot control page breaks via HTML inside a web browser.

There are ways to fake it by using images that are roughly the size of one printed page (browsers usually won't print images across two pages).

But since you're looking for a ready made software package, the odds they've incorporated something like that seem slim.

Re:What about using XML/XSL? (1)

atomray (202327) | more than 13 years ago | (#250606)

I also have implemented a reporting solution using Java/XML/XSL-T. We move and store data using XML, and when it comes to reporting we just using XSL-T to transform to HTML and display in the user's browser. Good for short reports (a few weeks), and for longer we simply do the transformation offline and save the HTML. As for XML->PDF, this exists, it's called FOP. Go to xml.apache.org and check it out. It will do everything you want and more than anyone possibly needs :)

Latex (1)

transami (202700) | more than 13 years ago | (#250607)

For quite a while now, I've been trying to find a solution to this problem myself. Finally I had to settle on writing my own Latex generator. I'm in the early stages but it looks like it will work well. If all pans out I should be able to create report templates in Lyx (with some manual modifications) and IBM has a relatively inexpensive ($20-40?) Latex browser plug-in, if a normal viewer isn't acceptable. The reports are generated by the server and then passed to the client, so client printing is not a problem. Just wish I had more time and resources to get it completed!

Try Cocoon (1)

graveyhead (210996) | more than 13 years ago | (#250609)

Cocoon [apache.org] has many of the features you describe. It doesn't have drag and drop report creation, you are on your own there. What it does provide, however, is a solid foundation for creating different views of a data set in different presentation languages. You can build a report from some input XML data as an HTML web page, or as a PDF document with line breaks, etc. It also encourages very clean implementation by total separation of content / logic and presentation code.

For a good overview of what Cocoon can do, including PDF output, check out my resume [davesresume.net] .



Well, your fingers weave quick minarets; Speak in secret alphabets;

Ooh! Ooh! I know. (4)

tenzig_112 (213387) | more than 13 years ago | (#250610)

Use PHP to generate an .rtf file with the pagebreak tags therein. Specs are available on-line. On your browser, use the link save-as feature to save the file as an .rtf and open it in WP or some other word processor. Score! I finally found a question I could answer! [ridiculopathy.com]

What about using XML/XSL? (1)

Beatlebum (213957) | more than 13 years ago | (#250611)

I am currently implementing code to meet the same specs as the poster. There are a lot of canned solutions that rely on a SQL backend, e.g. Crystal Reports makes a web based solution. In my case I decided to use XML and XSL. The basic idea is to generate XML from whatever DB or data source you are using and then transform it to HTML using an XSL tranformation. The actualt transform can be done on the server or client. I prefer server side processing since this reduces the need for an XML compatible browser. The nice thing about this solution is you can totally reformat reports by changing the stylesheet, not a line of program code needs to be changed. Also, you can provide hyperlinks to the raw XML so the user can format the reports using his own XSL, or import the XML to any app that has ASCII import. We use Windows 2000, IIS & SQL Server, which have fantastic facilities for XML processing.

BRL with LaTeX (1)

brlewis (214632) | more than 13 years ago | (#250612)

I've had success with pdflatex for PDF generation from .tex files created by BRL. This is a text-based solution rather than the drag/drop you wanted, but I consider that a feature, not a bug, having spent a year doing PowerBuilder datawindows. I'd much rather insert some text where a new column should go rather than have to drag existing columns/headers to the left and the right.

Paper still has uses (2)

brlewis (214632) | more than 13 years ago | (#250613)

I have a printout of our inter-office phone directory (database-generated with BRL/LaTeX) up on my wall because, although I type fast, my fingers are slower than my eyes for finding a specific name.

Printed reports are also useful for face-to-face meetings.

Hundred-page reports are probably for archival purposes. It's understandable that a lot of people are more comfortable with paper archives than electronic archives, given the general low quality of software today, and the obsolescence, sometimes intentional, of file formats.

Use Cobol, it has a report generator (2)

RedLaggedTeut (216304) | more than 13 years ago | (#250614)

Kidding ..

--
Well, querying the web, I found that imatix [imatix.com] actually has something remotely related .. . Since I run their ftp+webserver for personal use for free, I might as well put up the link here.

I also found Fujitsu Cobol for the Web [adtools.com] .

i've done this many times before... (1)

gol64738 (225528) | more than 13 years ago | (#250615)

use a package called html2ps. it can be found here [tdb.uu.se] . have a page generate the report, you can wget it if you have to. then convert and send to a printer.
if you wanna print to client machines, then use samba to send the print jobs to windows or linux clients.

gol

Done (2)

clinko (232501) | more than 13 years ago | (#250617)

I wrote an application just like this in asp in about 2 days. But it was for credit card information and entry into an event. It's really not that hard.

Re:Long printed reports are obsolete, deal with it (2)

ReverendGraves (233320) | more than 13 years ago | (#250618)

Paperless Society Zealot! Woo!

In your ideal world, it may be the case that you can get away with a paper-free workplace. However, if I handed a disk to the guy who signs my paychecks instead of a printed report, he'd hand me a pink slip instead of a pay check.

The world is going paperless. It's not yet there.

Business Objects. (2)

NineNine (235196) | more than 13 years ago | (#250619)

That's what Business Objects [businessobjects.com] is designed to do. Of course, you can also just use your favorite server-side scripting language and do it yourself. Or, if you're using Oracle, you can just fire up Oracle Reporter or Oracle Forms. There are tons and tons of tools to do this.

Re:Get rid of headers and footers in IE 5.x (1)

MaxQuordlepleen (236397) | more than 13 years ago | (#250620)

Wa la! Beautiful printing from IE

Now I'm no grammar nazi, but I believe the word you're looking for here is Voila...

Rich Text Format (1)

stuporg (236493) | more than 13 years ago | (#250621)

I ran into this very issue a couple years back when my company put a web interface onto its set of apps and reports. I chose Rich Text Format because it was ascii-based on an available standard, easy to generate, and with the appropriate plugin or app at the client end, easily viewed, manipulated and printed. Our clients really like this because their reports "magically" appear in their favorite word-processor where they can save it, print page ranges, etc to their heart's content. Of course, YMMV. If you're set on HTML though, there is a little trick with stylesheets to force pagebreaks (at least with IE): Define a STYLE with PRE.my_page {page-break-before:always;} and then use <PRE class=my_page>...</PRE> tags to break into sections. A bit on the ugly side, but it works. darrenk

Business intelligence apps (1)

griffinn (240043) | more than 13 years ago | (#250624)

Most commercial vendors of business intelligence solutions, e.g. Cognos [cognos.com] and Business Objects [businessobjects.com] , have a web solution for building custom reports.

Have you considered... (1)

cube farmer (240151) | more than 13 years ago | (#250625)

Actuate e.Reporting Suite [actuate.com] ?

It's not open source, and many of the development tools are exclusive to a Windows environment; but the application server can be hosted on a *nix box and talk to Oracle and other SQL databases. It's reasonably fast, allows for ad hoc and batch reporting, and can produce output in HTML, DHTML (IE-specific or standards-compliant), Excel, PDF, XML, and other formats.

Re:Blah. (1)

cube farmer (240151) | more than 13 years ago | (#250626)

Do you know what PERL stands for?

Pathologically Eclectic Rubbish Lister?

Check out "iReporting for eBusiness" (1)

spanielrage (250784) | more than 13 years ago | (#250627)

by Tidestone [tidestone.com]

I haven't actually had a chance to use it, but have ran through their free online demos. It will generate Excel spreadsheets, HTML, and XML as well as charts in GIF/JPG. Even WML so your executive who "needs" a 100-page report can view it line-by-line on his cell phone from his golf cart. You can embed it in servlets (J2EE), JSP, or EJB's.

BTW, I would really make sure that reports that long are really required. I haven't designed a system in the last 5 years that needed that kind of reporting. We usually end up replacing those long reports with smaller, more customizable online reports. And it looks iReporting would do this just fine.

If it's on an OS/390 mainframe... (1)

blooflame (252286) | more than 13 years ago | (#250628)

Use JES2FTP which takes reports from the spooler, converts to HTML (broken into pages) or PDF (your choice), and builds an index too if you want. These tools are great. Last time I saw them they were available at Data 21 [data21.com] For some reason your "batch reporting" and "hundreds of pages" ideas struck the ol' mainframe chord with me (which is the environment where I work). If I'm wrong, ignore this post.

Get rid of headers and footers in IE 5.x (1)

commander salamander (256114) | more than 13 years ago | (#250630)


Go to File->Page Setup, and look at the text boxes labeled "Header" and "Footer". Delete everything that is in them, and click OK.

Wa la! Beautiful printing from IE.

PDF does what you want (4)

commander salamander (256114) | more than 13 years ago | (#250631)


Try PDFLib ( http://www.pdflib.com/ ). I've used it for generating reports from both Perl and PHP web apps, and it's worked great. You can allow users to set fonts, max. # of pages, etc etc.

According to their site, it supports:
ActiveX/COM for use with Visual Basic, Active Server Pages, Allaire ColdFusion, Borland Delphi etc.
ANSI C
Class wrapper for ANSI C++
Java (via Java Native Interface, JNI), including servlets
Perl
PHP hypertext processor
Python
Tcl

I think one of those languages should suit your needs.

With large, hundred-plus page reports, generating PDFs can take a while (and a large chunk of your server CPU) so you will probably want to cache the generated PDFs and serve them up statically for a few hours...of course, it depends on how often the data gets updated in your application.

HTML Printing (1)

alansingfield (257819) | more than 13 years ago | (#250633)

Its a pain!

This is such a common thing to want to do, yet there seems to be no tools that allow this kind of thing.

Having given up on a consumer friendly solution, I implemented a printing solution using the MS WebBrowser control and XSL transform.

To do the pagination, you have to render approximately one page's worth of XML data at a time, then use the .offsetHeight property to measure exactly how big it is. Then you have to remove a few lines until you have exactly a page height! (phew)

Its not particularly fast, because of all the DHTML munging that goes on, but it was the only solution we could get to work sensibly

There's definitely a gap in the market for an XSL editor along the lines of DreamWeaver, but still there's no neat way of doing any kind of pagination with XSL.

Re:Missing something? (1)

mighty_mallards (259544) | more than 13 years ago | (#250634)

I completely agree - 90% of the time, the problem with specialized reporting is the query to get the data. If the database isn't setup properly in a relational manner, it becomes MUCH more difficult to get valid reports.

The other thing I would point out is that a seperate file is a good idea, as a few hundred page report would take some time to render in a browser, even if you break it into many little tables instead of one big one...

Re:Long printed reports are obsolete, deal with it (1)

Alarion (263883) | more than 13 years ago | (#250637)

Well, good points but...

I find scribbling notes all over my laptop's LCD or my monitor doesn't have that "lasting" effect that notes on paper reports do ;)

Look at Actuate (1)

CRM Slave (301589) | more than 13 years ago | (#250639)

Disclaimer first: after consulting with their software for 3 yrs., I recently joined the company. Trying not to give a sales pitch here, but why you might be interested: -Based on VB3, with object-oriented extensions. (In short, you can create your own class libraries to go between designs.) -It has it's own set of class libraries that can be drag-and-dropped in a design pane. -Query editor with same look and feel as Access. -Also, ability to paste in queries you've already written elsewhere. -Ability to query multiple databases of multiple types in the same report (and mesh results, with a bunch of code) -Version 5 now supports Java objects -Output is either DHTML or PDF -Report server that allows any report to be accessd and run via a URL, from whatever your web uses now (JSP,PHP,blah,blah,blah). Downside: -Steep learning curve for development (though basing it on VB helps). -Not cheap -If you want simple list reports, it's probably overkill.

XML -> XSL -> Microsoft (eeek!) Excel (1)

shooz (309395) | more than 13 years ago | (#250642)

I have been having success using XSL to style a report generated in XML to create an XML document that Microsoft Excel can load and print. You can do any formatting that can be done from the Excel UI, plus you can control how the report will be printed (landscape, breaks, etc...). Design the report the way you want it to look in Excel, then save as HTML and use that saved document as a template for your report.

http://msdn.microsoft.com/library/officedev/ofxml2 k/ofxml2k.htm for the Office XML reference.

Crystal Reports (2)

mech9t8 (310197) | more than 13 years ago | (#250643)

...has (mostly) what you're looking for. A relatively easy-to-use designer, a scalable server component which feeds the client-side control, and ActiveX and Java-based client-side controls which are embedded in the browser. The client-side controls have full printing capability, as well as exporing to a variety of formats.

The downside? It tends to be difficult to format complicated reports, it has a archaic data access layer which makes database independence difficult, and the server components only works with Windows/ASP.
--
Convictions are more dangerous enemies of truth than lies.

Re:CrystalReports??? (3)

EastCoastSurfer (310758) | more than 13 years ago | (#250644)

I would avoid Crystal for web reporting. The gui report builder is nice, and the reports work fairly well, but the web server part sucks. My biggest problem with the Crystal Report Web Server is that when one user is pulling a report all users block until that first user is done. The marketing people at Crystal actually comped us a copy of version 8 because of this problem(and the fact that they lied and said that it would not occur like that). The tech support guys are a joke. They were amazed that I got the web reports to work at all with our volume of data(100+ page reports). I have been looking for other solutions, and maybe some comments here can point in the right direction.

Contrary Opinion of Crystal Reports (3)

tb3 (313150) | more than 13 years ago | (#250646)

This may get modded as flame-bait, but what the hell;
Avoid Crystal Reports at all costs if you can. It's irrating, confusing, and buggy, and it's been that way since I started using it in 1993. On every one job I take I swear I won't use Crystal again, but somehow I keep getting stuck with it, becuase it's already being used, or somebody somewhere thought it was a good idea. If you need formatting and page breaks go with some kind of PDF generator, and find one with a Java interface because you're already on J2EE.
Report generation is one of the necessary evils of business application development, so the best thing you can do is find something that will let the users create their own reports; instead of pestering you to do it for them.
End of grumpy report creator rant.
-----------------

Zope (2)

badfish2 (316297) | more than 13 years ago | (#250647)

www.zope.org

It sounds like (2)

CrackElf (318113) | more than 13 years ago | (#250648)

the client and server on the same lan. So, I must ask, Why, why, why are you considering a web solution if you need things that html will not produce? The right solutions for the right job.
- CrackElf

Re:A step at a time... (2)

CrackElf (318113) | more than 13 years ago | (#250649)

I'd really recommend reviewing your requirements. Is *anybody* really going to read hundreds of pages of reports? Perhaps you should be building a more flexible query tool so that your users can get the specific data they want without having to wade through mammoth wads of paper?

You have never worked on a government project, have you?

Try Jreport (2)

icoloma (322750) | more than 13 years ago | (#250650)

Ok, I remember I tried very long ago a JReport app that worked, but looking in the net one thousand have arisen. JBuilder 3 is shipped with a similar tool.

Of course, this applies if you're working with Java.

On the same topic, there's a funnier question: if you are programming in Java your site, you ought to have your data access and manipulations encapsulated, say in beans or EJB's. If you try to use a such a tool to generate reports, you step over this data access classes, something that is not recomendable. Anyone has idea of a tool that permits accessing via my own Persistence Layer and generate the reports anyway? I have searched, but cannot say any one.

Clear as Crystal (1)

Jupiter9 (366355) | more than 13 years ago | (#250653)

Crystal Reports (http://www.crystaldecisions.net/homepage/) has a pretty cool Web service that displays a Crystal Report through a Java applet. Supports the CGI web application standard too.

Re:Paper still has uses (1)

JulzR (447918) | more than 13 years ago | (#250655)

While I agree with your sentiment, I wonder if you've thought about the costs of the alternatives- creating silicon chips, plastics, metals, and the energy to run these things are all very environmentally costly; I don't know if it's as bad as chopping down trees, but I do wonder. At least trees CAN be a sustainable resource with CURRENT technologies. Also all of the above have relatively short life-spans and paper is a heck of a lot more reusable; it's even biodegradable!!
What do you think?

(BTW-
I feel the same about electric cars- seems like an answer until you start thinking about the in-efficiencies of the grid and current generation methods. Given current power generation/distribution technologies, would the environmental impact of greater demand cause more or less environmental impact than the current damage being caused by petroleum based vehicles?
If anyone knows of any studies or projections, please post to /.
I see the best solution as being revolutionary, not depending on current energy transportation systems, and locally generated to avoid the losses in the above. Fuel cells? High efficiency solar cells? Hydrogen engines? Flywheel based storage? All and more are being tried- hope they start to become viable soon!)

We used Crystal Reports (1)

Mike Ox (448741) | more than 13 years ago | (#250656)

My company asked me to build a report server which would create PDFs out of CSVs using pre-determined report templates. Using CSVs as a direct data source was a pain in the ass because we had to fiddle with ODBC. We found that it was much easier to work with Access files, and since the databases would be single tabled and no more than a few thousand records, it wouldn't be a problem. We got ourselves of a little utility that converts the CSV files to MDB, so the only step would be to take the MDB as a data source to convert it to PDF. We decided to use Crystal Reports because the report designer is very straight forward and easy to use. Personally, I have not used any other reporting system, but I was told by my boss that it was the best solution. We ended up using Visual Basic to integrate everything together. It's been in production for over 6 months now, with over 10,000 reports under it's belt, without any serious problems. At peak hours, it can generate reports at an average of 200 an hour, depending on the computer speed, and amount of records and complexity of the report.
Load More Comments
Slashdot Login

Need an Account?

Forgot your password?

Submission Text Formatting Tips

We support a small subset of HTML, namely these tags:

  • b
  • i
  • p
  • br
  • a
  • ol
  • ul
  • li
  • dl
  • dt
  • dd
  • em
  • strong
  • tt
  • blockquote
  • div
  • quote
  • ecode

"ecode" can be used for code snippets, for example:

<ecode>    while(1) { do_something(); } </ecode>