[next] [previous] [contents]

  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



  Managing queues
Section 13.9.1
  Managing characteristics Section 13.9.2
  Managing forms Section 13.9.4
  Managing device control libraries Section 13.9.5
  Managing jobs in queues Section 13.9.6
  Solving queue problems Section 13.10

  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.



  Task

                                                                                For More
                                                                                Information



  Initializing Queues
Section 13.9.1.1
  Starting Nonautostart Queues Section 13.9.1.2
  Enabling Autostart on a Node to Start Autostart Queues Section 13.9.1.3
  Activating an Autostart Queue Section 13.9.1.4
  Monitoring Queue Information Section 13.9.1.5
  Modifying a Queue Section 13.9.1.6
  Pausing a Queue Section 13.9.1.7
  Closing a Queue Section 13.9.1.8
  Stopping a Queue Section 13.9.1.9
  Preventing Autostart Queues from Starting Section 13.9.1.10
  Disabling Autostart on a Node Section 13.9.1.11
  Stopping All Queues on a Node Section 13.9.1.12
  Stopping Queues Before Shutting Down a System Section 13.9.1.13
  Assigning a Logical Queue Section 13.9.1.14
  Moving All Jobs from One Queue to Another Section 13.9.1.15
  Deleting a Queue Section 13.9.1.16

  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.



                                            Note

        The ENABLE AUTOSTART/QUEUES command
        starts only valid, active autostart queues capable of
        running on a node. If an autostart queue does not
        start when you enter this command, the queue might
        not be active for autostart. You must initially activate
        autostart queues, as explained in
Section 13.9.1.4.

  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



  /BY_JOB_STATUS[= keyword ,...] Displays queues that contain
                                                  jobs of the specified status. You
                                                  can specify one or more of the
                                                  following keywords:
                                                      executing
                                                      holding
                                                      pending
                                                      retained
                                                      timed_release
                                                  If no keyword is specified, by
                                                  default the jobs of all status are
                                                  displayed. For more information
                                                  about job status, see
Table 13-5.
  /BATCH Displays batch execution queues.
  /DEVICE[= keyword ,...] Displays output execution
                                                  queues. You can select a spe-
                                                  cific type of execution queue
                                                  by entering one or more of the
                                                  following keywords:
                                                      printer
                                                      terminal
                                                      server
                                                  If no keywords are specified,
                                                  all types of output queue are
                                                  displayed.
  /GENERIC Displays the status of generic
                                                  queues.

  Use the following qualifiers to select the amount of informa-
  tion you want to display:


  Qualifier Description



  /ALL_JOBS Displays information about all jobs for the selected
                      queues.
  /BRIEF Displays a brief listing of information about job en-
                      tries in the queue. The brief listing is the default
                      when no qualifier is specified with the SHOW QUEUE
                      command.
  /FILES Adds a list of files associated with each job to the
                      display.
  /FULL Displays complete queue and job information (also
                      displays any ACLs set for the queues).
  /SUMMARY Displays the total number of executing, pending,
                      holding, retained, and timed release jobs. The jobs
                      themselves are not displayed.

  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.
When the queue is available again, use the /OPEN qualifier to
  open the queue for incoming jobs.

  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



  STOP/QUEUE/NEXT Lets all currently executing jobs complete
                                    and then stops the queue. Once you enter
                                    this command, all new jobs are prevented
                                    from executing.
  STOP/QUEUE/RESET Abruptly stops the queue and returns
                                    control to the system. Any jobs that are
                                    currently executing are stopped immedi-
                                    ately.
                                    If the queue is not set to retain jobs
                                    completed with an error status, you
                                    might want to use the SET QUEUE
                                    /RETAIN=ERROR command to do so before
                                    stopping the queue with the STOP/QUEUE
                                    /RESET command. This causes the queue
                                    to retain information about aborted jobs.
                                    For print jobs retained on error, you
                                    can use the SET ENTRY/RELEASE
                                    /NOCHECKPOINT command to restart
                                    the interrupted jobs from the beginning.
                                    Print jobs are restartable by default; batch
                                    jobs are not restartable unless submitted
                                    with the /RESTART qualifier.

  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:



  Timing Method

  Before executing
  SHUTDOWN.COM

                                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



  DEFINE/CHARACTERISTIC Creates a character-
                                                              istic and assigns a
                                                              name and number.
  DELETE/CHARACTERISTIC Deletes a characteris-
                                                              tic.
  SHOW QUEUE/CHARACTERISTIC Displays information
                                                              about characteris-
                                                              tics defined for the
                                                              system.
  INITIALIZE/QUEUE/CHARACTERISTICS
  SET QUEUE/CHARACTERISTICS
  START/QUEUE/CHARACTERISTICS

                                                              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 .



                                            Note

        If you want to define a characteristic name that is
        also an existing logical name, make sure you read
        the documentation of logical names in the OpenVMS
        User's Manual
.

  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



  INITIALIZE/QUEUE/SEPARATE= option
  START/QUEUE/SEPARATE= option
  SET QUEUE/SEPARATE= option

                                                                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:



  Command Description

  DEFINE/FORM Creates a form and
                                                            assigns a name and
                                                            number.
  SHOW QUEUE/FORM/FULL Displays information
                                                            about forms available
                                                            on a system.
  DELETE/FORM Deletes a form.
  INITIALIZE/QUEUE/DEFAULT=FORM
  START/QUEUE/DEFAULT=FORM
  SET QUEUE/DEFAULT=FORM

                                                            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:



  Qualifier Purpose

  /WIDTH= n Specifies the physical width of
                                                    the paper in characters.
  /LENGTH= n Specifies the physical length of
                                                    a form page in lines.
  /[NO]TRUNCATE Specifies that characters
                                                    exceeding the line length
                                                    specified by /WIDTH and
                                                    /MARGIN be discarded. See
                                                    
