Joined: 23 Mar 2007 Posts: 149 Location: Ottawa Canada
The version I have here looks very much like the one provided by SuperK. Our version also includes a call to IKJTSOEV to create a TSO environment before the actual call to REXX happens.
If your REXX program needs to use TSO services I'm pretty sure you need the call to IKJTSOEV. SuperK - correct me if I'm wrong - not 100% sure on this...
My version also differs in another way. When I wrote this thing I had trouble accessing return parameters that REXX passes back to COBOL.
Rexx programs can optionally return data to the calling COBOL program. I was unable to make this work so I settled on the following ugly workaround. If the REXX program wants to pass data back to COBOL - it needs to do so by pushing something onto the program stack and not by using the standard way: RETURN something. Thus, my COBOL utility also calls IRXSTK to retrieve the data from the stack.
Joined: 26 Apr 2004 Posts: 4648 Location: Raleigh, NC, USA
This IBM site titled Calling REXX from COBOL contains a link to a downloadable document that contains two examples of calling REXX from COBOL - one that uses IRXJCL and one that uses IRXEXEC, and describes which one to use for which conditions.