Previous Topic: CALC()Next Topic: CASE()


CALLX()

This function executes an IMOD as a subroutine at another GoalNet node.

Syntax

result = CALLX([node],[ssid],imod,{NONE|PASS},[args])

Parameters

result

Value that the last-executed REXX RETURN or EXIT instruction in the called routine (or error text) specifies.

node

Name of the GoalNet node where the IMOD is executed. The current node is assumed as the default.

ssid

Subsystem ID that identifies the ISERVE that is to execute the IMOD.

If ssid is specified without node, the request is routed to the appropriate ISERVE on the same z/OS system. If node is also specified, the request is first routed to the requested GoalNet node and then sent to the appropriate ISERVE on that z/OS system.

imod

Name of the IMOD that is executed as an external routine. This argument is required.

NONE

Indicates that no stack information is passed to the called routine. This is the default. Any returned stack data is appended to the current stack contents. Select this option whenever records exist on the current stack and the called IMOD is not going to process them.

PASS

Passes the contents of the current stack (up to the NEWSTACK marker) to the called routine. When the information is passed, it is deleted from the stack for the caller. Upon return, any records that are left on the stack by the called IMOD are returned to the caller. These records become the new stack contents.

args

String that is passed to the called routine as an argument string.

Usage Notes

Return Codes

101 - 105

ARG n MISSING OR INVALID

121

REQUESTED NODE NOT DEFINED

122

REQUESTED NODE NOT ACTIVE

123

REQUESTED NODE IS DOWN

124

REQUESTED NODE IS STOPPED

125

STATUS OF REQUESTED NODE IS INDETERMINATE

128

UNABLE TO ESTABLISH CONVERSATION WITH NODE

129

NODE LOST BEFORE REMOTE IMOD SCHEDULED

131

NODE LOST AFTER REMOTE IMOD SCHEDULED

133

HALT/FAILURE/ERROR/SYNTAX AT line

134

IMOD NOT FOUND

135

IMOD NOT AVAILABLE

136

IMOD NOT CALLABLE

138

NO CONNECTION AVAILABLE

150

One of these messages is returned:

GSS COMMUNICATION FAILURE return reason

IMOD was canceled during execution.

IMOD was not found.

IMOD was found but was deactivated.

IMOD cannot be called from the current GSS environment.

IMOD could not be executed.

ISERVE address space ABENDED during IMOD processing

IMOD Recovery has failed.

Syntax error in IMOD recovery request

Invalid plist, args not in valid storage

Requested GSS service not available

Invalid GSS Plist, invalid storage subpool

JESCT has invalid format.

SSCVT has invalid format.

Requested GSS service is invalid.

Requested ISERVE address space not valid

ISERVE SUBCOM area not found

GSS SSCVT not initialized

GSS Address Space is not active.

Requested ISERVE address space not running

GSS SSCVT not found

GSS PC table not found

Insufficient storage for GSS X-MEM plist

Insufficient storage for XQAREA

PC table entry not found

PC routine not found

Requested GSS service is invalid.

Insufficient storage, service dynamic area

Insufficient storage, external XQAREA

Insufficient storage, PC2 dynamic area

Invalid ASCB address, PC2

Value invalid

Input STACK format is invalid.

Invalid PLIST, "GSST" is missing.

GSSCVT missing from PLIST

GSSTAB1 has invalid format.

PLIST not accessible

Example

callx('node2',,'status',,args)  /* Run "status" IMOD at node2 */