Section 13.8.11.
  /[NO]WRAP Specifies that characters ex-
                                                    ceeding the line length speci-
                                                    fied by /WIDTH and /MARGIN
                                                    be wrapped to the next line.
                                                    See Section 13.8.11.
  /MARGIN=( option = n [,...]) Specifies the number of blank
                                                    spaces for one or more of
                                                    the four margin options:
                                                    BOTTOM, LEFT, RIGHT,
                                                    and TOP.
  /[NO]PAGE_SETUP=( module [,...]) Specifies one or more device
                                                    control modules that set up a
                                                    device at the start of each page.
                                                    See Section 13.9.5.3.
  /SETUP=( module [,...]) Specifies one or more device
                                                    control modules that set up the
                                                    device at the start of each file.
                                                    See Section 13.9.5.3.
  /[NO]SHEET_FEED Specifies that print jobs pause
                                                    at the end of every physical
                                                    page so that a new sheet of
                                                    paper can be inserted.
  /STOCK= string Specifies the type of paper stock
                                                    to be associated with the form.
  /DESCRIPTION= string Specifies a string used to pro-
                                                    vide information about the
                                                    form.

  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.



                                            Note

        If you want to define a form name that is also an
        existing logical name, make sure you read the doc-
        umentation of logical names in the OpenVMS User's
        Manual
.

  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



                                            Note

        The queue's default form is associated with a print job
        at the time the job is processed unless a specific form
        is requested by the user when the job is submitted.
        Therefore, if a user submits a job to a generic queue
        without specifying the /FORM qualifier, no form is
        associated with the job until it is transferred to an
        execution queue.

  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



                                            Note

        To add a module to or delete it from a library, you
        must stop all output queues assigned to that library.

  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



  Monitoring jobs
Section 13.9.6.1
  Modifying job processing options Section 13.9.6.2
  Holding and releasing a job Section 13.9.6.3
  Changing the scheduling priority of a job Section 13.9.6.4
  Requeuing an executing job Section 13.9.6.5
  Requeuing a pending job Section 13.9.6.6
  Retaining jobs in a queue Section 13.9.6.7
  Deleting a job Section 13.9.6.8
  Specifying the position at which a job should begin printing Section 13.9.6.9.1
  Aligning print forms Section 13.9.6.9.2

  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



  SET ENTRY/HOLD Holds a job in a queue indefinitely
                                          before processing.
  SET ENTRY/AFTER= time-
  value

                                          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.



                                            Note

        The STOP/QUEUE/REQUEUE command stops only
        the job currently executing in the queue. The queue is
        not stopped.

  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 .
For more information about the STOP/QUEUE/REQUEUE
  command, see the OpenVMS DCL Dictionary .

  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.
For more information about the SET ENTRY/REQUEUE
  command, see the OpenVMS DCL Dictionary .

  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:



  Option Description

  ALWAYS Holds the job in the queue regardless of the
                                job's completion status.
  DEFAULT Holds the job in the queue as specified by the
                                queue's retention policy. For more informa-
                                tion, see
Section 13.8.2. If no policy has been
                                set on the queue, the job is not retained.
  ERROR Holds the job in the queue only if the job
                                completes unsuccessfully.
  UNTIL= time-value Holds the job in the queue for a specified
                                length of time, regardless of the job's com-
                                pletion status. This lets you retain the job in
                                the queue only as long as the job is needed
                                and eliminates the need to delete the job from
                                the queue later. The time value you specify
                                is interpreted first as a delta time, then as a
                                combination time, and finally as an absolute
                                time. For information about specifying time
                                values, see the OpenVMS User's Manual .

  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.



                                            Note

        In order to perform these tasks, you must pause the
        queue with the STOP/QUEUE command after the job
        has begun printing.

  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



  /[NO]BACKWARD[= pages ] Specifies the number of pages the file
                                            is to be backspaced before printing
                                            is resumed. A value of 1 indicates
                                            that printing is to resume at the top
                                            of the current page. If you omit the
                                            page value, the file is backspaced one
                                            page.
  /[NO]FORWARD[= pages ] Specifies the number of pages the file
                                            is to be advanced before printing is
                                            resumed. A value of 1 indicates that
                                            printing is to resume at the top of
                                            the next page. If you omit the page
                                            value, the file is advanced one page.
  /[NO]SEARCH= string Specifies that printing is to resume
                                            at the page containing a particular
                                            search string. The search for the
                                            string moves forward, beginning on
                                            the page following the current page.
                                            During the search, consecutive tabs
                                            and spaces are treated as a single
                                            space, and character case is ignored.
  /TOP_OF_FILE Specifies that printing is to resume
                                            at the beginning of the file.

  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



  MASK Specifies that input data is masked by replacing
                        alphabetic characters with the character X and
                        numeric characters with the number 9. Mask
                        characters let you prevent the printing of sensi-
                        tive information. If you omit the MASK option, data
                        is printed unaltered.
  n
A decimal number in the range 1 through 20 that
                        specifies the number of alignment pages to print. By
                        default, one page of alignment data is printed.

  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.