https://m204wiki.rocketsoftware.com/index.php?title=IFSTRT_(IFAM1)_(HLI_function)&feed=atom&action=historyIFSTRT (IFAM1) (HLI function) - Revision history2024-03-28T20:28:59ZRevision history for this page on the wikiMediaWiki 1.40.1https://m204wiki.rocketsoftware.com/index.php?title=IFSTRT_(IFAM1)_(HLI_function)&diff=93225&oldid=prevELowell at 19:40, 13 July 20162016-07-13T19:40:33Z<p></p>
<table style="background-color: #fff; color: #202122;" data-mw="interface">
<col class="diff-marker" />
<col class="diff-content" />
<col class="diff-marker" />
<col class="diff-content" />
<tr class="diff-title" lang="en">
<td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Older revision</td>
<td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Revision as of 19:40, 13 July 2016</td>
</tr><tr><td colspan="2" class="diff-lineno" id="mw-diff-left-l1">Line 1:</td>
<td colspan="2" class="diff-lineno">Line 1:</td></tr>
<tr><td class="diff-marker" data-marker="−"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>The conventions used on this page are described in [[HLI: Function <del style="font-weight: bold; text-decoration: none;">call list</del>#Function call notation conventions|Function call notation conventions]].</div></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>The conventions used on this page are described in [[HLI: Function <ins style="font-weight: bold; text-decoration: none;">summary</ins>#Function call notation conventions|Function call notation conventions]].</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>==Summary==</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>==Summary==</div></td></tr>
</table>ELowellhttps://m204wiki.rocketsoftware.com/index.php?title=IFSTRT_(IFAM1)_(HLI_function)&diff=88852&oldid=prevELowell at 23:00, 11 July 20162016-07-11T23:00:46Z<p></p>
<table style="background-color: #fff; color: #202122;" data-mw="interface">
<col class="diff-marker" />
<col class="diff-content" />
<col class="diff-marker" />
<col class="diff-content" />
<tr class="diff-title" lang="en">
<td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Older revision</td>
<td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Revision as of 23:00, 11 July 2016</td>
</tr><tr><td colspan="2" class="diff-lineno" id="mw-diff-left-l1">Line 1:</td>
<td colspan="2" class="diff-lineno">Line 1:</td></tr>
<tr><td colspan="2" class="diff-side-deleted"></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins style="font-weight: bold; text-decoration: none;">The conventions used on this page are described in [[HLI: Function call list#Function call notation conventions|Function call notation conventions]].</ins></div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>==Summary==</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>==Summary==</div></td></tr>
</table>ELowellhttps://m204wiki.rocketsoftware.com/index.php?title=IFSTRT_(IFAM1)_(HLI_function)&diff=87609&oldid=prevELowell: Created page with " ==Summary== <dl> <dt>Description</dt> <dd><p>The form of the IFSTRT call (START THREAD) that starts an IFAM1 thread connection to Model 204 performs the following actions:</p..."2016-07-08T22:37:43Z<p>Created page with " ==Summary== <dl> <dt>Description</dt> <dd><p>The form of the IFSTRT call (START THREAD) that starts an IFAM1 thread connection to Model 204 performs the following actions:</p..."</p>
<p><b>New page</b></p><div><br />
==Summary==<br />
<dl><br />
<dt>Description</dt><br />
<dd><p>The form of the IFSTRT call (START THREAD) that starts an IFAM1 thread connection to Model 204 performs the following actions:</p><br />
<ul><br />
<li>Allocates a single active thread</li><br />
<li>Specifies the calling protocol to be used for the host language</li><br />
<li>Sets certain Model 204 job parameters</li><br />
<li>Establishes either a single or a multiple cursor type thread</li><br />
</ul></dd><br />
<dt>Thread type</dt><br />
<dd>multiple cursor IFSTRT, single cursor IFSTRT</dd><br />
<dt>IFCALL function number</dt><br />
<dd>Not applicable</dd><br />
</dl><br />
<br />
==Syntax==<br />
<p class="syntax">IFSTRT(RETCODE,LANG_IND,PARM_LIST,PRO_LIST,THRD_TYP)</p><br />
<br />
<dl><br />
<dt>Compile-only form</dt><br />
<dd>Not available</dd><br />
<dt>Execute-only form</dt><br />
<dd>Not available</dd><br />
</dl><br />
<br />
<p>Specify the parameters in the syntax order shown above.</p><br />
<table><br />
<tr class="head"><br />
<th>Parameter</th><br />
<th>Description</th><br />
</tr><br />
<tr><br />
<td>RETCODE</td><br />
<td>[O,i,r] The Model 204 return code is the required first parameter. The code is a binary integer value.</td><br />
</tr><br />
<tr><br />
<td>LANG_IND</td><br />
<td>[I,i,r] The language indicator is a required input parameter that establishes the calling sequence convention to be used corresponding to the host language. The indicator specifies the format of parameters that are passed in subsequent calls. Specify one of the following integer values:<br />
<p><br />
1 = PL/1 F-level, and BAL languages <br /><br />
2 = COBOL, FORTRAN, and BAL languages <br /><br />
3 = PL/1 with +Optimizer/Checkout compilers, VS/FORTRAN, and BAL languages </p><br />
<p class="note"><b>Note:</b> Any convention may be specified for use with the BAL language, and the BAL programmer must adhere to the convention that is specified when coding parameters.</p><br />
</td><br />
</tr><br />
<tr><br />
<td>PARM_LIST</td><br />
<td>[I,c,r] The parameter list is a required input parameter that specifies PARM entries that are set on the EXEC statement for the IFAM1 job. Specify a character string and append a semicolon (;), or specify a semicolon if no parameters are to be set. See [[List of Model 204 parameters]] for a description of the Model 204 parameters.<br />
<p class="note"><b>Note:</b> If the LIBUFF and LOBUFF parameters are to be set, include them in the parameter list. Do not specify the following parameters in the PARM list: ALTIODEV, NUSERS, and NSERVS.</p><br />
</td><br />
</tr><br />
<tr><br />
<td>PRO_LIST</td><br />
<td>[I,c,r] The prologue list is a required input parameter that specifies Model 204 User 0 parameters, such as page size and lengths of various work areas. Specify a character string and append a semicolon (;), or specify a semicolon if no parameters are to be set. (This entry corresponds to the first line of the SYSIN data set in a BATCH204 run.)<br />
<p><br />
See "Notes and tips" in the following section for restrictions that apply to User 0 login entries. For a description of the Model 204 User 0 parameters, see [[Defining the runtime environment (CCAIN)#User 0 parameters|User 0 parameters]].</p><br />
</td><br />
</tr><br />
<tr><br />
<td>THRD_TYP</td><br />
<td>[I,i,o] The thread type indicator is an optional parameter that indicates either a single cursor or a multiple cursor IFSTRT thread. Specify either of the following integer values:<br />
<p>0 = Single cursor thread (default)<br /><br />
2 = Multiple cursor thread </p><br />
<p class="note"><b>Note:</b> If not specified, the thread indicator defaults to 0; you must specify a value of 2 to use a multiple cursor IFSTRT thread.</p><br />
</td><br />
</tr><br />
</table><br />
<br />
==Usage notes==<br />
<p>Use the IFSTRT call to establish a connection to the Host Language Interface Model 204 service program. </p><br />
<p>Note that an IFAM1 job is single-threaded, and only one IFSTRT thread can be started in the job. You can specify a multiple cursor IFSTRT thread or use the default single cursor IFSTRT thread. </p><br />
<p><br />
The IFSTRT protocol allows applications written in a host language to process against the Model 204 database using a particular class of HLI calls. See [[HLI: Function summary]] for an overview of IFSTRT calls. </p><br />
<br />
==User 0 login restrictions==<br />
<p><br />
Certain restrictions apply for specifying User 0 login parameters (the PRO_LIST parameter). Rocket recommends the following actions when using a security subsystem, such as Security Server (formerly RACF), that performs login validation: </p><br />
<ul><br />
<li>Do not specify a user ID in the login for User 0. Note that if you do supply a user ID in the login, it must match the user ID of the owner of the address space; otherwise, the login fails. </li><br />
<li>When the IFSTRT call processes the login parameter, do not code the password in the host language program. Model 204 interprets a password that is passed in the IFSTRT call as an invalid command. </li><br />
</ul><br />
<br />
==Completion return code (RETCODE)==<br />
<p><br />
If the IFSTRT call is unsuccessful, Model 204 returns an error code for either of the following error conditions: </p><br />
<table><br />
<tr class="head"><br />
<th>Code</th><br />
<th>Error condition</th><br />
</tr><br />
<tr><br />
<td>4</td><br />
<td>No IFSTRT thread was started; do not attempt to issue any other HLI calls. The HLI program code should check the return code from IFSTRT and continue processing only if the call was successful; for a return code of 4, either reissue IFSTRT until it is successful or stop job processing and give an error message.</td><br />
</tr><br />
<tr><br />
<td>80</td><br />
<td>No current thread. (Action: Call IFSTRT.)</td><br />
</tr><br />
<tr><br />
<td>90</td><br />
<td>An illegal IFSTRT call was made when a thread already exists.</td><br />
</tr><br />
</table><br />
<br />
==Coding example (PL/1 Optimizer)==<br />
<p class="code">.<br />
.<br />
.<br />
DCL NERR FIXED BIN (31) INIT (0);<br />
DCL PARM CHAR (80) INIT('SYSOPT=144,LIBUFF=500,LOBUFF=500;');<br />
DCL IFSTRT ENTRY(FIXED BIN(31), FIXED BIN(31),CHAR(*),CHAR(*));<br />
.<br />
.<br />
.<br />
CALL IFSTRT (NERR,3,PARM,'PAGESZ=6184,SPCORE=5000;');<br />
.<br />
.<br />
.</p><br />
<br />
[[Category: HLI functions]]</div>ELowell