Technical Documentation

Basic Features

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 - Quickreportcan 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.

The Standard version of Quick Report 3 was distributed with Delphi 6 and 7 and C++Builder 6 as well as earlier versions of these products.

Quickreport Version History: 5 4 3

QuickReport Pro Version 5

QR5 is compatible with QR4 report designs, and existing applications will run without changes. Most of the visible changes affect previewing and exporting reports, with a few new options for band behaviour. Several new controls are introduced, including three that support double-byte characters.

Invisible changes include more defensive handling of network printers, and less interaction with printers and miscellaneos memory leak and logic fixes.

Standard Preview

Visible changes

  1. Events to control and customise standard preview.
  2. Allow printing straight from the printer-setup button
  3. Option to set the default extension in preview. For instance PDF instead of QRP.
  4. Copy to clipboard' button on standard preview form.
  5. New property for printables - 'ExportAs' = ( etNumeric, etText, etFormula, etLabel ) for XL.
  6. It is possible to limit the number of pages in the preview, and a 'Cancel' button is added to the standard preview.
  7. Background colour for report.
  8. Childbands can print before, after or before and after their parent.

Alternative report viewer

Based on XML format, the new previewer has better rendering and search facilites, and supports drill-down and mouse events.

New controls

  1. Wild band. Print anytime you want.
  2. Controls with double-byte support, QRMBLabel, QRMBMemo and QRMBDbText.
  3. FrameLines control - extends vertical lines over page breaks.
  4. TQRShape has 2 new shapes, left and right diagonal lines.

The following controls from the QR PowerPack set are now included

QRPP Controls

Powerpack Palette

Report element components:

  • TQRPBand, TQRPChildBand: printing of this bands can be suppressed depending on a QuickReport expression
  • TQRPLabel can print rotated text
  • TQRPDBText can suppress printing of repeated values or of numerical fields with a value of zero
  • TQRPExpr can print rotated expressions
  • TQRPShape adds diagonal lines and triangles to QuickReport's TQRShape
  • TQRPDBImage can print external image files whose file names are stored in a data field
  • TQRPMemo allows embedding expressions in the memo text and individually suppressing blank lines
  • TQRPRichtext allows embedding expressions in the RTF and individually suppressing blank lines
  • TQRPGrid prints various styles of grids
  • TQRPCheckbox prints various styles of checkboxes (even with custom bitmaps)
  • TQRPExprCheckbox can print data aware TQRPCheckboxes

Utilities:

  • TQRGridReport automatically creates a QuickReport form to print the content of a DBGrid as it is shown on the screen
  • TQRStringgridReport automatically creates a QuickReport form to print the content of a TStringgrid as it is shown on the screen

New functions for QuickReport's expression evaluator:

  • Abs returns the absolute value of the argument.
  • CalcDate can be used to add or subtract days, months or years to or from a date
  • CalcTime can be used to add or subtract hours, minutes or seconds to or from a given time
  • Chr converts an ordinal (ASCII-) value to a character
  • ColumnNo returns the current report column
  • Currency gets the currency string according to Windows' country settings
  • DayOfWeek returns the day of week for a given date
  • DayString returns the name of a day according to Windows'  current country settings
  • DetailCount returns the number of detail records
  • DetailNo gets the current record number
  • ExtractDay returns only the day from a given date
  • ExtractMonth returns only the month from a given date
  • ExtractYear returns only the year from a given date
  • FieldLen returns the size of a data field
  • GetCaption gets the caption from another report component, e.g. the result of other TQRExpr components
  • IsNull checks if a data field has been assigned a value; works with memo and blob fields
  • MonthString returns the name of a month according to Windows'  current country settings
  • PadLeft fills up a string with spaces from the left
  • PadRight fills up a string with spaces from the right
  • QueryParam gets the value of a TQuery parameter
  • ReadINI reads strings from any INI file
  • ReadRegistry reads strings from the registry
  • RecordCount gets the record number from a dataset
  • ReformatDate formats a given date with Delphi's FormatDateTime function
  • StrToNum converts a string to a number
  • Trim removes leading and trailing blanks from a string
QRDesign

QRDesign is the end user report design component previously published by Timo Hartmann Software, will be included with each full and upgrade copy of QR5.  Win32 versions for Delphi 7, 2006 and 2007 will be released first. We will then be releasing versions for C++ Builder 6, 2006 and 2007 depending on demand. QRDesign for use Quickreport 4 in Delphi 6, 7, 2005, 2006 and 2007 will also be available for QR5 users.

QuickReport Pro Version 4

QuickReport 4 Pro is based on version 3.6 and incorporates many extensions and some new code. The documentation has been brought up to date and republished as CHM.

