QuickReport is a set of components and controls that allow reports to be designed and previewed in the Delphi and C++ Builder IDEs. Applications including Quickreport functionality can then be deployed royalty free. QuickReport is a banded report generator written in 100% Delphi code that integrates very closely with Delphi and C++Builder. Design reports within the Delphi/C++Builder IDE using the form designer as a report designer.
Report Designing - QuickReport is a banded report generator written in Delphi. Integrated very closely with Delphi and C++Builder, reports are designed in the Delphi IDE, using the IDE form designer as a report designer.
Data connectivity - Quickreport can use any data component descended from the VCL TDataset class. The abstract table component provides a means to access any data that can be seen by Delphi or C++Builder while retaining all report features.
Output modes - reports may be sent directly to a printer, saved in document format for later viewing, or saved as HTML, PDF, XML, CSV, XL, WMF or ASCII format. HTML and PDF may be streamed for fileless output.
Features in detail
Standard preview Thumbnails and text search
MemoryLimit property of TQRPrinterSettings enables suppression of temporary files. Temporary files will be created if more memory is required than set. The PDF and HTML export filters do not create temporary files
PrintQuality, Collate and Colour printer settings are in the report printer settings and the QRPrinterSetup dialogue box
Composite report upgrade enables exporting. TCompositeReport has an ExportToFilter method for use with the PDF, HTML XML and XL filters
Frames and background exports have been implemented. Band and control frames and backgrounds will be exported
Export Filters can concatenate reports; PDF, HTML and XLS filters will take several reports
The Direct print for metafil method may be called to send a saved report directly to the selected printer. Printer settings are respected and take precedence over internal report settings when possible
Abstract dataset (Table) enables reports to be designed around a set of fields. Data to the fields can be fed in an event that is called when the dataset advances. Reports behave exactly as with a usual dataset
XML/XSLT export filter outputs the document (not the data) as a browser viewable XML/XSLT document. A stylesheet for browser viewing is supplied
Transparent bands and background image property is a QRImage control placed on the report (not on a band). The control remains invisible but its bitmap is painted onto each page before other printing. Bands may be set to Transparent to stop them over-painting the background
Memo and RichText routines calculate the expanded height of a band and is is possible to stop bands breaking across pages without writing code
RichText controls export to PDF, XML and HTML as images
PDF filter enables TrueType fonts to be embedded, does not make temporary files and has a corresponding control that integrates with the preview
The HTML (Web) filter produces smaller files and has properties to fix image linking difficulties and to improve the page-to-page links
PDF, HTML and XML filters on palette and in preview controls integrate into the preview save menu when put on a form.
The best way to make information available is via the internet. This requires that where possible web browsers should be used rather than native applications. Most reports designed with QuickReports can be speedily converted to html and displayed directly in a web browser with the existing components. The new components allow custom web forms to be built so the reports may be displayed as if in a local viewer application.
The basis of a report distribution system is a web server which handles HTPP GET requests by sending existing reports to the client, and POST requests which require code to be executed to generate real time reports. In the latter case the QR6 server library provides a QuickReport object which can execute reports from the .dfm file as well as handling report events.
The purpose of this code is to provide a run-time system that is free from any reference to the VCL printers unit or the VCL graphics unit. The first stage in presenting dynamically produced reports in a browser is to create the HTML in a server environment from live data. QuickReport 6 includes server adapted versions of the QuickReport object and the QR controls, which can execute a design in a dfm file and stream the resulting HTML document. The code is bundled as a component which may be used in console applications called from a cgi-bin or ISAPI application.
The motivation for developing the web controls is to allow us, and QuickReport users to create web applications that will present reports on any device that has a suitable web browser.
QuickReport already has the ability to render report documents into html which makes them viewable in a web browser. With the web controls, this report may be presented in an interactive viewer.
Building a web application is exactly the same as designing and exporting a report. A report with only a title band is populated with web controls and exported to html. The web controls do not appear in the normal preview since there is no purpose in this, but the html created may be opened in a browser to preview the web viewer. The production process is quick and uncomplicated.