ibm-information-center/dist/eclipse/plugins/i5OS.ic.cl_5.4.0.1/chgrtge.htm

461 lines
18 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">
<title>Change Routing Entry (CHGRTGE)</title>
<link rel="stylesheet" type="text/css" href="../rzahg/ic.css">
</head>
<body bgcolor="white">
<script language="Javascript" src="../rzahg/synch.js" type="text/javascript"></script>
<a name="CHGRTGE.Top_Of_Page"></a>
<h2>Change Routing Entry (CHGRTGE)</h2>
<table width="100%">
<tr>
<td valign="top" align="left"><b>Where allowed to run: </b>All environments (*ALL)<br>
<b>Threadsafe: </b>No
</td>
<td valign="top" align="right">
<a href="#CHGRTGE.PARAMETERS.TABLE">Parameters</a><br>
<a href="#CHGRTGE.COMMAND.EXAMPLES">Examples</a><br>
<a href="#CHGRTGE.ERROR.MESSAGES">Error messages</a></td>
</tr>
</table>
<div> <a name="CHGRTGE"></a>
<p>The Change Routing Entry (CHGRTGE) command changes a routing entry in the specified subsystem description. The routing entry specifies the parameters used to start a routing step for a job. The associated subsystem can be active when the changes are made.
</p>
<p><b>Notes:</b>
</p>
<ol>
<li>The job associated with an active subsystem can only find objects that exist in the system auxiliary storage pool (ASP) or in a basic user ASP. Therefore, objects that are referenced by this command should exist in the system ASP or in a basic user ASP.
</li>
</ol>
<p><b>Restrictions:</b>
</p>
<ol>
<li>To use this command, you must have:
<ul>
<li>object operational (*OBJOPR), object management (*OBJMGT), and read (*READ) authority to the specified subsystem description and execute (*EXECUTE) authority to the library containing the subsystem description.
</li>
</ul>
</li>
</ol>
</div>
<table width="100%">
<tr><td align="right"><a href="#CHGRTGE.Top_Of_Page">Top</a></td></tr>
</table>
<hr size="2" width="100%">
<div>
<h3><a name="CHGRTGE.PARAMETERS.TABLE">Parameters</a></h3>
<table border="1" cellpadding="4" cellspacing="0">
<!-- col1="10" col2="15" col3="30" col4="10" -->
<tr>
<th bgcolor="aqua" valign="bottom" align="left">Keyword</th>
<th bgcolor="aqua" valign="bottom" align="left">Description</th>
<th bgcolor="aqua" valign="bottom" align="left">Choices</th>
<th bgcolor="aqua" valign="bottom" align="left">Notes</th>
</tr>
<tr>
<td valign="top" rowspan="3"><a href="#CHGRTGE.SBSD"><b>SBSD</b></a></td>
<td valign="top">Subsystem description</td>
<td valign="top"><i>Qualified object name</i></td>
<td valign="top" rowspan="3">Required, Positional 1</td>
</tr>
<tr>
<td valign="top">Qualifier 1: Subsystem description</td>
<td valign="top"><i>Name</i></td>
</tr><tr>
<td valign="top">Qualifier 2: Library</td>
<td valign="top"><i>Name</i>, <b><u>*LIBL</u></b>, *CURLIB</td>
</tr><tr>
<td valign="top"><a href="#CHGRTGE.SEQNBR"><b>SEQNBR</b></a></td>
<td valign="top">Routing entry sequence number</td>
<td valign="top">1-9999</td>
<td valign="top">Required, Positional 2</td>
</tr>
<tr>
<td valign="top" rowspan="3"><a href="#CHGRTGE.CMPVAL"><b>CMPVAL</b></a></td>
<td valign="top">Comparison data</td>
<td valign="top">Single values: <b><u>*SAME</u></b>, *ANY<br>Other values: <i>Element list</i></td>
<td valign="top" rowspan="3">Optional, Positional 3</td>
</tr>
<tr>
<td valign="top">Element 1: Compare value</td>
<td valign="top">
<i>Character value</i></td>
</tr>
<tr>
<td valign="top">Element 2: Starting position</td>
<td valign="top">
1-80, <b><u>*SAME</u></b></td>
</tr>
<tr>
<td valign="top" rowspan="3"><a href="#CHGRTGE.PGM"><b>PGM</b></a></td>
<td valign="top">Program to call</td>
<td valign="top">Single values: <b><u>*SAME</u></b>, *RTGDTA<br>Other values: <i>Qualified object name</i></td>
<td valign="top" rowspan="3">Optional, Positional 4</td>
</tr>
<tr>
<td valign="top">Qualifier 1: Program to call</td>
<td valign="top"><i>Name</i></td>
</tr><tr>
<td valign="top">Qualifier 2: Library</td>
<td valign="top"><i>Name</i>, <b><u>*LIBL</u></b>, *CURLIB</td>
</tr><tr>
<td valign="top" rowspan="3"><a href="#CHGRTGE.CLS"><b>CLS</b></a></td>
<td valign="top">Class</td>
<td valign="top">Single values: <b><u>*SAME</u></b>, *SBSD<br>Other values: <i>Qualified object name</i></td>
<td valign="top" rowspan="3">Optional</td>
</tr>
<tr>
<td valign="top">Qualifier 1: Class</td>
<td valign="top"><i>Name</i></td>
</tr><tr>
<td valign="top">Qualifier 2: Library</td>
<td valign="top"><i>Name</i>, <b><u>*LIBL</u></b>, *CURLIB</td>
</tr><tr>
<td valign="top"><a href="#CHGRTGE.MAXACT"><b>MAXACT</b></a></td>
<td valign="top">Maximum active routing steps</td>
<td valign="top">0-1000, <b><u>*SAME</u></b>, *NOMAX</td>
<td valign="top">Optional</td>
</tr>
<tr>
<td valign="top"><a href="#CHGRTGE.POOLID"><b>POOLID</b></a></td>
<td valign="top">Storage pool identifier</td>
<td valign="top">1-10, <b><u>*SAME</u></b></td>
<td valign="top">Optional</td>
</tr>
<tr>
<td valign="top" rowspan="3"><a href="#CHGRTGE.THDRSCAFN"><b>THDRSCAFN</b></a></td>
<td valign="top">Thread resources affinity</td>
<td valign="top">Single values: <b><u>*SAME</u></b>, *SYSVAL<br>Other values: <i>Element list</i></td>
<td valign="top" rowspan="3">Optional</td>
</tr>
<tr>
<td valign="top">Element 1: Group</td>
<td valign="top">
*NOGROUP, *GROUP</td>
</tr>
<tr>
<td valign="top">Element 2: Level</td>
<td valign="top">
*NORMAL, *HIGH</td>
</tr>
<tr>
<td valign="top"><a href="#CHGRTGE.RSCAFNGRP"><b>RSCAFNGRP</b></a></td>
<td valign="top">Resources affinity group</td>
<td valign="top"><b><u>*SAME</u></b>, *NO, *YES</td>
<td valign="top">Optional</td>
</tr>
</table>
<table width="100%">
<tr><td align="right"><a href="#CHGRTGE.Top_Of_Page">Top</a></td></tr>
</table>
</div>
<div> <a name="CHGRTGE.SBSD"></a>
<h3>Subsystem description (SBSD)</h3>
<p>Specifies the name and library of the subsystem description containing the routing entry that is being changed.
</p>
<p>This is a required parameter.
</p>
<p><b>Qualifier 1: Subsystem description</b>
</p>
<dl>
<dt><b><i>name</i></b></dt>
<dd>Specify the name of the subsystem description for the routing entry that is being changed.
</dd>
</dl>
<p><b>Qualifier 2: Library</b>
</p>
<dl>
<dt><b><u>*LIBL</u></b></dt>
<dd>All libraries in the thread's library list are searched until a match is found.
</dd>
<dt><b>*CURLIB</b></dt>
<dd>The current library for the thread is used to locate the object. If no library is specified as the current library for the thread, the QGPL library is used.
</dd>
</dl>
<dl>
<dt><b><i>name</i></b></dt>
<dd>Specify the name of the subsystem description's library for the routing entry that is being changed.
</dd>
</dl>
</div>
<table width="100%">
<tr><td align="right"><a href="#CHGRTGE.Top_Of_Page">Top</a></td></tr>
</table>
<div> <a name="CHGRTGE.SEQNBR"></a>
<h3>Routing entry sequence number (SEQNBR)</h3>
<p>Specifies the sequence number of the routing entry that is added or changed. Routing data is matched against the routing entry compare values in ascending sequence number order. Searching ends when a match occurs or the last routing entry is reached. Therefore, if more than one match possibility exists, only the first match is processed.
</p>
<p>This is a required parameter.
</p>
<dl>
<dt><b><i>1-9999</i></b></dt>
<dd>Specifies a sequence number between 1 and 9999.
</dd>
</dl>
</div>
<table width="100%">
<tr><td align="right"><a href="#CHGRTGE.Top_Of_Page">Top</a></td></tr>
</table>
<div> <a name="CHGRTGE.CMPVAL"></a>
<h3>Comparison data (CMPVAL)</h3>
<p>Specifies a value that is compared with the routing data to determine whether this routing entry is used for starting a routing step for the job. If the routing data matches the routing entry compare value, that routing entry is used. A starting position in the starting data character string can be used to specify the starting position in the routing data for comparison against the routing entry compare value.
</p>
<p><b>Single values</b>
</p>
<dl>
<dt><b><u>*SAME</u></b></dt>
<dd>The comparison value and starting position do not change.
</dd>
<dt><b>*ANY</b></dt>
<dd>Any routing data is considered a match. To specify *ANY, the routing entry must have the highest sequence number value of any routing entry in the subsystem description.
</dd>
</dl>
<p><b>Element 1: Compare value</b>
</p>
<dl>
<dt><b><i>character-value</i></b></dt>
<dd>Specify a value (any character string not exceeding 80 characters) that is compared with routing data for a match. When a match occurs, this routing entry is used to start a routing step.
</dd>
</dl>
<p><b>Element 2: Starting position</b>
</p>
<dl>
<dt><b><u>*SAME</u></b></dt>
<dd>The starting position does not change.
</dd>
<dt><b><i>1-80</i></b></dt>
<dd>Specify a value, 1 through 80, that indicates which position in the routing data character string is the starting position for the comparison. The last character position compared must be less than or equal to the length of the routing data used in the comparison.
</dd>
</dl>
</div>
<table width="100%">
<tr><td align="right"><a href="#CHGRTGE.Top_Of_Page">Top</a></td></tr>
</table>
<div> <a name="CHGRTGE.PGM"></a>
<h3>Program to call (PGM)</h3>
<p>Specifies the name and library of the program called as the first program run in the routing step. No parameters can be passed to the specified program. The program name can be either explicitly specified in the routing entry, or extracted from the routing data. If a program name is specified in a routing entry, selection of that routing entry results in the routing entry program being called (regardless of the program name passed in an EVOKE function). If the program specified in the EVOKE function is called, *RTGDTA must be specified. If the program does not exist when the routing entry is added or changed, a library qualifier must be specified because the qualified program name is kept in the subsystem description.
</p>
<p><b>Single values</b>
</p>
<dl>
<dt><b><u>*SAME</u></b></dt>
<dd>The program called does not change.
</dd>
<dt><b>*RTGDTA</b></dt>
<dd>The program name is taken from the routing data that was supplied and matched against this entry. A qualified program name is taken from the routing data in the following manner: the program name is taken from positions 37 through 46, and the library name is taken from positions 47 through 56. Care should be used to ensure that routing entries that specify *RTGDTA are selected only for EVOKE functions on jobs that have specified the program name in the correct position in the routing data.
</dd>
</dl>
<p><b>Qualifier 1: Program to call</b>
</p>
<dl>
<dt><b><i>name</i></b></dt>
<dd>Specify the name of the program that is run from this routing entry.
</dd>
</dl>
<p><b>Qualifier 2: Library</b>
</p>
<dl>
<dt><b><u>*LIBL</u></b></dt>
<dd>All libraries in the thread's library list are searched until a match is found.
</dd>
<dt><b>*CURLIB</b></dt>
<dd>The current library for the thread is used to locate the object. If no library is specified as the current library for the thread, the QGPL library is used.
</dd>
</dl>
<dl>
<dt><b><i>name</i></b></dt>
<dd>Specify the library where the named program is located.
</dd>
</dl>
<p>
<b>Note: </b>If the program does not exist when this routing entry is changed, a library qualifier must be specified because the qualified program name is kept in the subsystem description.
</p>
</div>
<table width="100%">
<tr><td align="right"><a href="#CHGRTGE.Top_Of_Page">Top</a></td></tr>
</table>
<div> <a name="CHGRTGE.CLS"></a>
<h3>Class (CLS)</h3>
<p>Specifies the name and library of the class used for the routing steps started through this routing entry. The class defines the attributes of the routing step's running environment. If the class does not exist when the routing entry is added, a library qualifier must be specified because the qualified class name is kept in the subsystem description.
</p>
<p><b>Single values</b>
</p>
<dl>
<dt><b><u>*SAME</u></b></dt>
<dd>The class for this entry does not change.
</dd>
<dt><b>*SBSD</b></dt>
<dd>The class having the same name as the subsystem description, specified on the <b>Subsystem description (SBSD)</b> parameter, is used for routing steps started through this entry.
</dd>
</dl>
<p><b>Qualifier 1: Class</b>
</p>
<dl>
<dt><b><i>name</i></b></dt>
<dd>Specify the name of the class used for routing steps started through this routing entry.
</dd>
</dl>
<p><b>Qualifier 2: Library</b>
</p>
<dl>
<dt><b><u>*LIBL</u></b></dt>
<dd>All libraries in the thread's library list are searched until a match is found.
</dd>
<dt><b>*CURLIB</b></dt>
<dd>The current library for the thread is used to locate the object. If no library is specified as the current library for the thread, the QGPL library is used.
</dd>
</dl>
<dl>
<dt><b><i>name</i></b></dt>
<dd>Specify the library name of the class used for routing steps started through this entry.
</dd>
</dl>
</div>
<table width="100%">
<tr><td align="right"><a href="#CHGRTGE.Top_Of_Page">Top</a></td></tr>
</table>
<div> <a name="CHGRTGE.MAXACT"></a>
<h3>Maximum active routing steps (MAXACT)</h3>
<p>Specifies the maximum number of routing steps (jobs) that can be active at the same time through this routing entry. In a job, only one routing step is active at a time. When a subsystem is active and the maximum number of routing steps is reached, any subsequent attempt to start a routing step through this routing entry fails. The job that attempted to start the routing step is ended, and a message is sent by the subsystem to the job's log.
</p>
<dl>
<dt><b><u>*SAME</u></b></dt>
<dd>The maximum number of routing steps that can be active at the same time does not change.
</dd>
<dt><b>*NOMAX</b></dt>
<dd>There is no maximum number of routing steps that can be active at the same time and processed through this routing entry. This value is normally used when there is no reason to control the number of routing steps.
</dd>
<dt><b><i>0-1000</i></b></dt>
<dd>Specify the maximum number of routing steps that can be active at the same time through this routing entry. If a routing step being started would exceed this number, the job is ended.
</dd>
</dl>
</div>
<table width="100%">
<tr><td align="right"><a href="#CHGRTGE.Top_Of_Page">Top</a></td></tr>
</table>
<div> <a name="CHGRTGE.POOLID"></a>
<h3>Storage pool identifier (POOLID)</h3>
<p>Specifies the pool identifier of the storage pool in which the program runs. The pool identifier specified here relates to the storage pools in the subsystem description.
</p>
<dl>
<dt><b><u>*SAME</u></b></dt>
<dd>The pool identifier does not change.
</dd>
<dt><b><i>1-10</i></b></dt>
<dd>Specify the identifier of the storage pool defined for this subsystem in which the program runs.
</dd>
</dl>
</div>
<table width="100%">
<tr><td align="right"><a href="#CHGRTGE.Top_Of_Page">Top</a></td></tr>
</table>
<div> <a name="CHGRTGE.THDRSCAFN"></a>
<h3>Thread resources affinity (THDRSCAFN)</h3>
<p>Specifies the affinity of threads to system resources.
</p>
<p><b>Single values</b>
</p>
<dl>
<dt><b><u>*SAME</u></b></dt>
<dd>The thread resources affinity does not change.
</dd>
<dt><b>*SYSVAL</b></dt>
<dd>When a job is started using this routing entry, the thread resources affinity value from the QTHDRSCAFN system value will be used.
</dd>
</dl>
<p><b>Element 1: Group</b>
</p>
<dl>
<dt><b>*NOGROUP</b></dt>
<dd>Jobs using this routing entry will have affinity to a group of processors and memory. Secondary threads running under the job will not necessarily have affinity to the same group of processors and memory.
</dd>
<dt><b>*GROUP</b></dt>
<dd>Jobs using this routing entry will have affinity to a group of processors and memory. Secondary threads running under the job will all have affinity to the same group of processors and memory as the initial thread.
</dd>
</dl>
<p><b>Element 2: Level</b>
</p>
<dl>
<dt><b>*NORMAL</b></dt>
<dd>A thread will use any processor or memory if the resources it has affinity to are not readily available.
</dd>
<dt><b>*HIGH</b></dt>
<dd>A thread will only use the resources it has affinity to, and will wait until they become available if necessary.
</dd>
</dl>
</div>
<table width="100%">
<tr><td align="right"><a href="#CHGRTGE.Top_Of_Page">Top</a></td></tr>
</table>
<div> <a name="CHGRTGE.RSCAFNGRP"></a>
<h3>Resources affinity group (RSCAFNGRP)</h3>
<p>Specifies whether or not jobs using this routing entry will be grouped together having affinity to the same system resources (processors and memory). A value of *YES for this parameter will take precedence over the QTHDRSCAFN system value when set to *NOGROUP.
</p>
<dl>
<dt><b><u>*SAME</u></b></dt>
<dd>The resources affinity group does not change.
</dd>
<dt><b>*NO</b></dt>
<dd>Jobs that use this routing entry will not be grouped together.
</dd>
</dl>
<dl>
<dt><b>*YES</b></dt>
<dd>Jobs that use this routing entry will be grouped together such that they will have affinity to the same system resources. Jobs that share data in memory may perform better if they have affinity to the same resources.
</dd>
</dl>
</div>
<table width="100%">
<tr><td align="right"><a href="#CHGRTGE.Top_Of_Page">Top</a></td></tr>
</table>
<hr size="2" width="100%">
<div><h3><a name="CHGRTGE.COMMAND.EXAMPLES">Examples</a> </h3>
<p><b>Example 1: Changing Class and Pool ID</b>
</p>
<p>
<pre>
CHGRTGE SBSD(LIB5/ORDER) SEQNBR(1478) CLS(LIB6/SOFAST) POOLID(3)
</pre>
</p>
<p>This command changes routing entry 1478 in the subsystem description ORDER found in library LIB5. The same program is used, but now it runs in storage pool 3 using class SOFAST in library LIB6.
</p>
<p><b>Example 2: Changing the Name of the Program Called</b>
</p>
<p>
<pre>
CHGRTGE SBSD(T7/PGMR) SEQNBR(157) PGM(T7/INTDEV)
</pre>
</p>
<p>This command changes routing entry 157 in the subsystem description PGMR found in library T7. The program INTDEV in library T7 is now called whenever this routing entry is selected. The other routing entry parameters are not changed.
</p>
</div>
<table width="100%">
<tr><td align="right"><a href="#CHGRTGE.Top_Of_Page">Top</a></td></tr>
</table>
<hr size="2" width="100%">
<div><h3><a name="CHGRTGE.ERROR.MESSAGES">Error messages</a> </h3>
<p><b><u>*ESCAPE Messages</u></b>
</p>
<dl>
<dt><b>CPF1619</b></dt>
<dd>Subsystem description &amp;1 in library &amp;2 damaged.
</dd>
<dt><b>CPF1691</b></dt>
<dd>Active subsystem description may or may not have changed.
</dd>
<dt><b>CPF1697</b></dt>
<dd>Subsystem description &amp;1 not changed.
</dd>
</dl>
</div>
<table width="100%">
<tr><td align="right"><a href="#CHGRTGE.Top_Of_Page">Top</a></td></tr>
</table>
</body>
</html>