Here is a summary of the changes -

  • New standard preview Thumbnails and text search added.
  • MemoryLimit property of TQRPrinterSettings allows suppression of temporary files. Only if more memory is required than set here will temporary files be created. The PDF and HTML export filters do not create any temporary files. Advantageous for server based applications.
  • Extended printer settings PrintQuality, Collate and Color options are now in the report printer settings and the QRPrinterSetup dialog.
  • Composite report upgrade allows exporting. TCompositeReport now has an ExportToFilter method. It may only be used with the PDF, HTML XML and XL filters at present.
  • Frames and background exports implemented. Band and control frames and backgrounds will be exported.
  • Export Filters can concatenate reports PDF, HTML and XLS filters will take several reports.
  • Direct print for metafile. After a prepare or preview this method may be called to send the saved report directly to the selected printer. Printer settings are respected and take precedence over internal report settings when possible.
  • The code that sets the printer options to match the internal report settings has been replaced.
  • Abstract dataset (Table) A new control to solve all data connection problems. You can design any report you like around any set of fields you care to make up, then feed the data to the fields in an event that is called when the dataset advances. Reports behave exactly as with a normal 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. TQuickrep has a new property, that is the name of a QRImage control placed on the report ( not on a band). The control remains invisible but its bitmap is painted onto each page before any other printing. Bands may be set to Transparent to stop them over-painting the background.
  • Improved expanded height calculations ( Memo and RichText added) The routines that calculate the expanded height of a band are extended, also bands should now paint their correct expanded size. There is also an option to stop bands breaking across pages, which previously required code.
  • RichText controls export to PDF, XML and HTML as images. New code added.
  • PDF filter allows TrueType fonts to be embeded. Also the PDF export filter makes no temp files and has a corresponding control which integrates with the preview.
  • Smaller HTML exports, control on palette, PageLinkPrefix and ImageLinkPrefix property. The HTML (Web) filter produces smaller files, and has new properties to fix image linking difficulties, and also to improve the page-to-page links.
  • PDF, HTML and XML filters on palette and in preview. Mentioned above, the controls when put on a form, integrate into the preview save menu.

QuickReport Version 3

Some of the features listed here are only available in QuickReport 3.5 or 3.6.2 Professional, not in QuickReport 3.0 Standard which ships with Delphi.

  • Simple, intuitive user interface
  • Full control of page layout
  • Unlimited length Memos and Rich Text, can stretch over many pages
  • Multithreaded with background printing (32 bit)
  • Instant preview, don't wait for entire report to be generated before previewing
  • Multiline text labels
  • Composite reports, concatenate unlimited reports into one
  • Easy and powerful grouping to unlimited levels
  • Export report to other formats - PDF (prof v3.5 or v3.6.2 only), HTML, ASCII text and comma separated filter included
  • Advanced expression evaluator
  • Report builder classes creates reports from any datasource in one line of code
  • Zoom report in and out while working in the form designer
  • Optional integrated compression of reports in memory and on disk
  • Report expert creates simple list, master detail and mailing label reports
  • 18 components, including 10 different printable components
  • Exceptional performance, specially on large reports. Prints reports of unlimited length
  • independent of available memory or disk space
  • Preview and print any number of report simultaneously (MDI or SDI)
  • Plug-in export filter class
  • Plug-in printable component class, many 3rd party components available
  • Plug-in function library class for expression evaluator
  • Multibyte enabled for Asian Windows versions (Delphi 3/4/5/6)
  • Full source code included, 17000+ lines of object oriented Delphi code
  • Links directly into your EXE file, no extra files to distribute. Delphi 5/6 packages also provided
  • No royalties
  • 3 day technical support feedback guaranty for professional users
  • Supported by Borland International tech support

 

It's QUICK!!
As the name implies QuickReport is fast! It's fast to use and fast to generate and print reports. The small size of the product itself means shorter load time and smaller distribution files for you. QuickReport easily outperforms 'heavyweight' report generators like Crystal Report and ReportSmith, even on complicated reports.

Integration with Delphi and C++Builder
QuickReport 3.0 integrates so closely with Delphi and C++Builder that it can be hard to tell where one ends and another one starts. You can design reports visually within the familiar form designer by dropping components, set properties and connect to any datasource. Add code to event handlers to take special action or manipulate the content of the report, enable and disable bands depending on data.

Delphi 3 screenshot

You will not have to deploy any external files since QuickReport compiles right into your executable file. Delphi 5 users can also choose to deploy the QuickReport package file to minimize disk and memory use among applications. QuickReport 3 can be used in DLLs and called from other development environments.

Delphi 3/4/5 users can benefit from even tighter integration, allowing you to have reports as standalone modules in your project, much like forms and datamodules. This makes it easier to access and manage your application and takes less memory.

Expandable and customizable
A unique feature of QuickReport 3 is the open architecture. You can write your own printable components, export filters, functions for the expression evaluator (they automatically pop into the expression builder!), or simply customize the behavior of the existing controls by subclassing them.

Many third party add-on components are already available for QuickReport 3. In our download area you will find evaluation versions of several of them including TeeChart, a powerful QuickReport compatible charting package.

With the bundle in Delphi and C++Builder QuickReport is the product other component vendors are adapting their products to. Expect to see a longer list of QuickReport compatible products in the future.

Documentation and books
Electronic documentation is available in MS Word and Acrobat format.

Most Delphi books include chapters on QuickReport.

Preview

No Royalties
There are no royalties involved when using QuickReport in your applications. You pay for the development tool and that's it.