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

332 lines
9.2 KiB
HTML
Raw Normal View History

2024-04-02 14:02:31 +00:00
<!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 with CCSID (QsnReadSsnDtaCC) 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. -->
<!--File Edited November 2001 -->
<!-- Created for V5R3 by Kyle Gilbertson -->
<!-- Change history: -->
<!-- 030718 KYLEG :Move change flag. -->
<!--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 with CCSID (QsnReadSsnDtaCC) 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%">CCSID</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">4</td>
<td align="left" valign="top">Number of bytes read</td>
<td align="left" valign="top">Output</td>
<td align="left" valign="top">Binary(4)</td>
</tr>
<tr>
<td align="center" valign="top">5</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 with CCSID (QsnReadSsnDtaCC) 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 QsnReadSsnDta, the session
input line will be changed to support the CCSID requested.
</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>This command is not supported by all control units. A CPFA306 error
occurs if an attempt is made to issue this command to a control unit that
does not support it.</p>
<p>The CCSID value given must be supported by the device or emulator,
otherwise a CPF3BDE will be signaled.</p>
<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 what the
CCSID is. 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>CCSID</strong></dt>
<dd>INPUT; BINARY(4)
<p>
The CCSID of the data to read. The session input line will be changed to
support a CCSID-based read, unless a previous QsnReadSsnDtaCC was
performed for this CCSID.
</p>
<p>
If the CCSID given is not supported by the device, a CPF3BDE is signaled.
</p>
<p>
If this parameter is omitted (zero is passed in as the CCSID), the job
CCSID is used. If the job CCSID is 65535, the default job CCSID is used
instead.
</p>
</dd>
<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">CPF3BDE E</td>
<td valign="top">CCSID &amp;1 not supported by API.</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">Create Session and Read Data--Example</a>.</p>
<hr>
API Introduced: V5R3
<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>