IBM SC34-5764-01 Server User Manual


 
Non-REXX Language Interfaces
REXX/CICS makes it possible to transparently convert a REXX process to a non-REXX process. To do
this requires that non-REXX command routines should be able to access REXX variables in the REXX
exec that issued the command to be processed. The routine used to accomplish this is called CICGETV
and must be linkedited with your command routine, and called as is described below.
CICGETV - Call to Get, Set, or Drop a REXX Variable
 CALL CICGETV ,( operands ) 
operands:
varname_addr ,varname_len ,data_addr ,data_len ,function_name
Calls this linkedit stub subroutine from an assembler REXX/CICS command routine, so as to retrieve from,
or set or drop REXX variables in the REXX program that issued the command.
Operands
varname_addr
specifies the address of a character string containing the name of the REXX variable. The variable
name (that this address points to) must be in uppercase.
varname_len
specifies the length of the variable name.
data_addr
specifies the fullword address where the address of variable contents are.
data_len
specifies the length of area pointed to by data_addr (fullword).
function_name
specifies the particular CICGETV function to be performed. There are three choices:
GET retrieves the address and length of a REXX variable.
PUT creates or replaces a REXX variable.
DEL deletes a REXX variable.
Notes
1. Immediately before any call to the CICGETV linkedited routine stub, register 10 must be loaded with
the value of the RXWBADDR field in the passed parms (CICPARMS).
2. If a get request is issued for a variable that does not exist, the value returned is the same as the
variable name.
3. CICGETV uses a standard save area convention with R13 pointing to an 18 fullword length area. R1
points to a standard parameter list. R14 contains the return address. R15, upon entry to CICGETV,
returns CICGETV's entry point. Upon return, R15 contains the return code.
4. The CICGETV module is located in the REXX/CICS distribution library.
5. A return code of zero is reflected to indicate the success of the operation, or a decimal 99 indicating an
internal error (such as a storage limit exceeded situation).
Command Definition
284
CICS TS for VSE/ESA: REXX Guide