Use the CALLX() function to execute an IMOD as a subroutine at another GoalNet node.
The CALLX() function has this syntax:
result = CALLX([node],[ssid],imod,{NONE|PASS},[args])
The CALLX() function takes these arguments:
Value specified by the last-executed REXX RETURN or EXIT instruction in the called routine (or error text).
Name of the GoalNet node where the IMOD is to be executed. The current node is assumed as the default.
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.
Name of the IMOD that is to be executed as an external routine. This argument is required.
Indicates that no stack information is to be 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 caller's stack. Upon return, any records left on the stack by the called IMOD are returned to the caller. These records become the new stack contents.
String passed to the called routine as an argument string.
The CALLX() function produces these return codes:
ARG n MISSING OR INVALID
REQUESTED NODE NOT DEFINED
REQUESTED NODE NOT ACTIVE
REQUESTED NODE IS DOWN
REQUESTED NODE IS STOPPED
STATUS OF REQUESTED NODE IS INDETERMINATE
UNABLE TO ESTABLISH CONVERSATION WITH NODE
NODE LOST BEFORE REMOTE IMOD SCHEDULED
NODE LOST AFTER REMOTE IMOD SCHEDULED
HALT/FAILURE/ERROR/SYNTAX AT line
IMOD NOT FOUND
IMOD NOT AVAILABLE
IMOD NOT CALLABLE
NO CONNECTION AVAILABLE
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 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 */
| Copyright © 2012 CA. All rights reserved. | Tell Technical Publications how we can improve this information |