SPOOLF [ MPE/iX Commands Reference Manual Volume I ] MPE/iX 5.0 Documentation
MPE/iX Commands Reference Manual Volume I
SPOOLF
Allows a qualified user to alter, print, or delete output spool file(s).
(Native Mode)
Syntax
{[[IDNAME=] {spoolid }] }
{[ {(spoolid[,spoolid]...)}] }
{[ ] }
{[[ {ldev }] ] }
{[[;DEV={devclass}] ] }
{[[ {devname }] ] }
{[ ] }
{[[;PRI=outpri] ] }
{[[;COPIES= numcopies] ] }
{[[;SELEQ= {[select-eq] }] ] }
{[[ {^indirect_file}] ] }
{[ ] }
{[[;ALTER] ] }
{[[;SPSAVE] [;DEFER ] [;SHOW] ] }
{[ [;UNDEFER] ] }
{ }
SPOOLF {[[IDNAME=] {fileset }] }
{[ {(fileset[,fileset]...)}] }
{[ ] }
{[ [ {ldev }] ] }
{[[;PRINT] [;DEV= {devclass}] ] }
{[ [ {devname }] ] }
{[ ] }
{[[;PRI=outpri] [;COPIES= numcopies]] }
{[[;SPSAVE] [;DEFER ] [;SHOW] ] }
{[ [;UNDEFER] ] }
{ }
{[[IDNAME=] {spoolid } ]}
{[ {(spoolid[,spoolid]...)} ]}
{[ ]}
{[[;DELETE] [;SELEQ= {select-eq }]]}
{[ [ {^indirect_file}]]}
{[ ]}
{[[;SHOW] ]}
Parameters
spoolid One or more spool file IDs: #Innn for input spool files
or #Onnn for output spool files. These IDs are assigned
by the spooling subsystem at spool file creation time.
The # is optional. So is the O if you are displaying
output spool files; that is, if you specify neither [#]O
nor [#]I, [#]Onnn is assumed. Do not attempt to specify
a qualified file name. You must enter spoolid or
fileset.
There is no default.
The symbol @ may be used to specify all spool
files.
The symbol O@ may be used to specify all output
spool files.
The symbol I@ may be used to specify all input
spool files.
If @, O@, or I@ is specified, it must be the only
value supplied. @, O@, and I@ are mutually
exclusive.
If you specify duplicate spoolids, a warning
message is displayed.
If you specify multiple spool files, you must
separate them by commas and enclose the set in
parentheses.
A console user or a user with SM or OP capability who
specifies O@ acts on all output spool files on the
system. A user with AM capability who specifies O@ acts
on all output spool files created by users in the same
account. All other users are limited to files they have
created.
fileset Specifies the set of files to be printed. You must
enter either fileset or spoolid. There is no default.
This positional parameter has this form:
filename[/lockword[.groupname[.accountname]]]
You may use wildcards. Files that are not of the type
SPOOL are ignored. An error is returned for each input
spool file in the fileset.
If the file name or set is not fully qualified, the
default is the user's current logon group and account.
In batch mode, if any file in the set has a lockword, it
must be supplied with the command. Therefore, the file
cannot be part of a set that contains wildcards. This
restriction does not apply in interactive mode because
the system prompts the user for each required lockword.
In any case, if the lockword is not correctly provided,
the print option on that file fails with a warning
message, and the command continues on the rest of the
files, if any.
select-eq The selection equation is used as a filter on the set of
spool files selected. Only spool files whose attributes
satisfy all filter requirements are listed.
For example, you use the following command to delete all
the output spool files to which you have access and that
have less than 100 pages from user.acct:
SPOOLF O@;DELETE;SELEQ=[(OWNER=user.acct)AND(PAGES<100)]
Begin and end selection equations with square brackets,
as shown in the preceding example.
The following command prints the output spool files to
which you have access with a priority greater than 2 and
that were created before September 30, 1994.
SPOOLF O@;PRINT;SELEQ=[(PRI>2)AND(DATE<09/30/89)]
Selection equations have the following format. In this
display, when the expression is expanded, interpret the
symbol ::= as "can be replaced by."
select-eq ::= [equation]
{ {> } }
{ {>=} }
{parm{< } value }
{ {<=} }
{ {<>} }
equation ::= { {= } }
{ }
{(equation) }
{NOT equation }
{equation {AND} equation}
{ {OR } }
In a selection equation, the logical operator AND takes precedence over
the logical operator OR. For example, suppose you enter this command:
SPOOLF O@;PRINT;SELEQ=[FILEDES=REPT &
OR OWNER=BOB.ACCTG AND PRI>8]
In this example, [FILEDES=REPT OR OWNER=BOB.ACCTG AND PRI>8] is the same
as [FILEDES=REPT OR (OWNER=BOB.ACCTG AND PRI>8)].
value ::= Appropriate values per data type. For example, STATE=READY or
PRI>6.
parm ::= The parameter (parm) may be one of several attributes of the
spool file to be used as filters. The parm choices are described below.
* parm ::= DEV: LDEV number, device name, or device class name. You
may use wildcards for device name and device class name.
* parm ::= FILEDES: Formal or actual file designator for the spool
file. You may use wildcards.
For example, if you enter the file equation below and print to it,
EPOCLONG will be the spool file's FILEDES.
FILE EPOCLONG;DEV=EPOC;ENV=LPLONG.ENV.SYS
PRINT MYFILE,*EPOCLONG
You may also select files based on a null string by entering
FILEDES= "" or FILEDES= ''. You must include such a construct if
you specifically want to select on such an attribute. Note that
"" is not the same as " ". The blank is significant.
* parm ::= SPOOLID: Spoolfile identifier number in the format #Onnn
or #Innn.
The # is optional; but if it is used, an O or I must also be used.
If it is not used, the O is also optional for output spool files;
that is 123 is the same as #O123. The valid range of SPOOLIDs is
1 <= nnn <= 9,999,999. (The commas are for clarity; do not enter
any commas in the actual equation.)
* parm ::= PAGES: Number of pages in spool file (if known). Use a
positive integer.
The PAGES attribute does not apply to input spool files;
therefore, any logical condition involving the attribute always
returns FALSE when tested against an input spool file.
* parm ::= FORMID: Form name. You may use wildcards. (The formid
is an ASCII string up to 8 characters, the first of which must be
a letter.)
You may also select files based on a null string by entering
FILEDES= "" or FILEDES= ''. You must include such a construct if
you specifically want to select on such an attribute. Note that
"" is not the same as " ". The blank is significant. Also, this
attribute does not apply to input spool files; therefore, any
logical condition involving the attribute always returns FALSE
when tested against an input spool file.
* parm ::= STATE: READY, ACTIVE, OPEN, CREATE, PRINT, PROBLM,
DELPND, SPSAVE, DEFER, XFER.
* parm ::= JOBNAME: Job or session name under which the spool file
was created. The job name can consist of up to 8 alphanumeric
characters, the first of which must be a letter.
For a job input spool file, the JOBNAME shown is allocated to that
job, not the job or session that streamed it.
You may use wildcards.
* parm ::= DISP: Disposition can be SPSAVE or PURGE. See the NOTE
accompanying the PAGES description.
* parm ::=COPIES: Number of copies. Minimum is 1, maximum is
65,535. (The comma in 65,535 is for clarity; do not enter commas
in the actual equation.)
* parm ::= PRI: Output priority. Minimum is 0, maximum is 14. See
the NOTE accompanying the PAGES description.
* parm ::= JOBNUM: Job or session number under which the spool file
was created, for example: #S257, #J329, or Jn (the "#" is
optional). 1 <= n <= 16,383. (The comma is for clarity; do not
enter any commas in the actual equation.)
For a job input spool file, the JOBNUM shown is allocated to the
job, not the job or session that streamed it.
You may use some wildcards; J@ accepts all jobs, S@ accepts all
sessions. J'@ and S'@ are also allowed, The apostrophe (')
indicates an imported spool file or a spool file recovered during
START NORECOVERY.
* parm ::= RECS: Number of records in the spool file. A positive
integer is expected.
* parm ::= OWNER: The user under which the spool file was created.
The format of the owner is user.account. If the account is not
specified, the user's current account is assumed. You may use
wildcards.
For a job input spool file, the OWNER is the user logon for the
job, not the job or session that streamed it.
* parm ::= JOBABORT: Select based on whether this is the $STDLIST of
a job that aborted when an error was encountered when no CONTINUE
was in effect.
Valid values are TRUE and FALSE. Only "=" and "<>" are allowed as
relational operators. This attribute does not apply to input
spool files; therefore, any logical condition involving the
attribute always returns FALSE when tested against an input spool
file.
* parm ::= DATE: Creation date in the format mm/dd/yy or mm/dd/year.
Note that the year can be in the form of yy, as in 10/10/88, or in
the form of year, as in 10/10/1988; both are legal syntax for the
date parameter.
indirect_file Specifies the name of a file containing the
selection equation. It must be preceded by a caret
(^). The selection equation contained in the file
may not exceed 509 characters in length, including
the brackets in which it must reside. There is no
restriction on the indirect file code. If the
record size exceeds 509, only 509 characters per
record are read and a warning is issued.
Backreferencing to a formal file designator is also
allowed for an indirect_file name; that is,
^*filename is also allowed. Any file is accepted
as an indirect_file, unless the file system returns
an error from FOPEN or FREAD.
There is no limit to the number of records in the
indirect_file, only the total character count.
Records are processed as follows:
* Leading and trailing blanks are stripped.
* If the last non-blank character is an
ampersand (&), it is also stripped;
otherwise, one blank is added back to the
end of the record as a delimiter.
* The character count of the record is added
to that of the records processed previously.
If the total character count exceeds 509, an
error is returned. If the total is less
than 509, the current record is appended to
previous records.
* This process repeats until either 509
characters have been counted or the
end-of-file is detected. Records
terminating with or without ampersands may
be mixed as desired in the indirect file.
* If the resulting string is <=509 characters,
it is parsed.
* If the parser detects a syntax error, or if
any non-blank character follows the closing
bracket (]) of the select-eq, an error is
returned and the select-eq is not processed.
ALTER The ALTER option alters the characteristics of
specified output spool files. Private output spool
files may be altered in a limited fashion; only the
keywords PRI, DEFER, and UNDEFER are allowed. A
system manager (SM) user may also specify DEV=.
__________________________________________________
NOTE You cannot alter the attributes of spool
files in the SPSAVE state.
If you use the DEFER or DEV keyword on a
spool file that is being printed, the spooler
process printing the file is interrupted.
The spooler process saves the page number of
the last complete page that was printed in
the spool files's file label extension
(FLABX). The next time the file is selected
for printing by any spooler, output resumes
at the page saved in the FLABX.
Because of the large amount of data buffered
in the file system and the device, an output
device may continue to print, making it
appear as if the DEFER or DEV keyword has not
had any effect. In reality, the spooler
stops sending data to the device when the
command is received but must wait until all
buffered data has been printed before
releasing the spool file.
Depending on both the content of the data and
the amount of buffering, this may require a
significant part of a page or even several
pages.
__________________________________________________
PRINT The PRINT option copies the specified filesets to
the HPSPOOL account and links the new output spool
files into the spool queues for printing. It is
especially useful for generating more copies of a
spool file in the SPSAVE state.
If the target device or class information exists in
the file label extension, that device or class is
used as the default. The DEV= option may be used
to override this default. If there is no target
device in the file label extension or the device
specified is not valid, the DEV= parameter must be
specified or an error message results. The default
values of PRI (8) and COPIES (1) may also be
overridden by user-specified parameters.
You must have nonshareable (ND) capability to use
the SPOOLF...;PRINT command. Private files cannot
be printed using the PRINT option.
DELETE The DELETE option purges all specified private or
nonprivate spool files to which the user has access
from the system.
If a spool file is not in use (opened by a user, or
being printed or stored), it is purged immediately.
If it is in use, it is placed in DELPND state. Any
spooler process printing it is notified, and
printing stops at that point. Each of these files
is deleted when its last user closes it, except in
the case of STORE, as described below.
__________________________________________________
NOTE Because of the large amount of data buffered
in the file system and the device, an output
device may continue to print, making it
appear as if the DELETE option has not had
any effect. In reality, the spooler stops
sending data to the device when the command
is received but must wait until all buffered
data has been printed before stopping.
Depending on both the content of the data and
the amount of buffering, this may require a
significant part of a page or even several
pages.
__________________________________________________
ldev Specifies the logical device number of the spool
file's new destination device.
If the spool file is in the PRINT state, it is
returned to the READY state. It may immediately
enter the PRINT state on ldev if all requirements
are met.
Printing of a spool file is interrupted only if the
newly specified target ldev, devclass, or devname
is different than the previous target ldev,
devclass, or devname.
devclass Specifies the new destination device class name for
the spool file. If the spool file is in the PRINT
state, it is returned to the READY state. It may
immediately enter the PRINT state on a device in
devclass if all requirements are met.
The devclass parameter must begin with a letter and
consist of eight or fewer alphanumeric characters.
Note that MPE/iX does not allow the same name to be
configured as a device class name and a device
name. See the NOTE accompanying ldev.
devname Specifies the device name of the spool file's new
destination device. If the spool file is in the
PRINT state, it is returned to the READY state. It
may immediately enter the PRINT state on devname if
all requirements are met. Note that this occurs
even if devname is the same as the device currently
printing the file.
The devname parameter must begin with a letter and
consist of eight or fewer alphanumeric characters.
Note that MPE/iX does not allow the same name to be
configured as a device class name and a device
name. See the NOTE accompanying ldev.
outpri Specifies the output priority of the designated
spool files, where 0 is the lowest and 14 is the
highest. Only an OP user or the console can
specify an outpri of 14; other users are limited to
13.
The default is 8 with the PRINT option and no
change for the ALTER option.
numcopies Specifies the number of copies of the designated
spool files to be printed. The allowable range is
1 through 65,535. (The comma is for clarity; do
not enter any commas in the actual command.)
The default is 1 for the PRINT option and no change
for the ALTER option.
SPSAVE The SPSAVE option specifies that the selected spool
files are not to be deleted after their last copy
has printed. Instead they are retained in the
HPSPOOL account in the SPSAVE state until deleted
manually. Among other advantages, this option
allows documents to be copied to user file space,
to be reprinted without being reformatted, and so
on.
Private spool files may not be saved.
When a file enters the SPSAVE state, its priority
is set to 8 and its number of copies is set to 1.
This is so that it will have the proper defaults
should it be printed later.
DEFER The DEFER option changes the spool file's state to
DEFER. If it is currently in the PRINT state, its
spooler is notified and printing stops at that
point. (See the note about buffer retention under
the DELETE option.) The spool file's priority
remains unchanged. If this option is used with the
PRINT option, the spool file is copied to
OUT.HPSPOOL and linked to the spooling system, but
the state of the spool file is DEFER. The spool
file is not printed until a subsequent
SPOOLF...;UNDEFER is entered.
__________________________________________________
NOTE If the DEFER option is used on any file in
the CREATE state (opened for original
creation), the spool file only enters the
DEFER state after it is completed (closed for
the last time).
__________________________________________________
UNDEFER The UNDEFER option changes a spool file's state
from DEFER to READY and causes a spooler to start
printing it if the spool file is qualified for an
idle printer to print. The spool file's priority
remains unchanged.
SHOW The SHOW option allows a user to display the
results of the SPOOLF command. All other
parameters are processed before the SHOW. Here is
an example:
:SPOOLF O@;SELEQ=[DEV=16];ALTER;PRI=8;SHOW
SPOOLID JOBNUM FILEDES PRI COPIES DEV STATE RSPFN OWNER
#O414 J5 $STDLIST 8 1 00000016 READY ALIX.MKT
#O416 J7 HOTSTUFF 8 2 00000016 READY JACK.SALES
Operation Notes
Input spool file attributes cannot be altered, but input spooled DATA
files can be deleted. Private spool files may be altered in a limited
fashion; only the keywords PRI, DEFER, UNDEFER, and DELETE are allowed.
If the user has system manager capability, DEV= is also allowed.
The SPOOLF...;ALTER command can be used on problem state spool files to
alter the device attribute so that the spool file becomes ready again.
Most of the time, the spool file is in the problem state because the
target device of the spool file is invalid.
Use
This command may be issued from a session, job, or program, or in BREAK.
SPOOLF...;SHOW is breakable. However, you cannot stop the actions by
pressing BREAK. The files you can access with the SPOOLF command depend
on your capabilities.
Example
Related Information
Commands SPOOLER, LISTSPF, LISTFILE, ALTSPOOLFILE,
DELETESPOOLFILE
Manuals Native Mode Spooler Reference Manual (32650-90166)
MPE/iX 5.0 Documentation