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

944 lines
29 KiB
HTML
Raw Permalink 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>Create Media Definition (QSRCRTMD, QsrCreateMediaDefinition) 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. -->
<!-- BACKMST SCRIPT A converted by B2H R4.1 (346) (CMS) by v2kea304 at -->
<!-- RCHVMW2 on 26 April 1999 at 10:21:58 -->
<!-- Change History: -->
<!-- 040506 DRH v5r4 XPF D93115 Dynamic device allocation -->
<!-- File Edited Jan 2002 -->
<!-- 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 type="text/javascript" language="Javascript" src="../rzahg/synch.js">
</script>
<h2>Create Media Definition (QSRCRTMD, QsrCreateMediaDefinition) API</h2>
<div class="box" style="width: 80%;">
&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%">Qualified media definition name</td>
<td align="left" valign="top" width="20%">Input</td>
<td align="left" valign="top" width="20%">Char(20)</td>
</tr>
<tr>
<td align="center" valign="top">2</td>
<td align="left" valign="top">Input data</td>
<td align="left" valign="top">Input</td>
<td align="left" valign="top">Char(*)</td>
</tr>
<tr>
<td align="center" valign="top">3</td>
<td align="left" valign="top">Length of data</td>
<td align="left" valign="top">Input</td>
<td align="left" valign="top">Binary(4)</td>
</tr>
<tr>
<td align="center" valign="top">4</td>
<td align="left" valign="top">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">5</td>
<td align="left" valign="top">Public authority</td>
<td align="left" valign="top">Input</td>
<td align="left" valign="top">Char(10)</td>
</tr>
<tr>
<td align="center" valign="top">6</td>
<td align="left" valign="top">Text description</td>
<td align="left" valign="top">Input</td>
<td align="left" valign="top">Char(50)</td>
</tr>
<tr>
<td align="center" valign="top">7</td>
<td align="left" valign="top">Replace</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">Error code</td>
<td align="left" valign="top">I/O</td>
<td align="left" valign="top">Char(*)</td>
</tr>
</table>
<br>
&nbsp;&nbsp;Service Program: QSRLIB01<br>
<!-- iddvc RMBR -->
<br>
&nbsp;&nbsp;Default Public Authority: *USE<br>
<!-- iddvc RMBR -->
<br>
&nbsp;&nbsp;Threadsafe: No<br>
<!-- iddvc RMBR -->
<br>
</div>
<p>The Create Media Definition (OPM, QSRCRTMD; ILE, QsrCreateMediaDefinition)
API creates a media definition specified by the user. <img src="delta.gif" alt="Start of change">A <strong>media
definition</strong> defines the devices, media, and data format to be used in parallel by a
save or restore operation. For more information about using a media definition,
<!-- see the <a href="../../books/sc415304.pdf" target="_blank">Backup and -->
<!-- Recovery</a><img src="wbpdf.gif" alt="Link to PDF"> book.</p> -->
see <a href="../rzaiu/rzaiurzaiuparandcon.htm">Save to multiple devices</a>
in the Backup and recovery topic.<img src="deltaend.gif" alt="End of change"></p>
<br>
<h3>Authorities and Locks</h3>
<dl>
<dt><em>Media Definition Authority</em></dt>
<dd>*OBJMGMT, *OBJEXIST, and *READ. These authorities are required only if an
existing media definition is to be replaced.</dd>
<dt><em>Library Authority</em></dt>
<dd>*EXECUTE, *ADD and *READ</dd>
<dt><em>Media Definition Lock</em></dt>
<dd>*EXCL</dd>
<dt><em>Library Lock</em></dt>
<dd>*SHRUPD</dd>
</dl>
<br>
<h3>Required Parameter Group</h3>
<dl>
<dt><strong>Qualified media definition name</strong></dt>
<dd>INPUT; CHAR(20)
<p>The media definition to be created. The first 10 characters contain the
media definition name. The second 10 characters contain the name of the library
in which the media definition is located.</p>
<p>You can use the following special value for the library name. It should be
noted, however, that the library name that is actually used is not passed back
to the user. Care should be taken when using this special value to avoid
unexpected results.</p>
<table cellpadding="5">
<!-- cols="15 85" -->
<tr>
<td align="left" valign="top"><em>*CURLIB</em></td>
<td align="left" valign="top">The job's current library is used to locate the
media definition. If no library is specified as the current library for the
job, the QGPL library is used.</td>
</tr>
</table>
<br>
</dd>
<dt><strong>Input data</strong></dt>
<dd>INPUT; CHAR(*)
<p>The variable that is to hold all the information defining the use of
multiple tape files for a save or restore operation. See <a href="#HDRSRCRTFM">
Input Data Format</a> for the format of the input data.</p>
</dd>
<dt><strong>Length of data</strong></dt>
<dd>INPUT; BINARY(4)
<p>The length of the data in the input data parameter. The length of data
parameter may be specified up to the size of the input data variable specified
in the user program. If the length of data parameter specified is larger than
the allocated size of the input data variable specified in the user program,
the results are not predictable. <img src="delta.gif" alt="Start of change">The minimum length is 72 bytes
for format TAPE0100 and 92 bytes for format TAPE0200.<img src="deltaend.gif" alt="End of change"></p>
</dd>
<dt><strong>Format name</strong></dt>
<dd>INPUT; CHAR(8)
<p>The name of the format for input data.
The valid values are:</p>
<table cellpadding="5">
<!-- cols="15 85" -->
<tr>
<td align="left" valign="top"><em>TAPE0100</em></td>
<td align="left" valign="top">Tape devices and media</td>
</tr>
<tr>
<td align="left" valign="top"><img src="delta.gif" alt="Start of change"><em>TAPE0200</em></td>
<td align="left" valign="top">Tape devices and media (extended)<img src="deltaend.gif" alt="End of change"></td>
</tr>
</table>
<br>
</dd>
<dt><strong>Public authority</strong></dt>
<dd>INPUT; CHAR(10)
<p>The authority you give to users who do not have specific private or group
authority to the media definition. Once the media definition has been created,
its public authority stays the same when it is moved to another library or
restored from backup media.</p>
<p>If the replace parameter is used and an existing media definition is
replaced, this parameter is ignored. All authorities are transferred from the
replaced media definition to the new one.
The valid values for this parameter are:</p>
<table cellpadding="5">
<!-- cols="15 85" -->
<tr>
<td align="left" valign="top" width="20%"><em>*ALL</em></td>
<td align="left" valign="top" width="80%">The user can perform all authorized
operations on the media definition.</td>
</tr>
<tr>
<td align="left" valign="top"><em>Authorization list name</em></td>
<td align="left" valign="top">The media definition is secured by the specified
authorization list, and its public authority is set to *AUTL. The specified
authorization list must exist on the system when this API is issued. If the
list does not exist, the create process fails, and an error message is returned
to the application.</td>
</tr>
<tr>
<td align="left" valign="top"><em>*CHANGE</em></td>
<td align="left" valign="top">The user has read, add, update, and delete
authority for the media definition and can read the object description.</td>
</tr>
<tr>
<td align="left" valign="top"><em>*EXCLUDE</em></td>
<td align="left" valign="top">The user cannot access the media definition in
any way.</td>
</tr>
<tr>
<td align="left" valign="top"><em>*LIBCRTAUT</em></td>
<td align="left" valign="top">The public authority for the media definition is
taken from the CRTAUT value for the target library when the object is created.
If the CRTAUT value for the library changes later, that change does not affect
media definitions already created. If the CRTAUT value contains an
authorization list name and that authorization list secures an object, do not
delete the list. If you do, the next time you call this API with the *LIBCRTAUT
parameter, it will fail.</td>
</tr>
<tr>
<td align="left" valign="top"><em>*USE</em></td>
<td align="left" valign="top">The user can read the object description and
contents, but cannot change the media definition.</td>
</tr>
</table>
<br>
</dd>
<dt><strong>Text description</strong></dt>
<dd>INPUT; CHAR(50)
<p>A brief description of the media definition.</p>
</dd>
<dt><strong>Replace</strong></dt>
<dd>INPUT; CHAR(1)
<p>Whether you want to replace an existing media definition.
The valid values are:</p>
<table cellpadding="5">
<!-- cols="5 95" -->
<tr>
<td align="left" valign="top"><em>0</em></td>
<td align="left" valign="top">Do not replace an existing media definition of
the same name and library.</td>
</tr>
<tr>
<td align="left" valign="top"><em>1</em></td>
<td align="left" valign="top">Replace an existing media definition of the same
name and library. The replaced media definition is moved to the QRPLOBJ
library, which is cleared at system IPL. For details about authorities,
ownership, and renaming, see the discussion of the REPLACE parameter in <a
href="../rbam6/rbam6clmain.htm">Control Language (CL)</a></td>
</tr>
</table>
<br>
</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="HDRSRCRTFM">Input Data Format</a></h3>
<p>The input data consists of a header and a set of device definitions and
media file definitions. The following defines the format for the header.
For detailed descriptions of the fields, see
<a href="#HDRSRCRTFD">Field Descriptions for Input Data</a>.</p>
<h4>Format TAPE0100</h4>
<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%">Reserved</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">Reserved</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">Maximum parallel device resources</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">Minimum parallel device resources</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">Offset to first device definition</td>
</tr>
<tr>
<td align="center" valign="top">20</td>
<td align="center" valign="top">14</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Number of device definitions</td>
</tr>
<tr>
<td align="center" valign="top">&nbsp;</td>
<td align="center" valign="top">&nbsp;</td>
<td align="left" valign="top">CHAR(*)</td>
<td align="left" valign="top">Device definitions</td>
</table>
<h4><img src="delta.gif" alt="Start of change">Format TAPE0200</h4>
<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%">&nbsp;</td>
<td align="left" valign="top" width="60%">All fixed fields from format TAPE0100</td>
</tr>
<tr>
<td align="center" valign="top">24</td>
<td align="center" valign="top">18</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of header</td>
</tr>
<tr>
<td align="center" valign="top">28</td>
<td align="center" valign="top">1C</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Device allocation</td>
</tr>
<tr>
<td align="center" valign="top">32</td>
<td align="center" valign="top">20</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Save format</td>
</tr>
<tr>
<td align="center" valign="top">&nbsp;</td>
<td align="center" valign="top">&nbsp;</td>
<td align="left" valign="top">CHAR(*)</td>
<td align="left" valign="top">Device definitions</td>
</tr>
</table><img src="deltaend.gif" alt="End of change">
<br>
<br>
<h3><a name="HDRSRCRTFD">Field Descriptions for Input Data</a></h3>
<p><img src="delta.gif" alt="Start of change"><strong>Device allocation.</strong> When to allocate the tape
devices. This field is ignored for save operations that specify a target release
earlier than V5R4M0. The default value is 0. The possible values are:</p>
<table cellpadding="5">
<!-- cols="5 95" -->
<tr>
<td align="left" valign="top"><em>0</em></td>
<td align="left" valign="top">All tape devices are allocated at the beginning
of the operation.</td>
</tr>
<tr>
<td align="left" valign="top"><em>1</em></td>
<td align="left" valign="top">One tape device is allocated at the beginning
of a save operation. Additional devices are allocated when data is ready
to be written, at which time the number of devices specified for the
Minimum parallel device resources field is required.</td>
</tr>
<tr>
<td align="left" valign="top"><em>2</em></td>
<td align="left" valign="top">The number of devices specified for the
Minimum parallel device resources field is allocated at the beginning
of a save operation. Additional devices are allocated when data is ready
to be written.</td>
</tr>
</table><img src="deltaend.gif" alt="End of change">
<p><strong>Device definitions.</strong> A description of the devices to be
used. See <a href="#HDRSRCRTDV">Device Definition Format</a> for the format of
a device definition.</p>
<p><img src="delta.gif" alt="Start of change"><strong>Length of header.</strong> The length of
the fixed portion of the header information.
The value must be 36.<img src="deltaend.gif" alt="End of change"></p>
<p><strong>Maximum parallel device resources.</strong> The maximum number of
device resources to use in parallel. The possible values are 0 through 32. If 0
is specified, the value assumed is the total number of media file definitions
specified in all of the device definitions.</p>
<p><strong>Minimum parallel device resources.</strong> The minimum number of
device resources to use in parallel. A save or restore operation will end if
fewer resources are available. A restore operation will also end if any of the
devices specified have no resources available. The possible values are 0
through 32. If 0 is specified, the value assumed is the number of device
definitions specified.</p>
<p><strong>Number of device definitions.</strong> The number of device
definitions for the media definition. The possible values are 1 through 32.</p>
<p><strong>Offset to first device definition.</strong> The offset from the
beginning of the input data to the first device definition for the media
definition. This value must be a multiple of 4.</p>
<p><strong>Reserved.</strong> The value must be hexadecimal zeros.</p>
<p><img src="delta.gif" alt="Start of change"><strong>Save format.</strong> Whether to save data in serial format
or parallel format. This field is ignored for restore operations.
The default value is -2. The possible values are:</p>
<!-- <p><b>Note to reviewers</b> Later in V5R4, the library terminology is expected -->
<!-- to be updated to include IFS data.</p> -->
<table cellpadding="5">
<!-- cols="5 95" -->
<!-- <tr> -->
<!-- <td align="left" valign="top"><em>-3</em></td> -->
<!-- <td align="left" valign="top"><b>Note to reviewers</b> This value is expected -->
<!-- to be a future enhancement. Libraries being saved that are listed in a -->
<!-- user space identified in an additional field are saved in parallel format. -->
<!-- All other libraries are saved in serial format.</td> -->
<!-- </tr> -->
<tr>
<td align="left" valign="top"><em>-2</em></td>
<td align="left" valign="top">If one library is saved, it is saved in parallel
format. If more than one library is saved, all libraries are saved
in serial format.</td>
</tr>
<tr>
<td align="left" valign="top"><em>-1</em></td>
<td align="left" valign="top">All data is saved in serial format.</td>
</tr>
<tr>
<td align="left" valign="top"><em>0</em></td>
<td align="left" valign="top">All data is saved in parallel format.</td>
</tr>
<!-- <tr> -->
<!-- <td align="left" valign="top" nowrap><em>1-nnnnn</em></td> -->
<!-- <td align="left" valign="top"><b>Note to reviewers</b> This range is expected -->
<!-- to be a future enhancement. Libraries are saved in parallel format if the -->
<!-- amount of data to be saved for the library is this many megabytes or more.</td> -->
<!-- </tr> -->
</table><img src="deltaend.gif" alt="End of change">
<br>
<h3><a name="HDRSRCRTDV">Device Definition Format</a></h3>
<h4>Format TAPE0100</h4>
<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%">Offset to next device definition</td>
</tr>
<tr>
<td align="center" valign="top">4</td>
<td align="center" valign="top">4</td>
<td align="left" valign="top">CHAR(10)</td>
<td align="left" valign="top">Device name</td>
</tr>
<tr>
<td align="center" valign="top">14</td>
<td align="center" valign="top">E</td>
<td align="left" valign="top">CHAR(2)</td>
<td align="left" valign="top">Reserved</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">Offset to first media file definition</td>
</tr>
<tr>
<td align="center" valign="top">20</td>
<td align="center" valign="top">14</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Number of media file definitions</td>
</tr>
<tr>
<td align="center" valign="top">&nbsp;</td>
<td align="center" valign="top">&nbsp;</td>
<td align="left" valign="top">CHAR(*)</td>
<td align="left" valign="top">Media file definitions</td>
</tr>
</table>
<h4><img src="delta.gif" alt="Start of change">Format TAPE0200</h4>
<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%">&nbsp;</td>
<td align="left" valign="top" width="60%">All fixed fields from format TAPE0100</td>
</tr>
<tr>
<td align="center" valign="top">24</td>
<td align="center" valign="top">18</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of device definition</td>
</tr>
<tr>
<td align="center" valign="top">&nbsp;</td>
<td align="center" valign="top">&nbsp;</td>
<td align="left" valign="top">CHAR(*)</td>
<td align="left" valign="top">Media file definitions</td>
</tr>
</table><img src="deltaend.gif" alt="End of change">
<br>
<br>
<h3><a name="HDRSRCRTMF">Field Descriptions for Device Definition</a></h3>
<p><strong>Device name.</strong> The name of a tape device description or tape
media library device description.</p>
<p><img src="delta.gif" alt="Start of change"><strong>Length of device definition.</strong> The length of
the fixed portion of the device definition.
The value must be 28.<img src="deltaend.gif" alt="End of change"></p>
<p><strong>Media file definitions.</strong> A description of the media files to
be used on this device. See <a href="#HDRSRCRTTP">Media File Definition
Format</a> for the format of a media file definition.</p>
<p><strong>Number of media file definitions.</strong> The number of media file
definitions for the device. The possible values are 1 through 32.</p>
<p><strong>Offset to first media file definition.</strong> The offset from the
beginning of the input data to the first media file definition for the device.
This value must be a multiple of 4.</p>
<p><strong>Offset to next device definition.</strong> The offset from the
beginning of the input data to the next device definition for the media
definition. This value must be a multiple of 4.</p>
<p><strong>Reserved.</strong> The value must be hexadecimal zeros.</p>
<br>
<h3><a name="HDRSRCRTTP">Media File Definition Format</a></h3>
<h4>Format TAPE0100</h4>
<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%">Offset to next media file
definition</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">Sequence number</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">Offset to volume identifier array</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">Number of volume identifiers</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">Length of volume identifier</td>
</tr>
<tr>
<td align="center" valign="top">20</td>
<td align="center" valign="top">14</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Starting volume array element</td>
</tr>
<tr>
<td align="center" valign="top">&nbsp;</td>
<td align="center" valign="top">&nbsp;</td>
<td align="left" valign="top">CHAR(*)</td>
<td align="left" valign="top">Volume identifier array</td>
</tr>
</table>
<h4><img src="delta.gif" alt="Start of change">Format TAPE0200</h4>
<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%">&nbsp;</td>
<td align="left" valign="top" width="60%">All fixed fields from format TAPE0100</td>
</tr>
<tr>
<td align="center" valign="top">24</td>
<td align="center" valign="top">18</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of media file definition</td>
</tr>
<tr>
<td align="center" valign="top">&nbsp;</td>
<td align="center" valign="top">&nbsp;</td>
<td align="left" valign="top">CHAR(*)</td>
<td align="left" valign="top">Volume identifier array</td>
</tr>
</table><img src="deltaend.gif" alt="End of change">
<br>
<br>
<h3><a name="Header_36">Field Descriptions for Media File Definition</a></h3>
<p><img src="delta.gif" alt="Start of change"><strong>Length of media file definition.</strong> The length of
the fixed portion of the media file definition.
The value must be 28.<img src="deltaend.gif" alt="End of change"></p>
<p><strong>Length of volume identifier.</strong> The number of bytes in each
volume identifier. The possible values are 0 through 6. If 0 is specified, the
number of volume identifiers specified must be 0.</p>
<p><strong>Number of volume identifiers.</strong> The number of volume
identifiers used for the tape file. The possible values are 0 through 75. If 0
is specified, the volume currently placed in the device is used. If 0 is
specified for a tape media library device, volume identifiers must be supplied
by using the Tape Management exit program during the save or restore
operation.</p>
<p><strong>Offset to next media file definition.</strong> The offset from the
beginning of the input data to the next media file definition for the device.
This value must be a multiple of 4.</p>
<p><strong>Offset to volume identifier array.</strong> The offset from the
beginning of the input data to the first volume identifier for the tape file.
This value must be a multiple of 4.</p>
<p><strong>Sequence number.</strong> The tape file sequence number for the
media file.</p>
<p>The possible values are:</p>
<table cellpadding="5">
<!-- cols="15 85" -->
<tr>
<td align="left" valign="top"><em>0</em></td>
<td align="left" valign="top">A save operation begins after the
last sequence number on the starting volume. A restore operation searches the
starting volume for a media file containing any of the objects to restore.</td>
</tr>
<tr>
<td align="left" valign="top" nowrap><em>1-16777215</em></td>
<td align="left" valign="top">The sequence number of the tape file.</td>
</tr>
</table>
<p><strong>Starting volume array element.</strong> The element in the volume
identifier array containing the volume on which the save or restore operation
should begin. The possible values are 0 through the number of volume
identifiers specified. If the number of volume identifiers is 0, this value
must be 0. If the number of volume identifiers is greater than 0, this value
must be greater than 0.</p>
<p><strong>Volume identifier array.</strong> An array of volume identifiers.
The save or restore operation will use the volumes in the order specified,
beginning with the starting volume array element. If additional volumes are
needed after the last array element is used, the save or restore operation will
call the Tape Management exit program or prompt the user to provide each
additional volume. The possible value for a volume identifier is:</p>
<table cellpadding="5">
<!-- cols="15 85" -->
<tr>
<td align="left" valign="top" nowrap><em>Volume identifier</em></td>
<td align="left" valign="top">The identifier of a volume.</td>
</tr>
</table>
<br>
<br>
<h3>Error Messages</h3>
<table width="100%" cellpadding="5">
<!-- cols="15 85" -->
<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">CPF24B4 E</td>
<td width="85%" valign="top">Severe error while addressing parameter list.</td>
</tr>
<tr>
<td valign="top">CPF386F E</td>
<td valign="top">Value in input data parameter not valid.</td>
</tr>
<tr>
<td valign="top">CPF3C17 E</td>
<td valign="top">Error occurred with input data parameter.</td>
</tr>
<tr>
<td valign="top">CPF3C1D E</td>
<td valign="top">Length specified in parameter &amp;1 not valid.</td>
</tr>
<tr>
<td valign="top">CPF3C21 E</td>
<td valign="top">Format name &amp;1 is not valid.</td>
</tr>
<tr>
<td valign="top">CPF3C29 E</td>
<td valign="top">Object name &amp;1 is not valid.</td>
</tr>
<tr>
<td valign="top">CPF3C3C E</td>
<td valign="top">Value for parameter &amp;1 not valid.</td>
</tr>
<tr>
<td valign="top">CPF3C90 E</td>
<td valign="top">Literal value cannot be changed.</td>
</tr>
<tr>
<td valign="top">CPF3CF1 E</td>
<td valign="top">Error code parameter not valid.</td>
</tr>
<tr>
<td valign="top">CPF9800 E</td>
<td valign="top">All CPF98xx messages could be signaled. xx is from 01 to
FF.</td>
</tr>
<tr>
<td valign="top">CPF9999 E</td>
<td valign="top">Function check. &amp;1 unmonitored by &amp;2 at statement
&amp;5, instruction &amp;3.</td>
</tr>
</table>
<br>
<hr>
API introduced: V4R4
<hr>
<center>
<table cellpadding="2" cellspacing="2">
<tr align="center">
<td valign="middle" align="center">
<a href="#Top_Of_Page">Top</a> |
<a href="back1.htm">Backup and Recovery APIs</a> |
<a href="aplist.htm">APIs by category</a></td>
</tr>
</table>
</center>
</body>
</html>