HP 3000 Manuals

IOWAIT3270 [ SNA IMF Programmer's Reference Manual ] MPE/iX 5.0 Documentation


SNA IMF Programmer's Reference Manual

IOWAIT3270 

For SNA IMF/XL only.IT3270waits for the completion of a previous no-wait
I/O request.

Syntax 
_______________________________________________________
|                                                     |
|                      IV     LA       I        L     |
|        IOWAIT3270 (filenum, target, tcount, cstation|
_______________________________________________________

            

Parameters 

 filenum (input) 

Integer identifier specifying the file number or SNA IMF terminalid for
which an I/O request is pending.  If you specify zero, IOWAIT3270 checks
to see if any no-wait I/O request in your program has completed.   
filenum is a required parameter.

 target (input) 

Logical array.  The  target parameter has no meaning for SNA IMF. If you
omit this parameter, be sure to retain the comma.

tcount (output) 

Integer.  Do not omit this parameter.  It has no meaning for SNA IMF, but
you must include it in the call, because IOWAIT3270 must pass it on to
IOWAIT.

cstation (output) 

Integer that can contain selected SNA IMF  result codes.  The codes
returned in  cstation could, with wait I/O, be returned through the  
result parameter of either the RECV3270 or the TRAN3270 intrinsic.
Several other result codes may be returned through IOWAIT3270, instead of
either RECV3270 or TRAN3270, if the condition causing them arises during
I/O. 

The following codes can be returned through the  cstation parameter of
the IOWAIT3270 intrinsic:

     0 = Successful completion.
     23 = Keyboard enable timeout has occurred.
     24 = Response timeout has occurred.
     91 = LU.T1 bind received.
     92 = Unbind received.
     93 = LU.T3 bind received.
     94 = HOLDPRINT timer has expired (10 minutes).
     95 = Host application requests PA key entry.
     301 = Illegal DB register.
     303 = Invalid SNA catalog file.
     305 = Parameter bounds violation.
     307 = Session is active.
     308 = Session is inactive.
     315 = Internal Error.
     319 = LU-SSCP message pending.
     320 = RU buffer too small.
     336 = Link shutdown occurred.
     337 = Protocol shutdown requested.
     338 = Quiesce shutdown requested.
     340 = No stack space.
     348 = Invalid data offset.
     351 = Link Failure occurred.
     352 = Transport Internal Error Shutdown.
     353 = Hierarchical Shutdown.

Description 

Use IOWAIT3270 with no-wait MPE XL I/O. IOWAIT3270 suspends processing
until an outstanding I/O request completes.  IOWAIT3270 calls IOWAIT,
which is an MPE V and MPE XL intrinsic.  See the MPE V Intrinsics 
Reference Manual Intrinsics Reference Manualrmation.

If you open an SNA IMF/XL device, specifying no-wait I/O in your call to
the OPEN3270 intrinsic, you must follow every RECV3270 and TRAN3270
request with a call to either IODONTWAIT3270 or IOWAIT3270, before you
can call any other intrinsic.  You can delay the call to IODONTWAIT3270
or IOWAIT3270 as long as necessary to allow effective I/O and processing
overlap. 

The IOWAIT3270 intrinsic acts the same as the IODONTWAIT3270 intrinsic
with one exception:  if IOWAIT3270 is called and no I/O has completed,
the process that issued the call is suspended until some I/O completes;
if your program calls IODONTWAIT3270, and no I/O has completed, control
is returned to your program. 

You can call IOWAIT3270 from programs written in SPL, COBOL II, FORTRAN,
C, or Pascal.

SPL Procedure Declaration 

INTEGER PROCEDURE IOWAIT3270 (FILENUM, TARGET, TCOUNT, CSTATION);
INTEGER FILENUM,TCOUNT;
LOGICAL CSTATION;
LOGICAL ARRAY TARGET;
OPTION VARIABLE;

 IOWAIT3270 has a functional return, as shown below in the calling
sequence.  The IOWAIT3270 intrinsic returns an integer that represents
the  terminalid for which the I/O completion occurred.  If no completion
occurred, zero is returned in FNUM.

SPL Calling Sequence 

 FNUM:=IOWAIT3270 (FILENUM, TARGET, TCOUNT, CSTATION);

Condition Codes 

CCE 

Request granted.  If the functional return is non-zero, then I/O
completion occurred with no errors.  If the return is zero, then no I/O
has completed.

CCG 

An end of file was encountered.

CCL 

Request denied.  Normal I/O completion did not occur because there were
no I/O requests pending, a parameter error occurred, or an abnormal I/O
completion occurred.



MPE/iX 5.0 Documentation