180 lines
12 KiB
HTML
180 lines
12 KiB
HTML
|
<?xml version="1.0" encoding="UTF-8"?>
|
||
|
<!DOCTYPE html
|
||
|
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||
|
<html lang="en-us" xml:lang="en-us">
|
||
|
<head>
|
||
|
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||
|
<meta name="security" content="public" />
|
||
|
<meta name="Robots" content="index,follow" />
|
||
|
<meta http-equiv="PICS-Label" content='(PICS-1.1 "http://www.icra.org/ratingsv02.html" l gen true r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true r (n 0 s 0 v 0 l 0) "http://www.classify.org/safesurf/" l gen true r (SS~~000 1))' />
|
||
|
<meta name="DC.Type" content="task" />
|
||
|
<meta name="DC.Title" content="Work with multiple device display files" />
|
||
|
<meta name="abstract" content="The normal mode of operation on a system is for the workstation user to sign on and become the requester for an interactive job. Many users can do this at the same time, because each will use a logical copy of the procedure, including the display file in the procedure. Each requester calls a separate job in this kind of use. This is not considered to be multiple device display use." />
|
||
|
<meta name="description" content="The normal mode of operation on a system is for the workstation user to sign on and become the requester for an interactive job. Many users can do this at the same time, because each will use a logical copy of the procedure, including the display file in the procedure. Each requester calls a separate job in this kind of use. This is not considered to be multiple device display use." />
|
||
|
<meta name="DC.subject" content="display file, using multiple device displays, ENDRCV (End Receive) command, multiple device display files, End Receive (ENDRCV) command, multiple device display files, command, CL, ENDRCV (End Receive), End Receive (ENDRCV), receive, ending, WAIT (Wait) command, Wait (WAIT) command, command, CL, WAIT (Wait) command, RCVF (Receive File) command, Receive File (RCVF) command, RCVF (Receive File), Receive File (RCVF), file, receiving, data, example, SNDF (Send File) command, canceling request for input, Send File (SNDF) command, SNDF (Send File), Send File (SNDF), sending, ENDRCV (End Receive) command, multiple device display files, ENDRCV (End Receive), End Receive (ENDRCV)" />
|
||
|
<meta name="keywords" content="display file, using multiple device displays, ENDRCV (End Receive) command, multiple device display files, End Receive (ENDRCV) command, multiple device display files, command, CL, ENDRCV (End Receive), End Receive (ENDRCV), receive, ending, WAIT (Wait) command, Wait (WAIT) command, command, CL, WAIT (Wait) command, RCVF (Receive File) command, Receive File (RCVF) command, RCVF (Receive File), Receive File (RCVF), file, receiving, data, example, SNDF (Send File) command, canceling request for input, Send File (SNDF) command, SNDF (Send File), Send File (SNDF), sending, ENDRCV (End Receive) command, multiple device display files, ENDRCV (End Receive), End Receive (ENDRCV)" />
|
||
|
<meta name="DC.Relation" scheme="URI" content="wfile.htm" />
|
||
|
<meta name="DC.Relation" scheme="URI" content="workv.htm" />
|
||
|
<meta name="DC.Relation" scheme="URI" content="../cl/wait.htm" />
|
||
|
<meta name="DC.Relation" scheme="URI" content="../cl/endrcv.htm" />
|
||
|
<meta name="DC.Relation" scheme="URI" content="../cl/sndf.htm" />
|
||
|
<meta name="DC.Relation" scheme="URI" content="../cl/rcvf.htm" />
|
||
|
<meta name="DC.Relation" scheme="URI" content="../cl/sndrcvf.htm" />
|
||
|
<meta name="copyright" content="(C) Copyright IBM Corporation 1998, 2006" />
|
||
|
<meta name="DC.Rights.Owner" content="(C) Copyright IBM Corporation 1998, 2006" />
|
||
|
<meta name="DC.Format" content="XHTML" />
|
||
|
<meta name="DC.Identifier" content="wmddf" />
|
||
|
<meta name="DC.Language" content="en-us" />
|
||
|
<!-- All rights reserved. Licensed Materials Property of IBM -->
|
||
|
<!-- US Government Users Restricted Rights -->
|
||
|
<!-- Use, duplication or disclosure restricted by -->
|
||
|
<!-- GSA ADP Schedule Contract with IBM Corp. -->
|
||
|
<link rel="stylesheet" type="text/css" href="./ibmdita.css" />
|
||
|
<link rel="stylesheet" type="text/css" href="./ic.css" />
|
||
|
<title>Work with multiple device display files</title>
|
||
|
</head>
|
||
|
<body id="wmddf"><a name="wmddf"><!-- --></a>
|
||
|
<!-- Java sync-link --><script language="Javascript" src="../rzahg/synch.js" type="text/javascript"></script>
|
||
|
<h1 class="topictitle1">Work with multiple device display files</h1>
|
||
|
<div><p>The normal mode of operation on a system is for the workstation
|
||
|
user to sign on and become the requester for an interactive job. Many users
|
||
|
can do this at the same time, because each will use a logical copy of the
|
||
|
procedure, including the display file in the procedure. Each requester calls
|
||
|
a separate job in this kind of use. This is not considered to be multiple
|
||
|
device display use.</p>
|
||
|
<div class="section"> <p>A multiple device display configuration occurs when a single
|
||
|
job called by one requester communicates with multiple display stations through
|
||
|
one display file. While only one display file can be handled by a CL procedure,
|
||
|
the display file, or different record formats within it, can be sent to several
|
||
|
device displays. Commands used primarily with multiple device display files
|
||
|
are:</p>
|
||
|
<dl><dt class="dlterm"><span class="cmdname">End Receive (ENDRCV)</span></dt>
|
||
|
<dd>This command cancels requests for input that have not been satisfied.</dd>
|
||
|
<dt class="dlterm"><span class="cmdname">Wait (WAIT)</span></dt>
|
||
|
<dd>Accepts input from any device display from which user data was requested
|
||
|
by one or more previous <span class="cmdname">Receive File (RCVF)</span> or SNDRCVF
|
||
|
commands when WAIT(*NO) was specified on the command, or by one or more previous <span class="cmdname">Send
|
||
|
File (SNDF)</span> commands to a record format containing the INVITE DDS
|
||
|
keyword.</dd>
|
||
|
</dl>
|
||
|
<p>If you use a multiple device display file, the device names
|
||
|
must be specified on the DEV parameter on the CRTDSPF command when the display
|
||
|
file is created, on the CHGDSPF command when the display file is changed,
|
||
|
or on an override command, and the number of devices must be less than or
|
||
|
equal to the number specified on the MAXDEV parameter on the CRTDSPF command.</p>
|
||
|
<p>Multiple
|
||
|
device display configurations affect the <span class="cmdname">Send/Receive File (SNDRCVF)</span> and
|
||
|
the RCVF commands and you may need to use the <span class="cmdname">Wait (WAIT)</span> or <span class="cmdname">End
|
||
|
Receive (ENDRCV)</span> commands. When an <span class="cmdname">Receive File (RCVF)</span> or <span class="cmdname">Send/Receive
|
||
|
File (SNDRCVF)</span> command is used with multiple display devices, the
|
||
|
default value WAIT(*YES) prevents further processing until an input-capable
|
||
|
field is returned to the program from the device named on the DEV parameter.
|
||
|
Because the response may be delayed, it is sometimes useful
|
||
|
to specify WAIT(*NO), thus letting your procedure or program continue running
|
||
|
other commands before the receive operation is satisfied.</p>
|
||
|
<p>If you use
|
||
|
an RCVF or <span class="cmdname">Send/Receive File (SNDRCVF)</span> command and specify
|
||
|
WAIT(*NO), the CL procedure or program continues running until a <span class="cmdname">Wait
|
||
|
(WAIT)</span> command is processed.</p>
|
||
|
<p>Using a <span class="cmdname">Send File (SNDF)</span> command
|
||
|
with a record format which has the DDS INVITE keyword is equivalent to using
|
||
|
a <span class="cmdname">Send/Receive File (SNDRCVF)</span> command with WAIT(*NO) specified.
|
||
|
The DDS INVITE keyword is ignored for <span class="cmdname">Send/Receive File (SNDRCVF)</span> and <span class="cmdname">Receive
|
||
|
File (RCVF)</span> commands.</p>
|
||
|
<p>The <span class="cmdname">Wait (WAIT)</span> command
|
||
|
must be issued to access a data record. If no data is available, processing
|
||
|
is suspended until data is received from a device display or until the time
|
||
|
limit specified in the WAITRCD parameter for the display file on the CRTDSPF,
|
||
|
CHGDSPF, or OVRDSPF commands has passed. If the time limit passes, message
|
||
|
CPF0889 is issued.</p>
|
||
|
<p>The <span class="cmdname">Wait (WAIT)</span> will also be satisfied
|
||
|
by the job being canceled with the controlled option on the ENDJOB, ENDSYS,
|
||
|
PWRDWNSYS, and ENDSBS commands. In this case, message CPF0888 is issued and
|
||
|
no data is returned. If a WAIT command is issued without a preceding receive
|
||
|
request (such as RCVF . . . WAIT(*NO)), a processing error occurs.</p>
|
||
|
<p>A
|
||
|
typical multiple device display configuration (with code) might look like
|
||
|
this:</p>
|
||
|
<br /><img src="rbafn506.gif" alt="Example of a typical multiple device display configuration (with code)." /><br /><p>In the above example, the
|
||
|
first two commands show a typical sequence in which the default is taken;
|
||
|
processing waits for the receive operation from WS2 to complete. Because
|
||
|
WS2 is specified on the DEV parameter, the RCVF command does not run until
|
||
|
WS2 responds, even if prior outstanding requests (not shown) from other stations
|
||
|
are satisfied.</p>
|
||
|
<p>The SNDRCVF command, however, has WAIT(*NO) specified
|
||
|
and so does not wait for a response from WS1. Instead, processing continues
|
||
|
and PROGA is called. Processing then stops at the WAIT command until an outstanding
|
||
|
request is satisfied by a workstation, or until the function reaches time-out.</p>
|
||
|
<p>The
|
||
|
WAIT command has the following format: </p>
|
||
|
<pre>WAIT DEV(CL-variable-name)</pre>
|
||
|
<p>If the DEV parameter is specified, the CL variable name is
|
||
|
the name of the device that responded. (The default is *NONE.) If there are
|
||
|
several receive requests (such as RCVF. . . WAIT(*NO)), this variable takes
|
||
|
the name of the first device to respond after the <span class="cmdname">Wait (WAIT)</span> command
|
||
|
is encountered and processing continues. The data received is placed in the
|
||
|
variable associated with the field in the device display.</p>
|
||
|
<p>A RCVF command
|
||
|
with WAIT(*YES) specified can be used to wait for data from a specific device.
|
||
|
The same record format name must be specified for both the operation that
|
||
|
started the receive request and the RCVF command.</p>
|
||
|
<p>In some cases, several
|
||
|
receive requests are outstanding, but processing cannot proceed further without
|
||
|
a reply from a specific device display. In the following example, three commands
|
||
|
specify WAIT(*NO), but processing cannot continue at label LOOP until WS3
|
||
|
replies: </p>
|
||
|
<pre> PGM
|
||
|
.
|
||
|
.
|
||
|
.
|
||
|
SNDF DEV(WS1) RCDFMT(ONE)
|
||
|
SNDF DEV(WS2) RCDFMT(TWO)
|
||
|
SNDRCVF DEV(WS3) RCDFMT(THREE) WAIT(*NO)
|
||
|
RCVF DEV(WS2) RCDFMT(TWO) WAIT(*NO)
|
||
|
RCVF DEV(WS1) RCDFMT(ONE) WAIT(*NO)
|
||
|
CALL...
|
||
|
CALL...
|
||
|
.
|
||
|
.
|
||
|
RCVF DEV(WS3) RCDFMT(THREE) WAIT(*YES)
|
||
|
LOOP: WAIT DEV(&WSNAME)
|
||
|
MONMSG CPF0882 EXEC(GOTO REPLY)
|
||
|
.
|
||
|
.
|
||
|
.
|
||
|
GOTO LOOP
|
||
|
REPLY: CALL...
|
||
|
.
|
||
|
.
|
||
|
.
|
||
|
ENDPGM</pre>
|
||
|
<p>CL procedures and programs also support the <span class="cmdname">End Receive
|
||
|
(ENDRCV)</span> command, which lets you cancel a request for input that
|
||
|
has not yet been satisfied. A <span class="cmdname">Send File (SNDF)</span> or <span class="cmdname">Send/Receive
|
||
|
File (SNDRCVF)</span> command will also cancel a request for input that
|
||
|
has not yet been satisfied. However, if the data was available at the time
|
||
|
the <span class="cmdname">Send File (SNDF)</span> or <span class="cmdname">Send/Receive File (SNDRCVF)</span> command
|
||
|
was processed, message CPF0887 is sent. In this case the data must be received
|
||
|
with the WAIT command or <span class="cmdname">Receive File (RCVF)</span> command, or
|
||
|
the request must be explicitly canceled with a <span class="cmdname">End Receive (ENDRCV)</span> command
|
||
|
before the <span class="cmdname">Send File (SNDF)</span> or <span class="cmdname">Send/Receive File
|
||
|
(SNDRCVF)</span> command can be processed.</p>
|
||
|
</div>
|
||
|
</div>
|
||
|
<div>
|
||
|
<div class="familylinks">
|
||
|
<div class="parentlink"><strong>Parent topic:</strong> <a href="wfile.htm" title="Two types of files are supported in CL procedures and programs: display files and database files.">Work with files in CL procedures</a></div>
|
||
|
</div>
|
||
|
<div class="reltasks"><strong>Related tasks</strong><br />
|
||
|
<div><a href="workv.htm" title="CL procedures consist of CL commands, and the commands themselves consist of the command statement, parameters, and parameter values.">Use variables</a></div>
|
||
|
</div>
|
||
|
<div class="relinfo"><strong>Related information</strong><br />
|
||
|
<div><a href="../cl/wait.htm">Wait (WAIT) command</a></div>
|
||
|
<div><a href="../cl/endrcv.htm">End Receive (ENDRCV) command</a></div>
|
||
|
<div><a href="../cl/sndf.htm">Send File (SNDF) command</a></div>
|
||
|
<div><a href="../cl/rcvf.htm">Receive File (RCVF) command</a></div>
|
||
|
<div><a href="../cl/sndrcvf.htm">Send/Receive File (SNDRCVF) command</a></div>
|
||
|
</div>
|
||
|
</div>
|
||
|
</body>
|
||
|
</html>
|