I use the QuickReport for Delphi 2006. But it has many limitations and bugs in the runtime layout generation.
Do you know a better delphi component to generate reports to view and print?
I use also use eDocEngine components to complement. With it I can convert a report from quickreports to pdf without user interference. I need that too in the report engine.
Try the
Fast Reports
[1] component, which includes export filters to export the report to PDF.
ReportBuilder! We have been using it for almost 10 years now with desktop, DataSnap multi-tier, webservices and IntraWeb applications. Excellent report capabilities and advanced features like end-user report designer. One important side note: It is truly multi-threaded (some report solutions out there are not and you won't be able to use them - easily - in multi-tier and internet applications)
Rave was reporting engine, bundled with Delphi: www.nevrona.com/rave And probably bundled with your Delphi 2006 too. Yet: http://rave-notes.blogspot.com/2010/02/time-to-say-goodbye.html So think if it still is worth learning
http://delphihaters.blogspot.com/2010/06/smells-like-team-spirit-nevrona-rave.html - interesting article against Rave that enlists a number of alternative reporting engines.
FreeReport is a FLOSS fork (forks?) of early FastReport mentioned above: http://freereport.sf.net and https://github.com/FastReports/FreeReport
Fortes is a FLOSS re-make of QuickReports: https://sourceforge.net/projects/fortesreport/
Report Builder is claiming to be a special engine in targetting large workloads and fine quality (it is claimed other reports render on display (window may be hidden but still) and then copy low-res picture from display to printer. Sometimes you can find topics like for example pictures scaled badly when embedded in FR. http://www.digital-metaphors.com/
CrystalReports.com are widely used in different business application but dunno if it really offers much comparing to other Delphi engines, except for famous name.
ACE Reporter still alive! http://sct-associates.com/index.html Dunno if it's worth its bucks today, but in Delphi2-Delphi4 time it was a damn good replacement for QR junk. And its design allowed rather easy hacking so i could add the feature i lacked. Nostalgy...
Sometimes custom report can be made, using Excel or OpenOffice Calc template and then filling the form in the spreadsheet program via COM API. Usually accountants are more or less familiar with spreadsheets, so they can customize templates or results to their taste.
About PDF, you can save any report into PDF - there are a lot of PDF Virtual Printers available for Windows, both free and commercial. Of course it is easier to do if the reporting engine has PDF target built-in. But really that is not big deal.
Also both OpenOffice Calc and Microsoft Excel, if used for reporting, can save results to PDF format.
Try List & Label [1], it's not really easy to work with if you need complex PDF structure but it creates good PDFs, you need to create the template up to your needs which you fill then with lists of data, this is very helpful if you work with tables in your reports.
Another one would be TX Text Control [2] which I'm not really familiar with.
[1] http://www.combit.net/en/reporting-tool/report-generator-List-LabelMy vote is also goes to Fast Report, because it is cool, powerful, and actively improving. As for Autumn-2012 they have FireMonkey version of FastReport in beta. Also they have versions for .NET and Mono, so you can use same tool for different platforms!
And nobody did not mention DevExpress Printing System - it is useful to get info from their controls!
Take a look at our Open Source reporting unit for creating reports from code [1]. It is based on a lightweight reporting component made by Angus Johnson - but our version is much enhanced, and work with XP/Vista/Seven/Eight, from Delphi 6 up to XE3.
It does not use a RAD / band / groups approach, like the others. You can not design it with a mouse, in the IDE form designer. You append your data to your report from code, with some simple methods. Reports are not tied to TDataSet
, but can be used very easily with direct data coming e.g. from an ORM or the objects exposing your business code - this is why it is included in our
mORMot
framework
[2] (but can work stand-alone). So it is more n-Tier friendly IMHO.
Some particularities:
TCanvas
: so you can draw anything you want, just anywhere;Creating a report (even a complex one) is very quick with this unit. Using code to define reports does make sense if your data is a bit more complex than a pure translation of some TDataSet
.
Updated answer / additional suggestion:
If you are looking for an Open Source band-oriented / RAD-designed report solution, take a look at FortesReport [5]. It has some nice features (including PDF export, even it will work only with WinAnsi charsets - whereas our units will handle any content), and is still maintained.
[1] http://blog.synopse.info/post/2010/06/30/Making-report-from-codePersonally, the best third-party toolset I have ever purchased is ReportBuilder. In 2010, I wrote an open letter on my blog [1] explaining why.
The biggest point for me is not only is the actual report designer itself very feature-rich, but every aspect of it has been written as objects from which you can descend your own classes in order to customise it, without having to change the original source code. That, and the incredible SQLBuilder, that allows you to change queries with Delphi code, means you can pretty much do anything you want at run-time in order to control what users can see.
[1] http://delphidisciple.blogspot.co.uk/2010/09/open-letter-to-digital-metaphors.htmlCheck out Report Manager the freeware and opensource reporting tool.
It is used in quite a few open source projects, one of which that I follow closely and use it like oSF.