13.9 Maintaining the Queues
Once you set up your queues, you must monitor and modify
them according to the needs of your site. Setting up queues is
not restricted to startup time. During normal operation, you
can enter the commands to create and start queues as needs
dictate.
For example, you might perform the following types of
maintenance on your queues:
Maintenance Task Section
13.9.1 Managing Queues
Once you set up queues, you must monitor, control, and, if
necessary, change them. The following sections introduce
the basic DCL commands used to perform routine queue
management operations.
The following tables list the basic commands for creating and
controlling queues. Table 13-2 lists commands that have the
same effect on all queues. Table 13-3 lists commands that
have a different effect on autostart and nonautostart queues.
The following sections describe tasks for managing queues.
For More
Information
13.9.1.1 Initializing Queues
Typically, you create your queues when you first set up your
system. However, you might want to create queues later as
the need arises.
Use the INITIALIZE/QUEUE command to create a queue,
as explained in Section 13.7.2.
If you create additional output queues at a later time, make
sure you add commands to set device characteristics to the
startup command procedure on the node on which the device
is located. For devices attached to a LAT port, add commands
to the startup procedures on all nodes with queues for the
device.
If you create any additional nonautostart queues at a later
time, you must also add appropriate START/QUEUE com-
mands to the startup command procedure on the node on
which the queue will run. If you do not add appropriate
START/QUEUE commands, the queues will not be started
when the system reboots.
13.9.1.2 Starting Nonautostart Queues
To start a queue that is not an autostart queue, use the
START/QUEUE command as follows:
START/QUEUE[/qualifier,...] queue-name
Queue-name is the name of the queue you want to start.
For information about the qualifiers you can specify, see the
OpenVMS DCL Dictionary .
13.9.1.3 Enabling Autostart on a Node to Start Autostart Queues
You must enable the autostart feature on a node to start
autostart queues.
Enabling autostart on a node notifies the queue manager to
automatically do the following:
.
Start all active and valid autostart queues on the node
.
Start any active autostart queue that fails over to the node
To enable autostart on a node, enter the following command:
$ ENABLE AUTOSTART/QUEUES
By default, the command affects the node from which it is
entered. However, you can specify the /ON_NODE qualifier
to enable autostart on a different node. For more information,
see the OpenVMS DCL Dictionary description of the ENABLE
AUTOSTART/QUEUES command.
When a node boots, autostart is disabled until you enter the
ENABLE AUTOSTART/QUEUES command. Typically, you
should add this command to your site-specific startup com-
mand procedure or your queue startup command procedure
to start a node's autostart queues each time the node boots.
13.9.1.4 Activating an Autostart Queue
You must initially activate an autostart queue in one of the
following ways:
.
Specify the /START qualifier in the INITIALIZE/QUEUE
command used to create the queue, as follows:
INITIALIZE/QUEUE/START[/qualifiers,...] queue-name
.
Enter a START/QUEUE command after you create the
queue, as follows:
START/QUEUE[/qualifiers,...] queue-name
Once an autostart queue is activated, it remains active unless
the queue is stopped with the STOP/QUEUE/NEXT or STOP
/QUEUE/RESET command. Shutting down a node does not
deactivate autostart queues on the node.
To start an autostart queue that has been deactivated by the
STOP/QUEUE/NEXT or STOP/QUEUE/RESET command,
enter the START/QUEUE command. The queue will then be
automatically started by the queue manager. The queue will
be started immediately if a node on which it can run is en-
abled for autostart. Otherwise, the queue will be started as
soon as a node on which it can run is enabled for autostart.
13.9.1.5 Monitoring Queue Information
You use the DCL command SHOW QUEUE to monitor the
status of queues. To display queue information, enter the
SHOW QUEUE command in the following format:
SHOW QUEUE [/qualifier,...] [queue-name]
If you do not specify a qualifier or a queue name, the system
displays the status of all queues on the system and all jobs
owned by you. The SHOW QUEUE qualifiers let you select
the type of queue and the amount of information you want to
display.
Use the following qualifiers to select the information you
want to display:
Qualifier Description
Use the following qualifiers to select the amount of informa-
tion you want to display:
Qualifier Description
You can also combine certain qualifiers to further delineate
the queue information you want to display.
Table 13-4 defines queue statuses returned by the SHOW
QUEUE command.
To display the forms or characteristics available on a system,
use the DCL command SHOW QUEUE/FORM or SHOW
QUEUE/CHARACTERISTIC.
You can further customize the type of queue information
you want to monitor by writing a command procedure that
uses the F$GETQUI lexical function. F$GETQUI invokes the
$GETQUI system service to return information stored in the
queue database.
You can use the F$GETQUI lexical function to obtain infor-
mation about the following types of objects:
Characteristics
Forms
Queues
Jobs contained in queues
Files of jobs contained in queues
For example, you could write a command procedure to dis-
play the total number of blocks of jobs in a pending state in
all printer queues. You must have read access to the job or
SYSPRV or OPER privilege to obtain job and file information.
See the OpenVMS DCL Dictionary for detailed information
about the SHOW QUEUE command and the F$GETQUI
lexical function. For more information about the system ser-
vice invoked by the F$GETQUI lexical function, refer to the
description of the $GETQUI system service in the OpenVMS
System Services Reference Manual .
Examples
1. The following example displays summary information for
all printer and terminal queues:
$ SHOW QUEUE/SUMMARY/DEVICE=(PRINTER,TERMINAL)
Printer queue HERA_LPA0, busy, on HERA::LPA0, mounted form DEFAULT
<Printer queue on node HERA for a line printer>
Job summary: 1 executing
Printer queue HERA_LPB0, busy, on HERA::LPB0, mounted form DEFAULT
<Printer queue on node HERA for a line printer>
Job summary: 1 executing
Generic printer queue CLUSTER_PRINT
<Generic printer queue for LPA0: and LPB0:>
Job summary: 1 holding
Terminal queue LQ_PRINT, stopped, on HERA::TXA7:,
<Letter quality printer in Bob's office>
mounted form PORTRAIT_INDENTED (stock=DEFAULT)
Job summary: 2 pending (445 blocks), 1 holding
2. The following example displays the full status and options
of all executing jobs:
$ SHOW QUEUE/FULL/ALL/BY_JOB_STATUS=EXECUTING
Batch queue HERA_BATCH, available, on HERA::
/AUTOSTART_ON=(HERA::) /BASE_PRIORITY=3 /JOB_LIMIT=25 /OWNER=[SYSTEM]
/PROTECTION=(S:E,O:D,G:R,W:W)
Entry Jobname Username Status
----- ------- -------- ------
700 VUE SMITH Executing
Submitted 25-FEB-1995 14:46 /KEEP /NOLOG /NOPRINT /PRIORITY=100
File: _$333$DISK1:[SMITH.COM]VUE.COM;19 (executing)
Batch queue ZZ_BATCH, available, on ZZ::
/AUTOSTART_ON=(ZZ::) /BASE_PRIORITY=3 /JOB_LIMIT=25 /OWNER=[SYSTEM]
/PROTECTION=(S:E,O:D,G:R,W:W)
Entry Jobname Username Status
----- ------- -------- ------
874 PIPE FITZGERALD Executing
Submitted 26-FEB-1995 11:25 /KEEP /NOTIFY /NOPRINT /PRIORITY=100
/RESTART=CLUSTER_BATCH /RETAIN=UNTIL="0 01:00"
File: _$333$DISK1:[FITZGERALD]PIPE.COM;2 (executing)
Server queue NM$QUE01, available, on HERA::, mounted form DEFAULT
/BASE_PRIORITY=4 /DEFAULT=(FEED,FORM=DEFAULT) /OWNER=[DOC,SMITH]
/PROCESSOR=NM$DAEMON /PROTECTION=(S:E,O:D,G:R,W:R) /RETAIN=ERROR
Entry Jobname Username Blocks Status
----- ------- -------- ------ ------
236 NM ROSENBERG 12 Processing
Submitted 23-FEB-1995 08:42 /FORM=DEFAULT /PRIORITY=100
File: _$5$DISK3:[FOLK$.NM]NM$J1991072308340647.WRK;1
13.9.1.6 Modifying a Queue
You can use the INITIALIZE/QUEUE, START/QUEUE, and
SET QUEUE commands to change queue options; as you
change queue options, information about the queue in the
queue database is updated. You can use the INITIALIZE and
START commands only on stopped queues.
The SET QUEUE command lets you change many queue
options without having to stop the queue, initialize it, and
restart it. For example, the following command modifies the
running batch queue, SYS$BATCH:
$ SET QUEUE/JOB_LIMIT=4/DISABLE_SWAPPING SYS$BATCH
The command in this example changes the job limit for
the queue and disables swapping for all jobs processed in
SYS$BATCH. All other options of the queue remain the same.
The changed options do not affect the execution of current
jobs; however, all subsequent jobs are executed with the new
options in effect.
How to Perform This Task
To change queue options that cannot be altered with the SET
QUEUE command, use the following procedure:
1. Stop the queue with the STOP/QUEUE/NEXT command.
2. Restart the queue with the START/QUEUE or the
INITIALIZE/QUEUE/START command, specifying the
appropriate qualifiers for the options you desire.
Any qualifiers that you do not specify remain as they
were when the queue was previously initialized, started,
or set.
Note that initializing an existing queue does not delete any
current jobs in that queue. Any new queue settings estab-
lished by the new INITIALIZE/QUEUE command affect all
jobs waiting in the queue or subsequently entering the queue.
See Table 13-1 for a list of the options that can be used for
batch and output queues.
13.9.1.7 Pausing a Queue
The DCL command STOP/QUEUE (when used without
qualifiers) temporarily suspends the execution of all cur-
rent jobs in the queue and places the queue in a paused state.
Pausing an output queue lets you enter print job position-
ing and alignment commands to the print symbiont. (See
Section 13.9.6.9 for more information about using the STOP
/QUEUE command to control print jobs.)
To resume the execution of a paused queue, enter the DCL
command START/QUEUE.
13.9.1.8 Closing a Queue
When a queue is not available for an extended period of
time (for example, when a printer needs servicing), you
can prevent new jobs from entering the queue by specify-
ing the /CLOSE qualifier with the SET QUEUE, INITIALIZE
/QUEUE, or START/QUEUE command. The /CLOSE qual-
ifier prevents users from entering jobs in the queue with
PRINT or SUBMIT commands. When a user attempts to
print or submit a job to a closed queue, the job is rejected, and
the user is notified that the queue is closed. For example:
$ PRINT/QUE=$PRINTER_1 REPORT.TXT;
%PRINT-F-CREJOB, error creating job
-JBC-E-QUE_CLOSED, queue closed, jobs not accepted
Jobs currently in the queue are not affected.
13.9.1.9 Stopping a Queue
To stop a queue, enter one of the following commands, ac-
cording to the desired stop queue operation:
Command Description
For autostart queues, these commands deactivate a queue
for autostart as explained in Section 13.9.1.10. To restart a
stopped nonautostart queue or to reactivate a deactivated
autostart queue, enter the START/QUEUE command.
13.9.1.10 Preventing Autostart Queues from Starting
With autostart queues, the STOP/QUEUE/NEXT or STOP
/QUEUE/RESET command stops a queue and marks it in-
active for autostart until the START/QUEUE command
is entered. The STOP/QUEUE/NEXT or STOP/QUEUE
/RESET command prevents an autostart queue from being
automatically restarted.
You might use this feature to prevent an autostart output
queue from accidentally restarting when a printer is being
serviced.
13.9.1.11 Disabling Autostart on a Node
The DISABLE AUTOSTART/QUEUES command notifies the
queue manager to perform the following tasks on the affected
node:
.
Prevent autostart queues from failing over to the node.
.
Mark all autostart queues on the node as ``stop pend-
ing'' in preparation for a planned shutdown. This lets jobs
currently executing on the queues complete.
.
Upon completion of any jobs currently executing on one
of the node's autostart queues, force the queue to fail over
to the next available node in the queue's failover list on
which autostart is enabled. (An autostart queue can only
fail over if you have set it up to run on more than one
node.)
The DISABLE AUTOSTART/QUEUES command affects only
autostart queues. By default, the command affects the node
from which it is entered. However, you can specify the /ON_
NODE qualifier to disable autostart on a different node.
The DISABLE AUTOSTART/QUEUES command should be
used prior to shutting down a node. For more information,
on disabling autostart before shutting down a system, see
Section 13.9.1.13.
For more information on the DISABLE AUTOSTART
/QUEUES command, see the OpenVMS DCL Dictionary .
13.9.1.12 Stopping All Queues on a Node
To stop all queues on a node without stopping the queue man-
ager, enter the DCL command STOP/QUEUES/ON_NODE.
By default, this command affects the node on which the com-
mand is entered. To stop queues on a different node, specify
the name of the node on which queues are to be stopped as
follows:
STOP/QUEUES/ON_NODE=node-name
When you enter the STOP/QUEUES/ON_NODE command,
nonautostart queues and autostart queues without a failover
list are stopped. Autostart queues created or started with a
failover list fail over to the next available node in that list that
has autostart enabled. In all cases, currently executing jobs
are aborted.
However, you can allow jobs executing on autostart queues to
complete by entering the DISABLE AUTOSTART/QUEUES
command and waiting for jobs to complete before enter-
ing the STOP/QUEUES/ON_NODE command. For more
information, see Section 13.9.1.13.
The STOP/QUEUES/ON_NODE command is included in the
shutdown command procedure SYS$SYSTEM:SHUTDOWN.COM.
For more information, see Section 13.9.1.13.
13.9.1.13 Stopping Queues Before Shutting Down a System
The following commands are included in the shutdown com-
mand procedure SYS$SYSTEM:SHUTDOWN.COM and are
automatically executed when you shut down a node using
SHUTDOWN.COM:
.
DISABLE AUTOSTART/QUEUES
.
STOP/QUEUES/ON_NODE
Allowing Jobs to Complete Before Stopping Autostart Queues
The STOP/QUEUES/ON_NODE command aborts jobs and
stops all queues on a node; the DISABLE AUTOSTART com-
mand allows jobs on autostart queues to finish processing
before failing over or stopping autostart queues. If your con-
figuration uses autostart queues, you might want to allow jobs
on those queues to complete before stopping your queues.
In SHUTDOWN.COM, the STOP/QUEUES/ON_NODE
command is executed shortly before the node is shut down.
When using SHUTDOWN.COM, you can ensure that jobs on
autostart queues have time to complete before the queues are
stopped by specifying the time interval between the DISABLE
AUTOSTART/QUEUES command and the shutdown.
Use one of the following methods:
Define the logical name
SHUTDOWN$DISABLE_AUTOSTART to
be the number of minutes as follows:
DEFINE/SYSTEM/EXECUTIVE_MODE
SHUTDOWN$DISABLE_AUTOSTART number-
of-minutes
While executing
SHUTDOWN.COM
Specify the number of minutes as a shutdown
option as follows:
Shutdown options [NONE]: DISABLE_AUTOSTART=number-
of-minutes
Determine an appropriate number of minutes for your
configuration, based on the number and type of jobs in the
autostart queues.
If you shut down a node without using SHUTDOWN.COM,
you might want to enter the DISABLE AUTOSTART
/QUEUES command and wait a few minutes to allow jobs
on autostart queues to finish processing before you enter the
STOP/QUEUES/ON_NODE command.
13.9.1.14 Assigning a Logical Queue
When a problem occurs with a print device, you can reroute
the queue associated with that device to another queue asso-
ciated with a functioning device. By creating a logical queue
out of a malfunctioning execution queue, all of the jobs sub-
mitted to that queue will execute in another queue. Use the
following procedure to create a logical queue that redirects its
jobs to another queue:
1. Stop the queue associated with the malfunctioning print
device by entering a command in the following format:
STOP/QUEUE/NEXT source_queue
This command inhibits new jobs from processing but lets
the current job finish processing, unless the print de-
vice is inoperable. If the device is inoperable, use the
STOP/QUEUE/RESET command to halt the queue and
immediately cancel all output from the device.
2. Take the device off line.
3. Reroute existing jobs from the malfunctioning print de-
vice to another print device by entering a command in
the following format:
ASSIGN/QUEUE target_queue source_queue
Check to be sure that the options of the new print device
are appropriate for processing the new jobs.
To deassign the logical queue, enter the following command:
DEASSIGN/QUEUE source_queue
13.9.1.15 Moving All Jobs from One Queue to Another
Before you delete a queue, you might want to requeue all jobs
in the queue to another queue. To do so, enter a command in
the following format:
ASSIGN/MERGE target-queue source-queue
Target-queue is the queue to which you are moving the jobs.
Source-queue is the queue to be deleted.
The ASSIGN/MERGE command moves all jobs currently
in the source queue. If new jobs are entered into the source
queue before it is deleted, those new jobs remain in the source
queue, and are not transferred to the target queue. You
might want to close the queue to prevent new jobs from being
entered in the queue, as explained in Section 13.9.1.8, before
entering the ASSIGN/MERGE command.
For ongoing redirection of jobs, use the ASSIGN/QUEUE
command as explained in Section 13.9.1.14.
13.9.1.16 Deleting a Queue
Perform the following steps to delete a queue:
1. Stop the queue by entering the STOP/QUEUE/NEXT
command. (Use STOP/QUEUE/RESET if you want to
abort all executing jobs.)
2. Wait for executing jobs to complete.
3. Requeue the entries still pending in the queue. If you do
not perform this step, jobs will be deleted along with the
queue.
4. Remove all references to the queue from generic queues
or jobs. See Section 13.10.5 for more information about
removing references to queues.
5. Delete the queue by entering the DELETE/QUEUE com-
mand.
For more information, see the DELETE/QUEUE command
in the OpenVMS DCL Dictionary . See Section 13.10.5 for help
solving problems deleting a queue.
13.9.2 Managing Characteristics
A characteristic is any attribute of a print or batch job that
is relevant to your environment. For example, characteris-
tics for a printer could refer to the color of the ink, the type
of paper, or the location of the printer. Once you define the
characteristics for a queue, users can specify the characteris-
tics they want to associate with their job when they enter the
PRINT command.
For example, you could define the characteristics NORTH,
SOUTH, EAST, and WEST on a queue that sends jobs to
printers located in four different areas of an office building.
Users in the east section of the building could then specify the
EAST characteristic to send their jobs to the printer located in
their area of the building.
Use the following commands when working with character-
istics:
Command Description
Specifies one or more
characteristics for
processing jobs on a
queue.
SHOW QUEUE/FULL Displays informa-
tion about a queue,
including any char-
acteristics assigned to
the queue.
PRINT/CHARACTERISTIC
SUBMIT/CHARACTERISTIC
SET ENTRY/CHARACTERISTIC
Specifies the name
or number of one or
more characteristics
to be associated with
the job.
13.9.2.1 Defining Characteristics
No characteristics are defined by default. To define a char-
acteristic, use the DEFINE/CHARACTERISTIC command in
the following format:
DEFINE/CHARACTERISTIC characteristic-name characteristic-number
For example:
$ DEFINE/CHARACTERISTIC EAST 1
You cannot define more than one characteristic name to a
number.
If your queue configuration requires you to have more than
one characteristic name for a single number, you can define
logical names to achieve the same result. For example, you
might enter the following commands:
$ DEFINE/CHARACTERISTIC SECOND_FLOOR 2
$ DEFINE/SYSTEM/EXECUTIVE_MODE SALES_FLOOR SECOND_FLOOR
$ DEFINE/SYSTEM/EXECUTIVE_MODE SALES_DEPT SECOND_FLOOR
In this example, the characteristic name SECOND_FLOOR
is assigned to the characteristic number 2. The logical names
SALES_FLOOR and SALES_DEPT are defined as equivalent
to the characteristic name SECOND_FLOOR. As a result,
the logical names SALES_FLOOR or SALES_DEPT are
equivalent to the characteristic name SECOND_FLOOR
and the characteristic number 2. These logical names
can be specified as the characteristic-name value for any
/CHARACTERISTIC= characteristic-name qualifier.
In a VAXcluster environment, you must define the logical
names on every node that requires them.
For more information, see the DEFINE/CHARACTERISTIC
command in the OpenVMS DCL Dictionary .
13.9.2.2 Displaying Characteristics Defined on a System
To see the characteristics defined on a system, enter the
SHOW QUEUE/CHARACTERISTIC command. For exam-
ple:
$ SHOW QUEUE/CHARACTERISTIC
Characteristic name Number
------------------- ------
EAST 1
WEST 2
NORTH 3
SOUTH 4
13.9.2.3 Assigning Characteristics to a Queue
No characteristics are assigned to a queue by default. To as-
sign characteristics to a queue, include the /CHARACTERISTICS
qualifier with the INITIALIZE/QUEUE, START/QUEUE, or
SET QUEUE command as follows:
SET QUEUE/CHARACTERISTICS=characteristic[,...] queue-name
For example:
$ SET QUEUE/CHARACTERISTICS=(EAST) LN03_1
For more information, see the /CHARACTERISTICS quali-
fier of the INITIALIZE/QUEUE command in the OpenVMS
DCL Dictionary .
13.9.2.4 Displaying Characteristics Assigned to a Queue
To determine the characteristics defined for a queue, enter
the DCL command SHOW QUEUE/FULL. For example:
$ SHOW QUEUE/FULL LN03_1
Printer queue LN03_1, idle, on HERA::TTA3, mounted form DEFAULT
<Printer queue on node HERA for an LN03 printer>
/BASE_PRIORITY=4 /CHAR=(1) /DEFAULT=(FLAG=ONE,FORM=LN03$PORTRAIT
(stock=DEFAULT)) /LIBRARY=LN03LIBRARY Lowercase
/OWNER=[SYSTEM] /PROCESSOR=LATSYM /PROTECTION=(S:E,O:D,G:R,W:W)
/SEPARATE=(RESET=(ANSI$RESET))
13.9.2.5 Canceling Characteristics Assigned to a Queue
To cancel characteristics assigned to a queue, specify the
/NOCHARACTERISTICS qualifier with the INITIALIZE
/QUEUE, START/QUEUE, or SET QUEUE command. For
example:
$ SET QUEUE/NOCHARACTERISTICS
13.9.2.6 Deleting Characteristics
To delete a characteristic definition, enter the DCL command
DELETE/CHARACTERISTIC. For example:
$ DELETE/CHARACTERISTIC EAST
You must specify the characteristic name with the DELETE
/CHARACTERISTIC command. If you know the number
assigned to the characteristic but do not know the name, en-
ter the SHOW QUEUE/CHARACTERISTIC command to
display the names and numbers assigned to characteristics on
the system.
For more information about the DELETE/CHARACTERISTIC
command, see the OpenVMS DCL Dictionary .
If the system displays the following messages, a queue or job
refers to the characteristic:
%DELETE-E-NOTDELETED, error deleting characteristic
-JBC-E-REFERENCED, existing references prevent deletion
You must remove all references to the characteristic be-
fore you can delete the characteristic. For information about
removing references to a characteristic, see Section 13.10.5.
13.9.3 Managing Banner Pages
For a detailed description of banner pages, see Section 13.8.7.
Use the following commands when working with banner
pages:
Command Description
Specifies one or
more of the follow-
ing job banner page
options:
[NO]BURST
[NO]FLAG
[NO]TRAILER
The job banner
pages you specify
for a queue cannot
be overridden by the
user.
INITIALIZE/QUEUE
/DEFAULT= option = keyword
START/QUEUE/DEFAULT= option = keyword
SET QUEUE/DEFAULT= option=keyword
Specifies one or
more of the follow-
ing file banner page
options:
[NO]BURST
[NO]FLAG
[NO]TRAILER
Keyword can be
either ALL or ONE.
Users can over-
ride the file banner
page settings you
specify for a queue
by specifying the
BURST, FLAG, and
TRAILER qualifiers
with the PRINT
command.
PRINT/BURST[= keyword ] Specifies the ALL
or ONE keyword
to override, for the
job, the file burst
pages specified for
the queue.
PRINT/FLAG[= keyword ] Specifies the ALL
or ONE keyword to
override, for the job,
the file flag pages
specified for the
queue.
PRINT/TRAILER[= keyword ] Specifies the ALL
or ONE keyword
to override, for the
job, the file trailer
pages specified for
the queue.
13.9.4 Managing Forms
To use forms with your queues, take the following steps:
1. Define a form. For more information, see Section 13.9.4.1.
2. If desired, assign a default form for each output execution
queue. For more information, see Section 13.9.4.4.
If you do not assign a default form to a queue, the queue
uses the systemwide default form, DEFAULT. If you
want to change the DEFAULT form, you must do so be-
fore creating any queues that reference the DEFAULT
form. For more information, see Section 13.9.4.3.
3. Inform users of the available forms and the queues with
which they should be used. In addition, you can cre-
ate symbols to automatically include the form with the
PRINT command as follows:
$ PRINT_REPORT :== PRINT/FORM=REPORT
4. If you see a print job pending because of a stock mis-
match, change the stock of the printer to the re-
quested stock and mount the form associated with
the requested stock on the queue, as explained in
Section 13.9.4.5, or perform one of the other steps ex-
plained in Section 13.10.2.1.
Use the following commands when working with forms:
Specifies the name or
number of the default
form for an output
execution queue.
PRINT/FORM
SET ENTRY/FORM
Specifies the name or
number of the form to
be associated with a
print job.
INITIALIZE/QUEUE/FORM_MOUNTED
START/QUEUE/FORM_MOUNTED
SET QUEUE/FORM_MOUNTED
Specifies the name or
number of the mounted
form for an output
execution queue.
SHOW QUEUE/FULL Displays information
about a queue, includ-
ing the default form for
the queue and the form
mounted on the queue.
13.9.4.1 Defining a Form
To create a form, enter the DEFINE/FORM command as
follows:
DEFINE/FORM form-name form-number [/qualifiers]
You can specify any of the following qualifiers:
If you create forms only to provide different formatting op-
tions (and not to specify paper stock), specify the same stock
type for each of the different forms. That way, jobs request-
ing any of these forms will print on the same queue without
requiring you to enter any additional commands to mod-
ify the queue. Unless you specify the /STOCK qualifier, the
form's stock is the same as the name of the form.
For more information about the DEFINE/FORM command,
see the OpenVMS DCL Dictionary .
Example
The command in the following example defines the form
MEMO as the number 3 and defines formatting options for
the form:
$ DEFINE/FORM MEMO 3/STOCK=DEFAULT -
_$ /MARGIN=(TOP=2,BOTTOM=2,LEFT=6)/WIDTH=80/LENGTH=66/TRUNCATE -
_$ /DESCRIPTION="LN03 indented memo format"
13.9.4.2 Displaying Forms Defined on a System
To display forms defined on a system, enter the SHOW
QUEUE/FORM/FULL command. If you know the name
of the form you want to display, you can specify the form
name as a parameter to the command. For example:
$ SHOW QUEUE/FORM/FULL MEMO
Form name Number Description
--------- ------ -----------
MEMO (stock=DEFAULT) 110 LN03 indented memo format
/LENGTH=66 /MARGIN=(TOP=2,BOTTOM=2,LEFT=5) /STOCK=DEFAULT /TRUNCATE
/WIDTH=80
For more information, see the SHOW QUEUE/FORM com-
mand in the OpenVMS DCL Dictionary .
13.9.4.3 Changing the Systemwide Default Form
The operating system includes a systemwide default form,
named DEFAULT, that corresponds to the form number 0
and has a stock named DEFAULT. A queue initialized with-
out the /DEFAULT=FORM qualifier uses the systemwide
default form to process print jobs not explicitly associated with
a form definition. The systemwide DEFAULT form uses the
following options:
Form name Number Description
--------- ------ -----------
DEFAULT 0 System-defined default
/MARGIN=(BOTTOM=6) /STOCK=DEFAULT /TRUNCATE /WIDTH=132
/LENGTH=66
To change the systemwide default form, enter the DEFINE
/FORM command in the following format:
DEFINE/FORM DEFAULT 0 /qualifier[s]
For example, to change the systemwide default form's bottom
margin from 6 to 4, and the page length from 66 to 55, enter
this command:
$ DEFINE/FORM DEFAULT 0/MARGIN=(BOTTOM=4)/LENGTH=55
Note
Once a queue or job references a form, you cannot
change the stock for that form. Therefore, if you
want to change the stock of the DEFAULT form, you
should do so before any queues are created.
13.9.4.4 Assigning a Default Form for a Queue
If a user does not specify the /FORM qualifier when submit-
ting a job with the PRINT command, the job uses the default
form for the execution queue on which the job is printed.
To assign a default form for an output execution queue, spec-
ify the /DEFAULT qualifier with the INITIALIZE/QUEUE,
START/QUEUE, or SET QUEUE command as follows:
INITIALIZE/QUEUE/DEFAULT=FORM=form-name-or-number
If you do not establish a default form for a queue, the queue
uses the systemwide default form, DEFAULT.
13.9.4.5 Mounting a Form on a Queue
Mounting a form on a queue associates the stock of the form
with the queue. The stock of the form mounted on a queue
should match the stock of the paper physically loaded in the
queue's printer. A queue's mounted form affects the schedul-
ing of all jobs in the queue. If the stock of a job does not
match the stock of the form currently mounted, the job is
held pending because of stock mismatch and is not scheduled.
When this happens, you can mount a different form on the
queue by using the /FORM_MOUNTED qualifier with the
SET QUEUE command.
You mount a form on a queue by specifying the /FORM_
MOUNTED qualifier with the INITIALIZE/QUEUE, START
/QUEUE, or SET QUEUE command as follows:
INITIALIZE/QUEUE/FORM_MOUNTED=form-name-or-number
See Section 13.10.2.1 for other steps you can take to fix
jobs that are pending because of stock mismatch. See the
OpenVMS DCL Dictionary for more information about the
/FORM_MOUNTED qualifier.
13.9.4.6 Displaying the Form Assigned to a Queue
To find the default form for a queue, enter the DCL com-
mand SHOW QUEUE/FULL. For example:
$ SHOW QUEUE/FULL JEAN_PRINT
Printer queue JEAN_PRINT, idle, on BAY::TTA3:, mounted form 8_5x11
<Queue for printer in Jean's office>
/BASE_PRIORITY=4 /DEFAULT=(FEED,FORM=REPORT (stock=8_5X11)) /OWNER=[SYSTEM]
/PROTECTION=(S:E,O:D,G:R,W:W)
In this example, the default form is REPORT and its stock is
8_5x11. All jobs processed on this queue that are not associ-
ated with an explicit form definition in the PRINT command
have the default form REPORT. As long as the stock of the
mounted form matches the stock of the default form, all jobs
submitted to this queue without an explicit form definition
will be scheduled to print.
13.9.4.7 Deleting a Form
To delete a defined form, enter the DCL command DELETE
/FORM. For example:
$ DELETE/FORM MEMO
You must specify the form name with the DELETE/FORM
command (not the form number ). If you know the num-
ber assigned to the form but do not know the name, enter the
SHOW QUEUE/FORM command to display the names and
numbers assigned to forms on the system.
For information about the DELETE/FORM command, see
the OpenVMS DCL Dictionary .
If the system displays the following messages, a queue or job
exists with a reference to the form:
%DELETE-E-NOTDELETED, error deleting form-name
-JBC-E-REFERENCED, existing references prevent deletion
You must remove all references to the form before you can
delete the form. For information about removing references
to a form, see Section 13.10.5.
13.9.5 Managing Device Control Libraries
To use a device control library module, perform the following
steps:
1. Create a library and insert modules. For more informa-
tion, see Section 13.9.5.1.
2. Assign the device control library to a queue. (This
step is not necessary if you use the default li-
brary SYSDEVCTL.TLB.) For more information, see
Section 13.9.5.2.
3. Create one or more forms with setup or page setup mod-
ules. This lets users request the form (and the accom-
panying setup or page setup modules) when they enter
the PRINT/FORM command. For more information, see
Section 13.9.5.3.
4. Assign a reset module to a queue. This specifies the reset
module to follow each job printed on a queue. For more
information, see Section 13.9.5.4.
Use the following DCL commands to set up device control
library modules for processing print jobs:
TABLE: Click to display Table.
The following sections describe how to manage device control
libraries.
13.9.5.1 Creating a Device Control Library and Inserting Modules
To create a device control library and insert modules, perform
the following steps:
1. Create a device control library by entering a command in
the following format:
LIBRARY/CREATE/TEXT SYS$COMMON:[SYSLIB] filename.TLB
2. Determine the contents of the module-either the text to
be inserted or the escape sequences needed for the desired
printer setup. To determine the proper escape sequences
for a printer option, refer to the operation guide for the
specific printer.
3. Create a module file and enter the appropriate escape se-
quences, carriage control characters, or text. You create
and edit a module file as you would any other text file.
Make sure the text editor you use does not insert a car-
riage return or line feed at the end of your file. This will
affect your printer output.
4. Insert the module into the device control library by enter-
ing the following command:
LIBRARY/INSERT/TEXT library-file module-file
See the OpenVMS Command Definition, Librarian, and
Message Utilities Manual for more information about creat-
ing libraries and inserting modules.
13.9.5.2 Assigning a Library to a Queue
You assign a device control library to an output queue by
specifying the /LIBRARY qualifier with the INITIALIZE
/QUEUE or START/QUEUE command in the following
format:
INITIALIZE/QUEUE/START/LIBRARY=filename queue-name
The file name is the name of the library file that contains
the desired modules. Libraries must be in SYS$LIBRARY
and must have the file type .TLB. If you do not specify the
/LIBRARY qualifier, the default library is SYS$LIBRARY:SYSDEVCTL.TLB.
You can use the /LIBRARY qualifier to specify an alternate
device control library. For example:
$ INITIALIZE/QUEUE/LIBRARY=LN03DEVCTL LN03_A_QUE
Note
If you specify a value for the /LIBRARY qualifier, do
not include the directory, file type, or version number.
The system assumes that the file is in SYS$LIBRARY
and has the type .TLB. If you copy a library file from
another node, be sure that the new library has a
unique file name.
Operations that request a particular device control library
module use the module from the library specified for the
queue. If you have a small configuration of printers and
normally use only a few modules, you usually store all mod-
ules in a single library and assign that same library to each
printer queue.
For sites with a large number of different printers, you usu-
ally create and assign a separate device control library for
each type of printer. If you have a separate device control li-
brary for each type of printer, Digital recommends you give
modules that perform the same function an identical name
in all libraries, even though the modules contain escape se-
quences unique to the specific type of printer. For example,
if three libraries contained modules that set up a printer
for landscape orientation, these modules might be named
LANDSCAPE in all three libraries. This allows you to use the
same form on any queue for which a library contains a mod-
ule of the specified name, even though the modules might
contain different device-specific sequences.
If you use a single library to store modules for different types
of printers, make sure that each module has a unique name.
Use the following command format to display a listing of all
modules contained within a specified library:
LIBRARY/LIST/FULL SYS$LIBRARY:library-name.TLB
13.9.5.3 Creating Forms for Setup and Page Setup Modules
To use setup or page setup modules with print jobs, Digital
recommends you create forms that include these modules.
Use DEFINE/FORM command with the /SETUP= module or
/PAGE_SETUP= module qualifiers. The modules you specify
with the /SETUP qualifier are sent to the printer when the
form is mounted, before each file of a job is printed. Similarly,
the modules you specify with /PAGE_SETUP are sent to the
printer before each page of a job.
Once you have properly created a form that includes a setup
or page setup module, users can request the module by in-
cluding the /FORM qualifier with the PRINT command as
follows:
PRINT/FORM=form-name file-name /QUEUE=queue-name
Users can also request a setup module by specifying the
/SETUP= module qualifier with the PRINT command. Note,
however, that the PRINT/FORM command has an advan-
tage over the PRINT/SETUP command: When a user enters
the PRINT/FORM command, the form name is checked for
validity when the command is entered. With the PRINT
/SETUP command, however, the module names are not
checked until the job attempts to print. If a user makes an
error while entering a module name, the job will not print,
and the user will not be notified unless he or she also specified
the /NOTIFY qualifier.
13.9.5.4 Assigning a Reset Module to a Queue
To assign a module to an output execution queue to reset the
printer to a known state at the end of each job, you use the
/SEPARATE=RESET= module qualifier with the INITIALIZE
/QUEUE, START/QUEUE, or SET QUEUE command. For
example:
$ INITIALIZE/QUEUE/LIBRARY=MYDEVCTL/SEPARATE=RESET=MODULE2 PDQ_QUE
The reset sequence contained in the module resets the printer
at the end of each job. It also resets the printer when the
queue is started to ensure that the first job prints correctly.
Because the /SEPARATE qualifier specifies mandatory queue
options, the RESET module you specify is sent to the queue at
the end of every job. The user cannot override this option.
Example
The following example uses device control library modules to
process a print job.
$ LIBRARY/CREATE/TEXT SYS$LIBRARY:MYDEVCTL.TLB
$ EDIT MODULE1.TXT
!enter printer escape sequences or text for module1
$ EDIT MODULE2.TXT
!enter printer escape sequences or text for module2
$ LIBRARY/INSERT SYS$LIBRARY:MYDEVCTL.TLB/TEXT MODULE1
$ LIBRARY/INSERT SYS$LIBRARY:MYDEVCTL.TLB/TEXT MODULE2
$ INITIALIZE/QUEUE/START/ON=TTA9:/LIBRARY=MYDEVCTL PDQ_QUE
$ SET QUEUE/SEPARATE=RESET=MODULE2 PDQ_QUE
$ SHOW QUEUE/FULL PDQ_QUE
Terminal queue PDQ_QUE, idle on TOAD::TTA9, mounted form DEFAULT
/BASE_PRIORITY=4/DEFAULT=(FEED,FORM=DEFAULT)/LIBRARY=MYDEVCTL
/OWNER=[1,4]/PROTECTION=(S:E,O:D,G:R,W:W)/SEPARATE=(RESET=(MODULE2))
$ DEFINE/FORM/SETUP=MODULE1/STOCK=DEFAULT FORM1 1
$ PRINT/FORM=FORM1 REPORT.TXT,MEMO.TXT/QUEUE=PDQ_QUE
Job REPORT (Queue PDQ_QUE, entry 619) started on PDQ_QUE
In this example, two device control modules are created and
inserted into the library file MYDEVCTL.TLB. The escape
sequence or text in the setup module named MODULE1 is
sent to the printer to set up the printer before REPORT.TXT
is printed and again before MEMO.TXT is printed. The es-
cape sequence or text in the reset module named MODULE2
is sent to the printer only once after both of the files in job
REPORT have printed.
13.9.6 Managing Jobs
As system manager, you are responsible for controlling the
flow of batch and print jobs and for maintaining efficient
job processing performance. Some of the routine tasks for
managing jobs include the following:
Task Section
13.9.6.1 Monitoring Jobs
You use the DCL command SHOW ENTRY to monitor the
status of batch and print jobs. (For information about job sta-
tus, see Table 13-5.) Use the following format to specify the
SHOW ENTRY command:
SHOW ENTRY [entry-number[,...]], [job-name[,...]]
If you do not specify an entry number or job name, the sys-
tem displays all jobs owned by you or by the user specified
with the /USER_NAME qualifier. If you specify a job name,
the system displays all jobs owned by you or by the user spec-
ified with /USER_NAME that match the specified character
string. You can also display a group of jobs by entering a list
of entry numbers or job names, or both, on the command line.
Specify qualifiers with the SHOW ENTRY command to spec-
ify the type of job information you want to display. For more
information, see the OpenVMS DCL Dictionary .
Table 13-5 describes the job statuses returned by the SHOW
ENTRY command.
Examples
1. The following command displays jobs owned by user
GARDNER:
$ SHOW ENTRY/USER_NAME=GARDNER
Entry Jobname Username Blocks Status
----- ------- -------- ------ ------
4 TEST GARDNER Holding
On available batch queue OPAL_BATCH
611 SET GARDNER 140 Pending
On stopped printer queue LQPRINT
2. In the following example, the /FULL qualifier displays job
status information, the time the job was submitted, the file
specification, and the job processing options:
$ SHOW ENTRY/FULL 4,611
Entry Jobname Username Blocks Status
----- ------- -------- ------ ------
4 TEST GARDNER Holding
On available batch queue OPAL_BATCH
Submitted 15-JAN-1995 16:12 /LOG=_$5$DUA1:[GARDNER]TEST.LOG;
/PRIORITY=100
File: _$5$DUA1:[GARDNER]TEST.COM;8
611 SET GARDNER 140 Pending (queue stopped)
On stopped printer queue LQPRINT
Submitted 21-JAN-1995 16:23 /FORM=DEFAULT /PRIORITY=200
File: _$5$DUA1:[GARDNER]SET.TXT;5
File: _$5$DUA1:[GARDNER]WAIT.TXT;1
13.9.6.2 Modifying Job Processing Options
You can modify many job processing options by specifying
qualifiers with a command in the following format:
SET ENTRY/qualifier[,...] entry-number
Table 13-6 lists some qualifiers that are frequently used to
change jobs. For a list of all the job processing options you can
change with the SET ENTRY command, see the OpenVMS
DCL Dictionary .
13.9.6.3 Holding and Releasing a Job
Users can specify that a job be held in a queue before pro-
cessing by specifying one of the following qualifiers with the
PRINT, SUBMIT, or SET ENTRY command:
.
/AFTER= time-value holds a job until the specified time.
.
/HOLD holds a job indefinitely.
You can use the following commands to hold and release jobs:
Command Purpose
Holds a job in a queue for processing
after a specified time.
SET ENTRY/NOHOLD Releases a job that is held in a queue
for any of the following reasons:
. Releases a job from Holding
status.
. Releases a job from Retained
state (a job held in a queue by the
/RETAIN qualifier). For more
information, see Section 13.8.2 and
Section 13.9.6.7.
. Releases a job that was refused by
a user-written symbiont.
SET ENTRY/NOAFTER Releases a job with from a status of
``Holding until time-value ,'' and does
not wait until the specified time to
schedule the job.
SET ENTRY/RELEASE Releases a job that is held in a queue
for any of the following reasons:
. Releases a job from Holding
status.
. Releases a job from a status of
``Holding until time-value ,'' and
does not wait until the specified
time to schedule the job.
. Releases a job from a Retained
state (a job held in a queue by the
/RETAIN qualifier). For more
information, see Section 13.8.2 and
Section 13.9.6.7.
. Releases a job that was refused by
a user-written symbiont.
Examples
1. The following example holds a job until the specified time
and subsequently releases the job before that time:
$ SET ENTRY 1121/AFTER=12-FEB-1995:17:30
$ SET ENTRY/NOAFTER
2. The following example holds a job until the end of the
current day (00:00:00 0 o'clock) and subsequently releases
the job before that time:
$ SET ENTRY 1121/AFTER=TODAY
$ SET ENTRY/NOAFTER
3. The following example holds a job indefinitely and subse-
quently releases it:
$ SET ENTRY 1234/HOLD
$ SET ENTRY 1234/RELEASE
13.9.6.4 Changing the Scheduling Priority of a Job
The queue manager uses the following criteria to determine
the scheduling order for batch and print jobs that are eligible
for processing:
1. Job scheduling priority
The queue manager checks the job's scheduling prior-
ity. The job with the highest scheduling priority value
is processed first. The job scheduling priority is different
than the base process priority or current process pri-
ority. The user can specify job scheduling priority with
the /PRIORITY qualifier of the PRINT or SUBMIT
command.
2. Size (optional, and applies only to output jobs)
By default, the job size of an output job is checked. Among
jobs of identical scheduling priority, the smallest sized job
is processed first.
The job size is not checked if the queue has been created,
started, or modified to use the /SCHEDULE=NOSIZE
option. For more information, see Section 13.8.6.
3. Submission time
If the jobs' scheduling priorities are identical, the job that
was submitted first is processed first.
If a batch or print job cannot be processed, it is placed in
a pending state and is not processed until the cause of
the pending state is resolved. For more information, see
Section 13.10.2. You can change the scheduling priority of a
job by using the /PRIORITY qualifier with the SET ENTRY
command as follows:
SET ENTRY/PRIORITY=n entry-number
Do not confuse the job scheduling priority with the pro-
cess base priority on a queue. The job scheduling prior-
ity value must be in a range of 0 through 255, where 0
is the lowest priority and 255 is the highest. The default
value for /PRIORITY is the value of the system parameter
DEFQUEPRI (usually set at 100). The following example
changes the scheduling priority of a job to 50:
$ SET ENTRY/PRIORITY=50 1131
13.9.6.5 Requeuing an Executing Job
To stop and requeue an executing print job, enter the STOP
/QUEUE/REQUEUE command. This command suspends
a currently executing job and requeues it to the specified
queue. Other jobs remain pending in the queue until they are
processed.
For example, suppose a job is executing in output execution
queue BETA_LPB0 when the printer on which the queue is
running jams. If no other jobs are pending in the queue, you
might want to stop and requeue the job to a queue running
on another printer. Because the printer in this example is
jammed, you might also want to stop the queue. To do so, you
would enter commands similar to the following:
$ STOP/QUEUE/REQUEUE=BETA_LPA0 BETA_LPB0
$ STOP/QUEUE/RESET BETA_LPB0
The first command causes the executing print job on BETA_
LPB0 to be stopped and requeued to BETA_LPA0. The second
command stops queue BETA_LPB0.
If you are requeuing a job on a batch queue, you must include
the /ENTRY= n qualifier. For example:
$ STOP/QUEUE/ENTRY=1251/REQUEUE=FRED_BATCH WILMA_BATCH
To hold an aborted job, specify the /HOLD qualifier as follows:
STOP/QUEUE/REQUEUE[=queue-name]/HOLD[/ENTRY=entry-number]
queue-name
When you specify /HOLD, the aborted job is placed in a hold
state for later release with the SET ENTRY/RELEASE or
SET ENTRY/NOHOLD command.
To change the scheduling priority of the aborted job, specify
the /PRIORITY qualifier as follows:
STOP/QUEUE/REQUEUE[=queue-name]/PRIORITY=n[/ENTRY=entry-
number] queue-name
Specify the new priority as n .
13.9.6.6 Requeuing a Pending Job
To requeue a job that is pending in a queue, enter the SET
ENTRY/REQUEUE command. For example:
$ SET ENTRY/REQUEUE=LN03$PRINT 196
This command moves job 196 to the queue LN03$PRINT.
13.9.6.7 Retaining Jobs in a Queue
Users can specify a retention option for a batch or print job by
specifying the /RETAIN= option qualifier with the SUBMIT
or PRINT command.
To change the user-specified retention policy for a job, spec-
ify the /RETAIN= option qualifier with the SET ENTRY
command in the following format:
SET ENTRY/RETAIN=option entry-number
Option is one of the following:
For example, the following command retains job 172 in the
queue until 3 hours after the job completes. At that time, the
job will automatically be deleted from the queue:
$ SET ENTRY/RETAIN=UNTIL="+3:00" 172
For more information about user-specified job retention, see
the /RETAIN qualifier for the PRINT, SUBMIT, or SET
ENTRY command in the OpenVMS DCL Dictionary .
You can set a job retention policy on a queue by specifying the
/RETAIN qualifier with the INITIALIZE/QUEUE, START
/QUEUE, or SET QUEUE command. For information, see
Section 13.8.2.
13.9.6.8 Deleting a Job
Under certain circumstances, it is necessary to terminate an
executing batch or print job. For example, you might need to
terminate a batch job that has entered an endless loop.
Follow this procedure to delete either a pending or an exe-
cuting job:
1. Determine the entry number of the job by entering one of
the following DCL commands:
SHOW ENTRY/USER_NAME=username [job-name]
SHOW QUEUE/ALL [queue-name]
If you do not know the job name, user name, or queue
name, enter the following command:
SHOW QUEUE/BATCH/ALL/BY_JOB_STATUS=EXECUTING
2. Delete the job by entering a command in the following
format:
DELETE/ENTRY=(entry-number)[,...]
Example
Suppose a user has noticed that a job is processing in an
endless loop. The user is not the owner of the job and lacks
sufficient privilege to stop it. The user enlists your aid as the
system manager. You might enter the following command:
$ SHOW QUEUE/BATCH/ALL/BY_JOB_STATUS=EXECUTING
Batch queue JADE_BATCH, available, on JADE::
Entry Jobname Username Status
----- ------- -------- ------
312 ARTWORK HUNTER Executing
Batch queue OPAL_BATCH, available, on OPAL::
Entry Jobname Username Status
----- ------- -------- ------
317 STOCKS CHANDLER Executing
Batch queue RUBY_BATCH, available, on RUBY::
Entry Jobname Username Status
----- ------- -------- ------
888 TEMPO ENGLISH Executing
$ DELETE/ENTRY=317
13.9.6.9 Pausing an Output Queue to Control Print Job Position and
Alignment
Pausing an output queue lets you communicate with the
print symbiont interactively. You enter the STOP/QUEUE
command (without any qualifiers) to pause a queue. Once
a queue is paused, you can perform operations such as the
following:
.
Specify the position at which a suspended job is to resume
printing. For example, suppose a printer has a paper jam
and the first several pages of a print job are destroyed.
You can pause the queue and restart the job, resuming
printing at the beginning of the file.
For more information, see Section 13.9.6.9.1.
.
Specify the number of pages and the type of data for
aligning printer forms. For example, suppose a printer
uses a paper stock that is a preprinted continuous-form
paper. When you begin printing a job, you notice the pa-
per is not correctly aligned, so output does not print in the
correct space on the preprinted form. You could pause
the queue and print sample data to help you correct the
paper alignment.
For more information, see Section 13.9.6.9.2.
13.9.6.9.1 Specifying the Position of Print By default, when you
pause a queue and restart it, printing resumes in the current
job at a checkpoint near where it left off. To specify the posi-
tion at which the current job is to resume printing, pause the
queue, then enter the START/QUEUE command with any of
the following qualifiers:
Qualifier Description
When you must use more than one positioning qualifier
with the same START/QUEUE command, file positioning is
performed in the following order:
1. /TOP_OF_FILE
2. /FORWARD
3. /BACKWARD
4. /SEARCH
Examples
1. In the following example, the STOP/QUEUE command
suspends the job that is currently printing on the printer
queue JADE_PRINT and places that queue in the paused
state. The START/QUEUE command releases the queue
from the paused state. The /TOP_OF_FILE qualifier
causes the job that was suspended to resume printing
at the beginning of the file rather than at where it was
interrupted.
$ STOP/QUEUE JADE_PRINT
$ START/QUEUE/TOP_OF_FILE JADE_PRINT
2. In the following example, the START/QUEUE command
resumes output on printer SYS_LPA0 after advancing 15
pages from the beginning of the file:
$ START/QUEUE/TOP/FORWARD=15 SYS_LPA0
13.9.6.9.2 Aligning Print Forms To print alignment data to aid
in aligning printer forms, pause the queue, then enter the
START/QUEUE command along with the /ALIGN qualifier
in the following format:
START/QUEUE/ALIGN[=(option[,...])]
The following options control the number of alignment pages
and type of alignment data:
Option Description
You can use the /ALIGN qualifier along with any of the file
positioning qualifiers described in the previous section. File
positioning is performed before alignment data is printed.
After the alignment is complete, the queue enters a paused
state until you restart it by reentering the START/QUEUE
command. Printing resumes from the point that alignment
data started; that is, the task is backspaced over the pages
printed for alignment.
Example
The command in the following example requests masked
alignment for four pages of output:
$ START/QUEUE/BACKWARD=2/ALIGN=(MASK,4) SYS_LPA0
In this example, the file for the job that was being printed
when the queue was paused is backspaced two pages be-
fore alignment is performed. Four pages of alignment mask
characters are printed. Then the output for the current job is
positioned backward four pages, and the queue pauses.