577 lines
16 KiB
HTML
577 lines
16 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>Add License Key Information (QLZAADDK) 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. -->
|
|
<!-- QLZAADDK SCRIPT A converted by B2H R4.1 (346) (CMS) by KENTALA -->
|
|
<!-- at RCHVMW2 on 7 Oct 1998 at 17:50:31 -->
|
|
<!-- Change History: -->
|
|
<!-- YYMMDD USERID Change description -->
|
|
<!-- Edited by Kersten Jan 02 -->
|
|
<!--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>Add License Key Information (QLZAADDK) API</h2>
|
|
|
|
<div class="box" style="width: 80%;">
|
|
<br>
|
|
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%">License key information</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">License key information format name</td>
|
|
<td align="left" valign="top">Input</td>
|
|
<td align="left" valign="top">Char(8)</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="center" valign="top">3</td>
|
|
<td align="left" valign="top">Number of license key records added</td>
|
|
<td align="left" valign="top">Output</td>
|
|
<td align="left" valign="top">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>
|
|
Default Public Authority: *EXCLUDE<br>
|
|
<!-- iddvc RMBR -->
|
|
<br>
|
|
Threadsafe: No<br>
|
|
<!-- iddvc RMBR -->
|
|
<br>
|
|
</div>
|
|
|
|
<p>The Add License Key Information (QLZAADDK) API allows you to add license key
|
|
information to the license repository. The license repository is used to store
|
|
license key information. It contains a record for each license for every unique
|
|
product, license term, feature, and system. The repository may contain licenses
|
|
for any system, and the product does not need to be installed.</p>
|
|
|
|
<p>If a key already exists in the repository for the given product, license
|
|
term, feature, and system, it is replaced. If the product is installed on the
|
|
system and the license is for that system, the license is also installed. That
|
|
is, the usage limit is changed from the product's default usage limit to the
|
|
licensed usage limit. The expiration date is also set based on the license
|
|
key.</p>
|
|
|
|
<p>If this is the first license key added for this product, the threshold is
|
|
set to 90 percent of the usage limit. Message queues default to the message
|
|
queues defined in the licensed information for the operating system. Violations
|
|
are not logged. If a license was already installed on the system, these values
|
|
are not changed. To change any of these default values, you must use the Change
|
|
License Information (CHGLICINF) command.</p>
|
|
|
|
<br>
|
|
|
|
|
|
<h3>Authorities and Locks</h3>
|
|
|
|
<dl>
|
|
<dt><em>API QLZAADDK Authority</em></dt>
|
|
|
|
<dd>*PUBLIC(*EXCLUDE)</dd>
|
|
</dl>
|
|
|
|
<br>
|
|
|
|
|
|
<h3>Required Parameter Group</h3>
|
|
|
|
<dl>
|
|
<dt><strong>License key information</strong></dt>
|
|
|
|
<dd>INPUT; CHAR(*)
|
|
|
|
<p>The license key information that is to be added to the repository. The
|
|
structure of this information is determined by the name of the format.</p>
|
|
</dd>
|
|
|
|
<dt><strong>License key information format name</strong></dt>
|
|
|
|
<dd>INPUT; CHAR(8)
|
|
|
|
<p>The name of the format containing the license key information.</p>
|
|
|
|
<p>The format name is:</p>
|
|
|
|
<table cellpadding="5">
|
|
<!-- cols="15 85" -->
|
|
<tr>
|
|
<td align="left" valign="top"><em>LICA0100</em></td>
|
|
<td align="left" valign="top">The license key information to be added to the
|
|
repository. For details, see the <a href="#HDRADDL100">LICA0100
|
|
Format</a>.</td>
|
|
</tr>
|
|
</table>
|
|
|
|
<br>
|
|
</dd>
|
|
|
|
<dt><strong>Number of license key records added</strong></dt>
|
|
|
|
<dd>OUTPUT; BINARY(4)
|
|
|
|
<p>The number of license key records that were successfully added to the
|
|
repository.</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>.</p>
|
|
</dd>
|
|
</dl>
|
|
|
|
<br>
|
|
|
|
|
|
<h3><a name="HDRADDL100">LICA0100 Format</a></h3>
|
|
|
|
<p>The following is the license information which is to be added to the
|
|
repository. For detailed descriptions of the fields, see <a href=
|
|
"#HDRADDFD">Field Descriptions</a>.</p>
|
|
|
|
<table border width="80%">
|
|
<tr>
|
|
<th align="center" valign="bottom" colspan="2">Offset</th>
|
|
<th align="left" valign="bottom" rowspan="2">Type</th>
|
|
<th align="left" valign="bottom" rowspan="2">Field</th>
|
|
</tr>
|
|
|
|
<tr>
|
|
<th align="center" valign="bottom">Dec</th>
|
|
<th align="center" valign="bottom">Hex</th>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="center" valign="top" width="10%">0</td>
|
|
<td align="center" valign="top" width="10%">0</td>
|
|
<td align="left" valign="top" width="20%">BINARY(4)</td>
|
|
<td align="left" valign="top" width="60%">Size of structure</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="center" valign="top">4</td>
|
|
<td align="center" valign="top">4</td>
|
|
<td align="left" valign="top">BINARY(4)</td>
|
|
<td align="left" valign="top">Offset to the first license key record</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="center" valign="top">8</td>
|
|
<td align="center" valign="top">8</td>
|
|
<td align="left" valign="top">BINARY(4)</td>
|
|
<td align="left" valign="top">Number of license key records in list</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="center" valign="top">12</td>
|
|
<td align="center" valign="top">C</td>
|
|
<td align="left" valign="top">BINARY(4)</td>
|
|
<td align="left" valign="top">Size of license key record</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="center" valign="top">16</td>
|
|
<td align="center" valign="top">10</td>
|
|
<td align="left" valign="top">BINARY(4)</td>
|
|
<td align="left" valign="top">Reserved</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="center" valign="top" colspan="4"><strong>Note:</strong> The offsets
|
|
of the following fields vary. These fields repeat, in the order listed, for
|
|
each license key record.</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="center" valign="top"> </td>
|
|
<td align="center" valign="top"> </td>
|
|
<td align="left" valign="top">CHAR(7)</td>
|
|
<td align="left" valign="top">Product ID</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="center" valign="top"> </td>
|
|
<td align="center" valign="top"> </td>
|
|
<td align="left" valign="top">CHAR(6)</td>
|
|
<td align="left" valign="top">License term</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="center" valign="top"> </td>
|
|
<td align="center" valign="top"> </td>
|
|
<td align="left" valign="top">CHAR(4)</td>
|
|
<td align="left" valign="top">Feature</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="center" valign="top"> </td>
|
|
<td align="center" valign="top"> </td>
|
|
<td align="left" valign="top">CHAR(8)</td>
|
|
<td align="left" valign="top">System serial number</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="center" valign="top"> </td>
|
|
<td align="center" valign="top"> </td>
|
|
<td align="left" valign="top">CHAR(4)</td>
|
|
<td align="left" valign="top">Processor group</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="center" valign="top"> </td>
|
|
<td align="center" valign="top"> </td>
|
|
<td align="left" valign="top">CHAR(3)</td>
|
|
<td align="left" valign="top">Reserved</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="center" valign="top"> </td>
|
|
<td align="center" valign="top"> </td>
|
|
<td align="left" valign="top">BINARY(4)</td>
|
|
<td align="left" valign="top">Usage limit</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="center" valign="top"> </td>
|
|
<td align="center" valign="top"> </td>
|
|
<td align="left" valign="top">CHAR(7)</td>
|
|
<td align="left" valign="top">Expiration date</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="center" valign="top"> </td>
|
|
<td align="center" valign="top"> </td>
|
|
<td align="left" valign="top">CHAR(8)</td>
|
|
<td align="left" valign="top">Vendor data</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="center" valign="top"> </td>
|
|
<td align="center" valign="top"> </td>
|
|
<td align="left" valign="top">CHAR(18)</td>
|
|
<td align="left" valign="top">License key</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="center" valign="top"> </td>
|
|
<td align="center" valign="top"> </td>
|
|
<td align="center" valign="top">CHAR(15)</td>
|
|
<td align="left" valign="top">Reserved</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="center" valign="top"> </td>
|
|
<td align="center" valign="top"> </td>
|
|
<td align="left" valign="top">CHAR(*)</td>
|
|
<td align="left" valign="top">Reserved</td>
|
|
</tr>
|
|
</table>
|
|
|
|
<br>
|
|
<br>
|
|
|
|
|
|
<h3><a name="HDRADDFD">Field Descriptions</a></h3>
|
|
|
|
<p><strong>Expiration date.</strong> The date the license will expire.</p>
|
|
|
|
<p>The valid values are:</p>
|
|
|
|
<table cellpadding="5">
|
|
<!-- cols="15 85" -->
|
|
<tr>
|
|
<td align="left" valign="top"><em>CYYMMDD</em></td>
|
|
<td align="left" valign="top">C is the century, YY is the year, MM is the
|
|
month, and DD is the day.<br>
|
|
Century, where 0 indicates years 19<em>xx</em> and 1 indicates years
|
|
20<em>xx</em>.<br>
|
|
<ul>
|
|
<li>Month may not be greater than 12.</li>
|
|
|
|
<li>Day may not be greater than 31.</li>
|
|
</ul>
|
|
|
|
<br>
|
|
The date must be numeric as follows:<br>
|
|
|
|
|
|
<table cellpadding="5">
|
|
<tr>
|
|
<td align="left" valign="top"><em>9999999</em></td>
|
|
<td align="left" valign="top">The license does not have an expiration
|
|
date.</td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
|
|
<p><strong>Feature.</strong> The feature of the product. Valid values for the
|
|
feature are 5001 through 9999.</p>
|
|
|
|
<p><strong>License key.</strong> The license key provided by the vendor. The
|
|
license key contains only the letters A - F and the numbers 0 - 9.</p>
|
|
|
|
<p><strong>License term.</strong> The extent of time the authorized usage limit
|
|
for a product lasts. Each time a new license term is installed for a product,
|
|
the authorized usage limit must be set by:</p>
|
|
|
|
<ul>
|
|
<li>Obtaining a new license key.</li>
|
|
|
|
<li>Using the Add License Key Information (ADDLICKEY) command.</li>
|
|
</ul>
|
|
|
|
<p>Possible values are:</p>
|
|
|
|
<table cellpadding="5">
|
|
<!-- cols="10 90" -->
|
|
<tr>
|
|
<td align="left" valign="top"><em>Vx</em></td>
|
|
<td align="left" valign="top">The authorized usage limit is valid for the
|
|
entire version of the product or feature.</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top"><em>VxRy</em></td>
|
|
<td align="left" valign="top">The authorized usage limit is valid only for the
|
|
entire release of the product or feature.</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top"><em>VxRyMz</em></td>
|
|
<td align="left" valign="top">The authorized usage limit is valid only for the
|
|
modification level of the product.</td>
|
|
</tr>
|
|
</table>
|
|
|
|
<p>Where the x and y can be a number from 0 through 9. Z can be a number 0
|
|
through 9 or a letter A through Z.</p>
|
|
|
|
<p><strong>Number of license key records in list.</strong> The number of
|
|
license key records in the list.</p>
|
|
|
|
<p><strong>Offset to the first license key record.</strong> The byte offset
|
|
from the beginning of the license key information variable to the start of the
|
|
license key information records.</p>
|
|
|
|
<p><strong>Processor group.</strong> The processor group that this license is
|
|
for. This field is left justified.</p>
|
|
|
|
<p>The valid special value is:</p>
|
|
|
|
<table cellpadding="5">
|
|
<!-- cols="10 90" -->
|
|
<tr>
|
|
<td align="left" valign="top"><em>*ANY</em></td>
|
|
<td align="left" valign="top">The license key is valid for any processor
|
|
group.</td>
|
|
</tr>
|
|
</table>
|
|
|
|
<p><strong>Product ID.</strong> The product ID of the product or feature for
|
|
which license key information is to be added to the repository.</p>
|
|
|
|
<p><strong>Reserved.</strong> If this field is input, character fields must be
|
|
set to blanks and binary fields must be set to hexadecimal zeros.</p>
|
|
|
|
<p><strong>Size of license key record.</strong> The size of each license key
|
|
record. This field can be used to get the offset of the next license key
|
|
record.</p>
|
|
|
|
<p><strong>Size of structure.</strong> The size of the entire data passed in on
|
|
this parameter.</p>
|
|
|
|
<p><strong>System serial number.</strong> The system serial number for which
|
|
license key information is added to the repository.</p>
|
|
|
|
<p>The valid special value is:</p>
|
|
|
|
<table cellpadding="5">
|
|
<!-- cols="15 85" -->
|
|
<tr>
|
|
<td align="left" valign="top"><em>*LOCAL</em></td>
|
|
<td align="left" valign="top">License key information for only this local
|
|
system will be added to the repository.</td>
|
|
</tr>
|
|
</table>
|
|
|
|
<p>The special values are left justified. A value other than a special value
|
|
must be right justified.</p>
|
|
|
|
<p><strong>Usage limit.</strong> The usage limit for this license.</p>
|
|
|
|
<table cellpadding="5">
|
|
<!-- cols="15 85" -->
|
|
<tr>
|
|
<td align="left" valign="top"><em>-1</em></td>
|
|
<td align="left" valign="top">There is no maximum number of license users for
|
|
this product.</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top"><em>0-999999</em></td>
|
|
<td align="left" valign="top">The maximum number of license users for this
|
|
product.</td>
|
|
</tr>
|
|
</table>
|
|
|
|
<p><strong>Vendor data.</strong> The data for this field, along with the
|
|
license key information, comes from the software provider.</p>
|
|
|
|
<br>
|
|
|
|
|
|
<h3>Error Messages</h3>
|
|
|
|
<table cellpadding="5">
|
|
<tr>
|
|
<th align="left" valign="top">Message ID</th>
|
|
<th align="left" valign="top">Error Message Text</th>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td width="15%" valign="top">CPD9E2D E</td>
|
|
<td width="85%" valign="top">Usage limit cannot be less than current
|
|
usage.</td>
|
|
</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">CPF3C21 E</td>
|
|
<td align="left" valign="top">Format name &1 is not valid.</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top">CPF3C90 E</td>
|
|
<td align="left" valign="top">Literal value cannot be changed.</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">CPF9822 E</td>
|
|
<td align="left" valign="top">Not authorized to file &1 in library
|
|
&2.</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top">CPF9826 E</td>
|
|
<td align="left" valign="top">Cannot allocate file &2.</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top">CPF9872 E</td>
|
|
<td align="left" valign="top">Program or service program &1 in library
|
|
&2 ended. Reason code &3.</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top">CPF9E15 E</td>
|
|
<td align="left" valign="top">Error in license management function.</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top">CPF9E54 E</td>
|
|
<td align="left" valign="top">License term &1 not valid.</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top">CPF9E59 E</td>
|
|
<td align="left" valign="top">Expiration date &1 is not valid.</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top">CPF9E5A E</td>
|
|
<td align="left" valign="top">Usage limit not valid.</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top">CPF9E6C E</td>
|
|
<td align="left" valign="top">The license key cannot be used for processor
|
|
group &2.</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top">CPF9E68 E</td>
|
|
<td align="left" valign="top">Product &1 license term &2 feature &3
|
|
not found.</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top">CPF9E6D E</td>
|
|
<td align="left" valign="top">Feature &3 not valid.</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top">CPF9E6E E</td>
|
|
<td align="left" valign="top">Product identifier &1 not valid.</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top">CPF9E74 E</td>
|
|
<td align="left" valign="top">License key not valid.</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left" valign="top">CPF9E81 E</td>
|
|
<td align="left" valign="top">Cannot install keys for product &1.</td>
|
|
</tr>
|
|
</table>
|
|
|
|
<br>
|
|
<hr>
|
|
API introduced: V3R1
|
|
|
|
<hr>
|
|
<table cellpadding="2" cellspacing="2" align="center">
|
|
<tr align="center">
|
|
<td valign="middle" align="center"><a href="#Top_Of_Page">Top</a> | <a href=
|
|
"sw1.htm">Software Product APIs</a> | <a href="aplist.htm">APIs by
|
|
category</a></td>
|
|
</tr>
|
|
</table>
|
|
</body>
|
|
</html>
|
|
|