JadePrintData Class

The JadePrintData class is the abstract superclass of report output data classes that enables you to store print data or send it directly to a display device for previewing. Each page of print output is contained in a Windows metafile (in the enhanced metafile .emf format) by default, which contains details of all Application Programming Interfaces (APIs) calls necessary to reproduce print output in a form independent of the printer device so that it can be output directly to a display device. You can use this metafile, for example, to send electronic mail output with a message or insert it into Microsoft Word for Windows. (Note that the metafile is inserted into Word for Windows; the file is not opened from within Word.) A metafile stretches or shrinks to the orientation and size of the page with which you are dealing. For example, a page that was painted with portrait orientation and is subsequently changed to landscape orientation may be stretched in width but compacted in height to fit the new orientation.

JADE print data can be one of the following formats.

The choice of meta file format (EMF or SVG) and print data type (GDI or PS) are controlled by the PrintFileFormat and PrintDataType parameters, respectively, in the [JadePrinting] section of the JADE initialization file. Although output to a printer can be done using GDI or PS commands, the format of the meta file (that is, EMF or SVG) determines whether you can use the Postscript data type for print output. For more details, see "Portable Printing" under "Printer Class".

By default, when a print preview is requested, a JadeReport object is created that contains an array of transient JadePrintDirect and JadePrintPage object entries. This JadeReport object is invisible and transparent to you.

Use the Printer class setReport method to capture this output for storage, manipulation, and printing to meet your requirements. Alternatively, use the Printer class printPage method to print the specified page of print output on the current printer.

If you are running JADE in thin client mode, the page of print output is constructed and previewed on the presentation client, but the binary image containing the page is sent to the application server for storage.

When the presentation client requests a print preview, the pages of the printed report do not have to be transferred to and from the application server. (This optimizes the performance of the print preview process when running JADE thin client mode over a slow network.) However, if your application calls Printer::setReport to indicate that user logic subsequently stores or manipulates the report output, each page of output is transferred to the application server.

When you use the formatOut property =pagenofm or =totalpages option for formats of data in text boxes or labels and the report is being stored in the database (that is, the report uses the Printer class setReport method), output is retrieved from a temporary file and stored in the database only after the printer is closed. (This is most evident when running in JADE thin client mode, as the printed output must be retrieved from the presentation client and passed to the application server at the end of the report rather than page by page as the report is produced.) For details, see the TextBox class or Label class formatOut property.

Object

JadePrintDirect, JadePrintPage