The terminal page retrieval program (DFHTPR) processes messages
built by BMS and placed in temporary storage.
Figure 1 shows the relationships
between the components of page retrieval. Figure 1. Page retrieval
program interfaces
Note:
DFHTPR
can be initiated as a stand-alone transaction (CSPG), or by a user-defined
paging command (for example, P/, or 3270 PA/PF keys), or linked to
from a BMS conversational operation (SEND PAGE request with CTRL=RETAIN
or RELEASE).
DFHTPR performs the following functions:
Displays the first page of a routed message
Displays subsequent pages of a message at a terminal for which
a SEND PAGE request with CTRL=AUTOPAGE was specified
Processes paging commands from a terminal
Processes the CSPG transaction when it is entered at the terminal
Purges a message displayed at the terminal if the terminal is
in display status and other than a paging command is entered at the
terminal.
DFHTPR is entered from the BMS mapping control program (DFHMCP)
to display the first page of a message originated at the terminal
if CTRL=RETAIN was specified in the BMS request. DFHTPR reads from
the terminal and processes paging commands until other than a paging
command is entered.
DFHTPR uses storage control to:
Acquire and free message control blocks (MCBs)
Free message control record (MCR) storage
Acquire storage for information and error messages to be sent
to the destination terminal and the main terminal
Free an automatic initiate descriptor (AID) taken off the AID
chain
Acquire and free storage for a route list constructed in response
to a COPY command entered at a terminal
Acquire a TIOA into which to place a device-independent page when
performing the COPY function.
Temporary-storage control is used to retrieve and replace MCRs
and to retrieve and purge pages.
Basic mapping support is used to display error and information
messages at a requesting terminal, and to send a page to the destination
terminal in the COPY function.
Task control is used to retain exclusive control of an MCR while
it is being updated.
DFHTPR communicates with interval control during error processing
when a temporary-storage identification error is returned while attempting
to retrieve an MCR. Up to four retries (each consisting of a one-second
wait followed by another attempt to read the MCR) are performed.
(The error may be due to the fact that an MCR has been temporarily
released because another task is updating it. If so, the situation
may correct itself, and a retry is successful.)
Terminal control is used to read in the next portion of terminal
input after a page or information message is sent to the terminal
when a SEND PAGE request with CTRL=RETAIN was specified.
Transient data control is used to send error or information messages
to the main terminal.
The terminal output macro (DFHTOM) is issued to provide an open
subroutine that puts a completed page out to the terminal.