The Interactive Output Facility (IOF) is a TSO program through which you can monitor and process your job and SYSOUT data sets that reside on the JES2 SPOOL. IOF allows you to route, cancel, and perform other output functions on your batch jobs. This document describes how to invoke IOF and use the online IOF help facility.
The Interactive Output Facility (IOF) is a TSO program through which you can monitor and manage programs you run under z/OS (OS/390). This document provides a very brief overview on how to use IOF. It refers to other sources for detailed programming information.
In general terms, you will use ISPF to create and make changes to your programs (see CNS document D0030 for information on ISPF). Then you will use IOF to keep track of programs you are running (or have recently run), view the output from those programs, decide whether (or not) to print the output, and either print the output or cancel it (to save paper and print charges).
In technical terms, IOF provides an interface by which you can monitor and process your job and SYSOUT data sets that reside on the JES2 SPOOL. IOF allows you to route, cancel, and perform other output functions on your batch jobs.
IOF is a TSO program through which you can monitor and manage programs you run under z/OS (OS/390).
To invoke IOF under TSO, enter the following command at the TSO
Most IOF menus are dynamic, reflecting the changing state of jobs as they await execution, execute, await output, or are sent to output. The menu categories displayed, and the items under each category, will change from moment to moment, as the status of your jobs changes. The examples shown below should be considered as representative samples of how menus might look, not as exact representations.
The IOF menu screens do not update "automatically" upon a job changing status; due to the nature of the 3270 terminal design, the data on the screen is only updated when you press <Enter> or some other key which causes the system to update the display.
You will get a menu displaying all jobs active under the userid that you are signed on to.
You may view details on a specific job by typing the menu number (
2, in the above example) at the IOF
COMMAND ===> prompt, and pressing <Enter>. Alternatively,
you may <Tab> to the line representing the job you desire to work with, and enter a command in the command-field at the far left of the screen.
The first job listed under Running Jobs will always be your TSO session, and it is further identified by the fact that its
JOBNAME will be the same as your userid. When you sign on to TSO, your sign-on session
becomes an active job, running under your userid, which shows up as the first "
Running Jobs" item on the IOF menu. This job is usually not of interest to you; it is simply an artifact of the fact that you are
currently signed on to TSO. As a general rule, you will not need or want to issue any commands affecting this job. Doing so may have unpredictable results, up to and including the sudden termination of your TSO session. Note that the
associated with this job is the
JOBID which will be assigned to a print job if you select an individual output data set for printing, as described under "Printing Individual Data Sets" (below).
Notice, in the above example, that the jobs listed are divided into two categories;
Running Jobs, and
Output Jobs. When you have submitted a program for execution, it shows up as a
Running Job until it is complete; then it moves to the
Output Jobs category. Jobs which you have submitted, but which are still awaiting execution will be listed in a third category, titled
Input Jobs. When an
Input Job begins executing, it will be moved to the
Running Jobs category until it completes, at which time it will be moved to
Batch jobs can be routed to the TSO fetch queue so that the output can be displayed interactively under TSO using IOF. This allows you to view your output without having to print it. It also improves your turnaround time since you do not have to wait for a job to be printed. If you want to keep the job, you can choose to print it from the fetch queue. If you prefer, you may cancel the job instead of printing the output, to save print charges.
You can route output to the fetch queue by using the
QUEUE=FETCH option on the
JOBPARM statement in your JCL.
FETCH overrides a
ROUTE statement in your JCL; it tells the system to hold the output in an online queue (the "fetch queue") for your review. From the fetch queue, you can manipulate
the output in a variety of ways, including sending it to print, changing the print destination, saving to a data set (disk file) or simply deleting it.
If you use the
INFORM parameter also, you will be notified when the job finishes execution.
To print a job in the fetch queue from the
IOF Job List Menu, move the cursor to the line containing the job that you want to print and type a
q on the line next to the job. The job then will
be routed to the print destination that you specified on the
ROUTE statement in your JCL.
Pressing< F3 >from the
IOF Job List Menu will exit IOF.
You may use IOF to change the print destination of your output by typing over the information displayed in the
DEST/DEVICE field on the
IOF Job List Menu (figure 1) or the
DEST field on the
IOF Job Summary (figure 2). <Tab> to the desired field, and overtype the information displayed with any valid CNS printer destination, and press <Enter>.
If you select a job by typing its menu number, you will see the
IOF Job Summary Menu, as illustrated below.
IOF Job Summary has three sections:
The Job Information Section at the top of the screen gives you basic information about your job. For example, it shows that
USERID$$ was run Wednesday at 17:00.
The Step Information Section in the middle contains one line for each job step in your job. In this case,
USERID$$ had only one step.
An important field in this section is the
RC value, shown on the left side of the screen.
RC stands for "Return Code," and indicates the final status of the program. As a
general rule, a Return Code of
0 (zero) indicates successful completion; any other value usually indicates an "abend": an "abnormal ending." This means that the program did not run to completion, due to an
error. More detailed information regarding the program execution, including error codes (if any) can usually be found in the
MESSAGES data set, which may be viewed by typing its menu number (
in the above example).
Note that the
RC field will display an asterisk (
*) while the program is still executing.
The Data Set Section at the bottom has one line for each sysout data set the job produced. In the example above,
USERID$$ has 4 sysout data sets.
Each entry in this section represents an output data set associated with this job. You can view any of the data sets by typing the menu number which corresponds to that data set, and pressing <Enter>. If you prefer to view them all,
concatenated into a single stream, enter the command all at the
COMMAND ===> prompt.
IOF allows you to save your entire job output, or any portion of your job output, to a data set; IOF refers to this as the "snap" command.
IOF Job List Menu, type the number corresponding to the desired job at the
COMMAND ===> prompt, and press <Enter>. This will take you to the
IOF Job Summary
COMMAND ===> prompt of the
IOF Job Summary panel, enter
' is the name of the data set you wish the "snap" file saved to. The data set does NOT need to be previously allocated; if it does not exist, IOF will allocate it for
you. This sets up the "snap" and specifies the destination data set to which the snapped output is to be saved.
on the command line (to snap all the output into a single data set)
next to the portion to snap.
COMMAND ===> prompt of the
IOF Job Summary panel, enter
to complete the procedure. The selected data will now be found in the data set specified in step 2, above.
Pressing <F3> on the
IOF Job Summary menu will return you to the
IOF Job List Menu.
You may print individual data sets generated from a job using the
IOF Job Summary panel. Move your cursor to the line corresponding to the data set you wish to print, and enter the print command
the command line at the far left of the line, as shown in figure 3, below. The indicated data set will be sent to the printer listed under the
DEST column. This print job will inherit the job number (
of your TSO session (see "IOF Job List Menu," above, for information about your TSO session JOBID); if the DESTination is a CNS central site printer, your output will be filed in the main lobby bins, according to the last three digits of this job
Pressing <F3> on the
IOF Job Summary Menu will return you to the
IOF Job List Menu.
There are several "help" facilities for IOF. Under TSO, enter "
help iof" for information on the IOF command. Or, you can type the command
qt <Enter> at the main
===> prompt to view the "Quick Trainer" panels. You can also use the help facility under IOF for more information.
Documentation is available through the IOF help panels. You may view introductory material from the help panels by pressing the <F1> (help) key from the
IOF Job List Menu. Soft-copy (Acrobat/PDF format
and HTML) documentation is also available from Triangle Systems, the publishers of IOF, at http://www.triangle-systems.com/iofdoc.shtml. CNS is currently running IOF version 7G.
We welcome your comments and suggestions on this and all UFIT documentation. Please send your comments to: