Using transient data queues for printer output

If you associate printer with a transient data queue at generation, the system resource name (systemName property) is the RDO TDQUEUE name for the queue.

You can define the destination for the queue as a system printer, a terminal printer, or a data set. If the destination is a terminal printer, you need to define a transaction that is started when data is written to the queue. The transaction runs the Rational® COBOL Runtime program FZETPRT. FZETPRT reads the queue and writes the data to the terminal printer identified in the RDO TDQUEUE entry.

The program does not actually write the printer output to the transient data queue until the print file is closed. The printed output is accumulated in temporary storage. When the file is closed (close statement or end of transaction), Rational COBOL Runtime carries out the following steps:
  1. Enqueues on the transient data queue using the value of the systemName property as the resource name
  2. Copies the printer output to the queue
  3. Dequeues

The maximum number of print records that can be accumulated in the transient data queue is 32765. Your program must close the print file before 32765 records are accumulated.


Feedback