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

546 lines
17 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>Write Data with CCSID (QsnWrtDtaCC) 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. -->
<!-- Created by Kyle Gilbertson on June 19, 2001 -->
<!-- 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>Write Data with CCSID (QsnWrtDtaCC) 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%">Data</td>
<td align="left" valign="top" width="20%">Input</td>
<td align="left" valign="top" width="20%">Char(*)</td>
</tr>
<tr>
<td align="center" valign="top">2</td>
<td align="left" valign="top">Data length</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%">Field ID</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">CCSID</td>
<td align="left" valign="top">Input</td>
<td align="left" valign="top">Binary(4)</td>
</tr>
<tr>
<td align="center" valign="top">5</td>
<td align="left" valign="top">Row</td>
<td align="left" valign="top">Input</td>
<td align="left" valign="top">Binary(4)</td>
</tr>
<tr>
<td align="center" valign="top">6</td>
<td align="left" valign="top">Column</td>
<td align="left" valign="top">Input</td>
<td align="left" valign="top">Binary(4)</td>
</tr>
<tr>
<td align="center" valign="top">7</td>
<td align="left" valign="top">Starting monochrome attribute</td>
<td align="left" valign="top">Input</td>
<td align="left" valign="top">Char(1)</td>
</tr>
<tr>
<td align="center" valign="top">8</td>
<td align="left" valign="top">Ending monochrome attribute</td>
<td align="left" valign="top">Input</td>
<td align="left" valign="top">Char(1)</td>
</tr>
<tr>
<td align="center" valign="top">9</td>
<td align="left" valign="top">Starting color attribute</td>
<td align="left" valign="top">Input</td>
<td align="left" valign="top">Char(1)</td>
</tr>
<tr>
<td align="center" valign="top">10</td>
<td align="left" valign="top">Ending color attribute</td>
<td align="left" valign="top">Input</td>
<td align="left" valign="top">Char(1)</td>
</tr>
<tr>
<td align="center" valign="top">11</td>
<td align="left" valign="top">Command buffer handle</td>
<td align="left" valign="top">Input</td>
<td align="left" valign="top">Binary(4)</td>
</tr>
<tr>
<td align="center" valign="top">12</td>
<td align="left" valign="top">Low-level environment handle</td>
<td align="left" valign="top">Input</td>
<td align="left" valign="top">Binary(4)</td>
</tr>
<tr>
<td align="center" valign="top">13</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%">Return code</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 Write Data with CCSID (QsnWrtDtaCC) API writes data to the display at a
given row and column using standard attributes. If a command buffer is
specified that does not contain a previous or current WTD command, one is
implicitly added to the buffer using the control characters QSN_CC1_NULL and
QSN_CC2_UNLOCKBD. The display address after this operation will be one position
past the last data character position written to the screen (including the
ending screen attribute, if any).</p>
<p>This command corresponds indirectly to the 5250 Write to Display command
(WTD) with a Set Buffer Address order and Structured Field order if the row and
column are specified. (For an indirect operation, a WTD is placed in the
command buffer only if one does not already exist in that buffer.)</p>
<p><strong>Note:</strong> CDRA conversion is not performed upon this data.</p>
<br>
<h3>Restrictions</h3>
<p>If window mode is not set and the data (including attributes) exceeds the
length of a row, the data will be wrapped to the next line. If bottom-to-top
wrapping is not supported, a CPFA308 error occurs when the data (including
attributes) exceeds the last row on the screen. If window mode is set, data
that exceeds the width of the window will not be truncated or wrapped within
the window, but will wrap across screen rows.</p>
<p>If the field ID given was created or last redefined by the QsnSetFld API, a
CPFA346 will be signaled. This API should only be used to write data to
CCSID-capable fields. QsnWrtDtaCC is only able to enforce this for fields that
have an associated field ID, however.</p>
<p>QsnWrtDtaCC does not validate the data passed to it. If the data is invalid
for some reason, an exception may occur if the control unit encounters
improperly coded CCSID-based data. QsnWrtDta is not able to truncate data if it
does not fit within the bounds of a field or low level environment window area
as QsnWrtDta does for EBCDIC data.</p>
<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>
<br>
<h3>Authorities and Locks</h3>
<p>None.</p>
<br>
<h3>Required Parameter Group</h3>
<dl>
<dt><strong>Data</strong></dt>
<dd>INPUT; CHAR(*)
<p>The data in the CCSID given by the CCSID parameter to write to the
screen.</p>
</dd>
<dt><strong>Data length</strong></dt>
<dd>INPUT; BINARY(4)
<p>The number of bytes contained in the data parameter.</p>
</dd>
</dl>
<br>
<h3>Omissible Parameter Group</h3>
<dl>
<dt><strong>Field ID</strong></dt>
<dd>INPUT; BINARY(4)
<p>The field ID indicating the field at which to set the display address. If
this parameter is specified with a nonzero value, the row and column parameters
are ignored and the row and column values corresponding to the field ID are
used to set the display address. If neither the field ID nor the row and column
parameters are specified, the current display address is used. If this
parameter is specified with a nonzero value, the CCSID parameter is also
ignored, and the data written to the screen is assumed have the same CCSID as
the field ID.</p>
</dd>
<dt><strong>CCSID</strong></dt>
<dd>INPUT; BINARY(4)
<p>The CCSID of the data to be written. 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), and the field
ID parameter was omitted or previously undefined, the job CCSID is used. If the
job CCSID is 65535, the default job CCSID is used instead.</p>
</dd>
<dt><strong>Row</strong></dt>
<dd>INPUT; BINARY(4)
<p>The row at which to write the data. The row parameter must refer to a row no
greater than the current screen or window mode height (if window mode is
enabled). The actual screen row used for a screen I/O operation is calculated
using the formula <samp>base+offset=actual</samp>. The <samp>base</samp> is the
row location of the top window border (0 for full screen) if <samp>
offset</samp> is positive, or the row location of the bottom window border
(screen height plus 1 for full screen) if <samp>offset</samp> is negative. The
<samp>offset</samp> is the row parameter value specified, and <samp>
actual</samp> is the actual screen row to be used. A CPFA307 error occurs if an
incorrect row value is specified.</p>
<p>If both the field ID and the row and column parameters are omitted, the data
is written starting at the current display address. If this is the case and the
command is a direct operation, or the buffer specified does not contain a
preceding output operation that sets the display address, the current display
address is set to row 1, column 1 prior to writing the data.</p>
<p>Row and column must both be specified or omitted; one cannot be specified if
the other is omitted.</p>
</dd>
<dt><strong>Column</strong></dt>
<dd>INPUT; BINARY(4)
<p>The column at which to write the data. The column parameter must refer to a
column no greater than the current screen or window mode width (if window mode
is on). The actual screen column used for a screen I/O operation is calculated
using the formula <samp>base+offset=actual</samp>. The <samp>base</samp> is the
column location of the left window border (0 for full screen) if <samp>
offset</samp> is positive, or the column location of the right window border
(screen width plus 1 for full screen) if <samp>offset</samp> is negative. The
<samp>offset</samp> is the column parameter value specified, and <samp>
actual</samp> is the actual screen column to be used. A CPFA307 error occurs if
an incorrect column value is specified.</p>
</dd>
<dt><strong>Starting monochrome attribute</strong></dt>
<dd>INPUT; CHAR(1)
<p>The initial screen attribute for monochrome displays. If this parameter is
omitted and monochrome attributes are to be used, no initial attribute is
written to the display for the data.</p>
<p>The monochrome and color attributes parameters are the initial and ending
screen attributes: an initial and ending screen attribute to be used for a
monochrome or a color display, respectively. One of these parameters will be
selected based on the underlying display type, and the other will be discarded.
Any of the attributes can be specified as a special value, X'00', indicating
that no screen attribute should be written to the display. If the initial
screen attribute is specified as an actual attribute, the data column, if
specified, must be greater than or equal to 2. The initial screen attribute, if
not X'00', will be written to the screen at the column previous to the first
data character if row and column are specified, otherwise to the current
display address. The ending screen attribute, if not X'00', will be written at
the column directly after the last data character. See <a href=
"dsm1e.htm#HDRSCRATTR">Screen Attribute Characters</a> for a description of the
screen attribute values.</p>
</dd>
<dt><strong>Ending monochrome attribute</strong></dt>
<dd>INPUT; CHAR(1)
<p>The ending screen attribute for monochrome displays. If this parameter is
omitted, and monochrome attributes are to be used, no ending attribute is
written to the display for the data.</p>
</dd>
<dt><strong>Starting color attribute</strong></dt>
<dd>INPUT; CHAR(1)
<p>The initial screen attribute for color displays. If this parameter is
omitted and color attributes are to be used, no initial attribute is written to
the display for the data.</p>
</dd>
<dt><strong>Ending color attribute</strong></dt>
<dd>INPUT; CHAR(1)
<p>The ending screen attribute for color displays. If this parameter is omitted
and color attributes are to be used, no ending attribute is written to the
display for the data.</p>
</dd>
<dt><strong>Command buffer handle</strong></dt>
<dd>INPUT; BINARY(4)
<p>A handle for the command buffer in which to store the command. If this
parameter is omitted or specified as 0, this is a direct operation and the data
is written to the screen at the specified location. Otherwise, this is an
indirect operation and the command is stored in the command buffer without an
I/O operation taking place.</p>
</dd>
<dt><strong>Low-level environment handle</strong></dt>
<dd>INPUT; BINARY(4)
<p>The low-level environment that the operation applies to. If this parameter
is omitted or given with a value of zero, the default low-level environment is
used.</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>Return code</strong></dt>
<dd>OUTPUT; BINARY(4)
<p>A return code indicating the result of the operation. The value returned
will be 0 if the operation was successful, or -1 otherwise.</p>
</dd>
</dl>
<br>
<h3>Error Messages</h3>
<table width="100%" cellpadding="3">
<!-- cols="15 85" -->
<tr>
<th align="left" valign="top" nowrap>Message ID</th>
<th align="left" valign="top">Error Message Text</th>
</tr>
<tr>
<td align="left" valign="top">CPF24B4 E</td>
<td align="left" valign="top">Severe error while addressing parameter
list.</td>
</tr>
<tr>
<td align="left" valign="top">CPF3BDE E</td>
<td align="left" valign="top">CCSID &amp;1 not supported by API.</td>
</tr>
<tr>
<td align="left" valign="top">CPF3CF1 E</td>
<td align="left" valign="top">Error code parameter not valid.</td>
</tr>
<tr>
<td align="left" valign="top">CPF3CF2 E</td>
<td align="left" valign="top">Error(s) occurred during running of &amp;1
API.</td>
</tr>
<tr>
<td align="left" valign="top">CPFA301 E</td>
<td align="left" valign="top">Command buffer is full.</td>
</tr>
<tr>
<td align="left" valign="top">CPFA303 E</td>
<td align="left" valign="top">Error occurred for screen I/O operation.</td>
</tr>
<tr>
<td align="left" valign="top">CPFA304 E</td>
<td align="left" valign="top">Data-stream error &amp;1 reported for screen I/O
operation.</td>
</tr>
<tr>
<td align="left" valign="top">CPFA305 E</td>
<td align="left" valign="top">Cannot add operation to command buffer.</td>
</tr>
<tr>
<td align="left" valign="top">CPFA307 E</td>
<td align="left" valign="top">Screen position &amp;1, &amp;2 outside of display
or window area.</td>
</tr>
<tr>
<td align="left" valign="top">CPFA308 E</td>
<td align="left" valign="top">Attempt to write data past end of display.</td>
</tr>
<tr>
<td align="left" valign="top">CPFA30D E</td>
<td align="left" valign="top">Invalid screen attribute.</td>
</tr>
<tr>
<td align="left" valign="top">CPFA31D E</td>
<td align="left" valign="top">Attempt to write outside of window area.</td>
</tr>
<tr>
<td align="left" valign="top">CPFA31E E</td>
<td align="left" valign="top">Required parameter &amp;1 omitted.</td>
</tr>
<tr>
<td align="left" valign="top">CPFA331 E</td>
<td align="left" valign="top">Buffer handle incorrect.</td>
</tr>
<tr>
<td align="left" valign="top">CPFA333 E</td>
<td align="left" valign="top">Parameter &amp;1 not positive integer value.</td>
</tr>
<tr>
<td align="left" valign="top">CPFA334 E</td>
<td align="left" valign="top">Low level environment handle incorrect.</td>
</tr>
<tr>
<td align="left" valign="top">CPFA335 E</td>
<td align="left" valign="top">Screen address parameter error.</td>
</tr>
<tr>
<td align="left" valign="top">CPFA33C E</td>
<td align="left" valign="top">Undefined field ID &amp;1.</td>
</tr>
<tr>
<td align="left" valign="top">CPFA33F E</td>
<td align="left" valign="top">Error occurred during data conversion.</td>
</tr>
<tr>
<td align="left" valign="top">CPFA343 E</td>
<td align="left" valign="top">Output operation not done.</td>
</tr>
<tr>
<td align="left" valign="top">CPFA344 E</td>
<td align="left" 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 align="left" valign="top">The invite active flag is not valid.</td>
</tr>
<tr>
<td align="left" valign="top">CPFA346 E</td>
<td align="left" valign="top">Operation for field ID &amp;1 not valid.</td>
</tr>
</table>
<br>
<hr>
Introduced: V5R2
<hr>
<table align="center" 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>
</body>
</html>