ibm-information-center/dist/eclipse/plugins/i5OS.ic.apis_5.4.0.1/QsnReadSsnDta.htm

295 lines
8.3 KiB
HTML

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="Copyright" content="Copyright (c) 2006 by IBM Corporation">
<title>Read Data from Session (QsnReadSsnDta) API</title>
<!-- Begin Header Records ========================================== -->
<!-- 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. -->
<!-- DSMMST1 SCRIPT A converted by B2H R4.1 (346) (CMS) by V2KEA304 -->
<!-- at RCHVMW2 on 29 Jan 1999 at 16:05:09 -->
<!-- Change History: -->
<!-- YYMMDD USERID Change description -->
<!--File Edited November 2001 -->
<!--End Header Records -->
<link rel="stylesheet" type="text/css" href="../rzahg/ic.css">
</head>
<body>
<a name="top_Of_Page"></a>
<!-- Java sync-link -->
<script language="Javascript" src="../rzahg/synch.js" type="text/javascript">
</script>
<h2>Read Data from Session (QsnReadSsnDta) API</h2>
<div class="box" style="width: 70%;">
<br>
&nbsp;&nbsp;Required Parameter Group:<br>
<!-- iddvc RMBR -->
<br>
<table width="100%">
<tr>
<td align="center" valign="top" width="10%">1</td>
<td align="left" valign="top" width="50%">Session handle</td>
<td align="left" valign="top" width="20%">Input</td>
<td align="left" valign="top" width="20%">Binary(4)</td>
</tr>
<tr>
<td align="center" valign="top">2</td>
<td align="left" valign="top">Input buffer handle</td>
<td align="left" valign="top">Input</td>
<td align="left" valign="top">Binary(4)</td>
</tr>
</table>
<br>
&nbsp;&nbsp;Omissible Parameter Group:<br>
<!-- iddvc RMBR -->
<br>
<table width="100%">
<tr>
<td align="center" valign="top" width="10%">3</td>
<td align="left" valign="top" width="50%">Number of bytes read</td>
<td align="left" valign="top" width="20%">Output</td>
<td align="left" valign="top" width="20%">Binary(4)</td>
</tr>
<tr>
<td align="center" valign="top">4</td>
<td align="left" valign="top">Error code</td>
<td align="left" valign="top">I/O</td>
<td align="left" valign="top">Char(*)</td>
</tr>
</table>
<br>
&nbsp;&nbsp;Returned Value:<br>
<!-- iddvc RMBR -->
<br>
<table width="100%">
<tr>
<td align="center" valign="top" width="10%"></td>
<td align="left" valign="top" width="50%">Number of bytes read</td>
<td align="left" valign="top" width="20%">Output</td>
<td align="left" valign="top" width="20%">Binary(4)</td>
</tr>
</table>
<br>
&nbsp;&nbsp;Default Public Authority: *USE<br>
<!-- iddvc RMBR -->
<br>
&nbsp;&nbsp;Service Program: QSNAPI<br>
<!-- iddvc RMBR -->
<br>
&nbsp;&nbsp;Threadsafe: No<br>
<!-- iddvc RMBR -->
<br>
</div>
<p>The Read Data from Session (QsnReadSsnDta) API is used to read data
from a session. A QsnReadInp operation is implicitly performed to read any
field data. If the session has a DSM-defined input line, an implicit
Clear Field Table (QsnClrFldTbl) operation is issued prior to redefining
the session input line on each input operation. The data returned consists
of only the data entered. That is, only the data from the cursor position
within the field up to the last nonblank input character when an AID
generating key is pressed is returned. If the session does not have a DSM-
defined input line, data is read from any input fields defined on the
screen, and all data, including blanks, is returned. In other respects,
the processing of these user-defined input fields will be equivalent with
the processing of the DSM-defined input line.</p>
<p>If the previous input operation was a call to QsnReadSsnDtaCC, the session
input line will be changed to support the data read by this API.</p>
<p>If an AID key is pressed for which a corresponding function has been
defined, this function will be called. Depending upon the return action
specified, control would then return to the caller or another input
operation
will occur. See <a href="dsm3c.htm#HDRCMDKEY">Command Key Action
Routines</a> for details.</p>
<br>
<h3>Restrictions</h3>
<p>If the device supports CCSID-based I/O and the session was not defined
with an input line and the application defines input fields on the screen,
DSM is not able to determine if the fields are CCSID-capable or which
CCSID they support. Since CCSID-based data requires special datastream
commands, DSM could send invalid data to the device, or otherwise corrupt
or misinterpret the input data. Because of this, the data read from any
application defined input fields on the screen will not be echoed to the
scroller. Also, the default command key exit routines will not use this
data.</p>
<br>
<h3>Authorities and Locks</h3>
<p>None</p>
<br>
<h3>Required Parameter Group</h3>
<dl>
<dt><strong>Session handle</strong></dt>
<dd>INPUT; BINARY(4)
<p>A handle for the session from which to read input. The session being
read
from must be the current window. You can use the Set Current Window
(QsnSetCurWin) API to change the current window.</p>
</dd>
<dt><strong>Input buffer handle</strong></dt>
<dd>INPUT; BINARY(4)
<p>A handle for the input buffer to receive the result of the input
operations
if a direct operation is specified. The input buffer must have been
created
with the Create Input Buffer (QsnCrtInpBuf) API. The format of the data
returned is the same as that of the Read Input Fields (QsnReadInp) API.</p
>
</dd>
</dl>
<br>
<h3>Omissible Parameter Group</h3>
<dl>
<dt><strong>Number of bytes read</strong></dt>
<dd>OUTPUT; BINARY(4)
<p>The number of bytes of data read. On a successful read operation, this
value
is the same as that returned by the Retrieve Length of Field Data in
Buffer
(QsnRtvFldDtaLen) API if passed the input buffer resulting from this
operation.</p>
</dd>
<dt><strong>Error code</strong></dt>
<dd>I/O; CHAR(*)
<p>The structure in which to return error information. For the format of
the
structure, see <a href="../apiref/error.htm#hdrerrcod">Error Code Parameter</a>. If
this
parameter is omitted, diagnostic and escape messages are issued to the
application.</p>
</dd>
</dl>
<br>
<h3>Returned Value</h3>
<dl>
<dt><strong>Number of bytes read</strong></dt>
<dd>OUTPUT; BINARY(4)
<p>This API returns the value for the number of bytes read parameter if
the
operation was successful, -1 if there was a general failure, or -2 if the
invite active flag is on in the associated environment and the read from
invited device operation timed out.</p>
</dd>
</dl>
<br>
<h3>Error Messages</h3>
<table width="100%" cellpadding="3">
<!-- cols="15 85" -->
<tr>
<th align="left" valign="top">Message ID</th>
<th align="left" valign="top">Error Message Text</th>
</tr>
<tr>
<td align="left" valign="top">CPF24B4 E</td>
<td valign="top">Severe error while addressing parameter list.</td>
</tr>
<tr>
<td align="left" valign="top">CPF3CF1 E</td>
<td valign="top">Error code parameter not valid.</td>
</tr>
<tr>
<td align="left" valign="top">CPF3CF2 E</td>
<td valign="top">Error(s) occurred during running of &amp;1 API.</td>
</tr>
<tr>
<td align="left" valign="top">CPFA31E E</td>
<td valign="top">Required parameter &amp;1 omitted.</td>
</tr>
<tr>
<td align="left" valign="top">CPFA343 E</td>
<td valign="top">Output operation not done.</td>
</tr>
<tr>
<td align="left" valign="top">CPFA344 E</td>
<td valign="top">The file &amp;2 in library &amp;3 is not valid.</td>
</tr>
<tr>
<td align="left" valign="top">CPFA345 E</td>
<td valign="top">The invite active flag is not valid.</td>
</tr>
<tr>
<td align="left" valign="top">CPFA3A4 E</td>
<td valign="top">Specified window is not active.</td>
</tr>
<tr>
<td align="left" valign="top">CPFA3D6 E</td>
<td valign="top">Session handle is incorrect.</td>
</tr>
<tr>
<td align="left" valign="top">CPFA3D9 E</td>
<td valign="top">Error calling the command key action routine.</td>
</tr>
</table>
<p>For examples of Read Data from Session APIs, see <a href=
"dsm3d.htm#HDRSSEX">Example: Create Session and Read Data</a>.</p>
<hr>
API Introduced: V2R3
<hr>
<center>
<table cellpadding="2" cellspacing="2">
<tr align="center">
<td valign="middle" align="center"><a href="#Top_Of_Page">Top</a> | <a
href=
"dsm.htm">Dynamic Screen Manager APIs</a> | <a href="aplist.htm">APIs by
category</a></td>
</tr>
</table>
</center>
</body>
</html>