Return Codes From IKJCT441 on Entry Code TSVELOC

IKJCT441 always places a return code in register 15. If the caller requests that a list of functions be performed, register 15 holds the first non-zero return code issued by IKJCT441 when processing the individual requests. Further return codes from individual requests do not change the content of register 15. If all individual request are performed successfully, register 15 contains a return code of 0.

If the calling program specifies the RETCODE parameter, IKJCT441 also places the return code in the RETCODE parameter. This allows the calling program to take the appropriate actions on return codes from individual requests.

Table 1. Return codes from IKJCT441 (entry code TSVELOC)
Return code dec(Hex) Meaning
0(0) IKJCT441 successfully updated the parameters for this variable.
4(4) The caller should not rescan the variable. It is an I/O variable containing an & and is not a variable name.
8(8) The variable requires evaluation. IKJCT441 did not update VALUEPTR and VALUELEN. The value of the variable is not relevant.
12(C) The variable is a label. The value of the variable is meaningless.
20(14) There are no more variables.
24(18) The variable is a procedure name. IKJCT441 updated VALUEPTR and VALUELEN, but the value of the variable is meaningless.
40(28) One of the following situations occurred:
  • The caller's parameter list contains an error.
  • The caller of IKJCT441 is not activated via a CLIST or REXX exec.
  • The caller attempted to access a REXX variable pool while another program or REXX exec was accessing the same variable pool.

IKJCT441 did not return values for any of the parameters.

44(2C) The entry code is not valid. IKJCT441 did not return values for any of the parameters.
72(48) The variable returned is a reference variable. IKJCT441 updated VALUEPTR and VALUELEN. VALUEPTR points to the name of the corresponding variable in the calling procedure whose value is referred to by this variable.
88(58)

A variable value is not returned.

The caller is running AMODE24, but the variable requested might be in 31-bit addressable storage. The caller should change to AMODE31 before calling IKJCT441 so that any variables returned are addressable by the caller.

If you are unable to invoke IKJCT441 in AMODE31, you can force variables to be kept in 24-bit addressable storage by having the user set the user PROFILE to VARSTORAGE(LOW) before running the application that creates the variables you are trying to access.