IFCALL (HLI function)
The conventions used on this page are described in Function call notation conventions.
Summary
- Description
- The IFCALL call (CALL) issues a call to a Host Language Interface function by number.
- Thread type
- multiple cursor IFSTRT, single cursor IFSTRT
- IFCALL function number
- Not applicable
Syntax
IFCALL(FUNC_NO,RETCODE,PARM_LIST)
- Compile-only form
- Not available
- Execute-only form
- Not available
Specify the parameters in the syntax order shown above.
Parameter | Description |
---|---|
FUNC_NO | [I,i,r] The function number is the required first parameter (input) that specifies the preassigned number of a particular HLI call to be run. Specify the function number as an integer value using one of the values listed in Host Language Interface function numbers. You can specify one number per call. |
RETCODE | [O,i,r] The Model 204 return code is a required output parameter. Model 204 returns a completion code for the call whose function number is specified. The code is a binary integer value. |
PARM_LIST | [I,c,r] The parameter list is a required input parameter that specifies the parameter(s) required by the call (excluding return code) whose function number is specified. Specify a character string using the following format:
parm1 [,parm2...]; See the parameter description, excluding the return code, for the call whose number is specified. |
Usage notes
The IFCALL call is not valid on an IFAM1 type of IFSTRT thread, or on an IFDIAL thread. The form and action of the IFCALL call are no different on a multiple cursor or single cursor IFSTRT thread.
You can use IFCALL to call by number any Host Language Interface call that is assigned a number in the following table. Note that IFCALL does not have its own function number. There are also no function numbers for IFSTRT (in IFAM1) and IFLOG.
Function numbers are only available for use with IFCALL. IFCALL provides an alternative for coding calls where the host language limits the name variable length.
Number-call name | Number-call name | Number-call name |
---|---|---|
0 - reserved | 47 - IFFINDE | IFFDE | 94 - reserved |
1 - IFSTRT (in IFAM2 and IFAM4) | 48 - IFGETC | 95 - IFOCUR |
2 - IFSTHRD | IFSTRD | 49 - IFGETE | 96 - IFCSA |
3 - IFFNSH | 50 - IFGETXE | IFGTXE | 97 - IFABXIT |
4 - IFSTRTN | IFSTRN | 51 - IFMOREC | IFMREC | 98 - IFFTCH |
5 - reserved | 52 - IFMOREE | IFMREE | 99 - IFFTCHC | IFFCHC |
6 - IFDIAL | 53 - IFMORXE | IFMRXE | 100 - IFFTCHE | IFFCHE |
7 - IFDIALN | IFDILN | 54 - IFPUTC | 101 - reserved |
8 - IFHNGUP | IFHNGP | 55 - IFPUTE | 102 - reserved |
9 - IFREAD | 56 - IFFNDX | IFFD | 103 - IFRELR |
10 - IFWRITE | IFWRIT | 57 - IFFNDXC | IFFDXC | 104 - IFRELA |
11 - IFOPEN | 58 - IFFNDXE | IFFDXE | 105 - IFCMTR |
12 - IFCLOSE | IFCLOS | 59 - IFRFLD | 106 - IFOCURC | IFOCRC |
13 - IFFIND | IFFD | 60 - IFDISP | 107 - IFOCURE | IFOCRE |
14 - IFCOUNT | IFCNT | 61 - IFFLS | 108 - IFCLST |
15 - IFGET | 62 - IFDELF | 109 - IFPROLS | IFPRLS |
16 - IFMORE | 63 - IFNFLD | 110 - IFRRFLS | IFRFLS |
17 - IFLIST | 64 - IFUTBL | 111 - reserved |
18 - IFPUT | 65 - IFCTO | 112 - IFSTOR |
19 - IFDREC | 66 - IFCTOC | 113 - IFSTRC |
20 - IFBREC | 67 - IFCTOE | 114 - IFSTRE |
21 - IFDSET | 68 - IFSORT | 115 - IFUPDT |
22 - IFFILE | 69 - IFSRTC | 116 - IFUPDTC | IFUPDC |
23 - IFINIT | 70 - IFSRTE | 117 - IFUPDTE | IFUPDE |
24 - IFDFLD | 71 - IFBOUT | 118 - IFFRN |
25 - IFEPRM | 72 - IFCMMT | 119 - IFFRNC |
26 - IFSPRM | 73 - IFDALL | 120 - IFFRNE |
27 - IFRPRM | 74 - IFFDV | 121 - IFRNUM |
28 - IFERR | 75 - IFFDVC | 122 - IFOCC |
29 - IFGERR | 76 - IFFDVE | 123 - IFOCCC |
30 - IFCHKPT | IFCHKP | 77 - IFGETV | 124 - IFOCCE |
31 - reserved | 78 - IFGTVC | 125 - IFCCUR |
32 - IFDVAL | 79 - IFGTVE | 126 - IFFAC |
33 - IFPROL | 80 - IFSRTV | 127 - IFFACC |
34 - IFRRFL | 81 - IFSTVC | 128 - IFFACE |
35 - IFOPENX | IFOPNX | 82 - IFSTVE | 129 - reserved |
36 - IFGETX | 83 - IFSKEY | 130 - reserved |
37 - IFMOREX | IFMREX | 84 - IFSKYC | 131 - reserved |
38 - IFDEQ | 85 - IFSKYE | 132 - reserved |
39 - IFENQ | 86 - IFSETUP | IFSETP | 133 - reserved |
40 - IFENQL | 87 - IFFWOL | IFFWO | 134 - reserved |
41 - IFDEQL | 88 - IFFWOLC | IFFWOC | 135 - reserved |
42 - IFDTHRD | IFDTRD | 89 - IFFWOLE | IFFWOE | 136 - reserved |
43 - IFATTN | 90 - reserved | 137 - reserved |
44 - IFPOINT | IFPNT | 91 - reserved | 138 - IFERLC |
45 - IFFLUSH | IFFLSH | 92 - reserved | 139 - IFEFCC |
46 - IFFINDC | IFFDC | 93 - reserved |
Coding example (COBOL)
WORKING-STORAGE SECTION. 01 ARGS-FOR-CALL. 05 FUNC-NUM PIC 9(5) VALUE 14. 05 RETCODE PIC 9(5) COMP SYNC. 05 COUNT PIC 9(5). . . . PROCEDURE DIVISION. . . . CALL "IFCALL" USING FUNC-NUM, RETCODE, COUNT.
In this example, IFCALL calls function number 14, IFCOUNT, which requires a single parameter for the output parameter, called COUNT.