zrexx
v1.0.9
Published
Call z/OS PDS REXX scripts from node-js
Downloads
13
Readme
zrexx
Call z/OS REXX scripts that reside in a PDS from node-js with IRXEXEC
Installation
Before installing, download and install IBM Open Enterprise SDK for Node.js 16 or higher. zrexx v1.0.8 or higher is required for Node.js 18 or higher.
Simple to use
Install
npm install zrexx
Use
There are two versions of rexx calls
zrexx.execute is the Synchronous version of the call
Arguments:
- file descriptor to write REXX program output to (e.g. 2 to stderr)
- fully qualified PDS name
- member name of PDS that has the REXX script
- first argument to the rexx program
- second argument to the rexx program etc. (note that to this addon does not create the __argv. stem and all the arguments are space separated, thus arguments with embedded space are not distinguishable with arguments separated by spaces.
- third etc
- ...
zrexx.execute_async is Asynchronous
Arguments:
- file descriptor to write REXX program output to (e.g. 2 to stderr)
- fully qualified PDS name
- member name of PDS that has the REXX script
- first argument to the rexx program
- second argument to the rexx program etc. (note that to this addon does not create the __argv. stem and all the arguments are space separated, thus arguments with embedded space are not distinguishable with arguments separated by spaces.
- third etc.
- ...
[last argument] is the call-back function for asynchronous call.
Example:
const zrexx = require('zrexx');
id = require("os").userInfo().username
dsn = id + ".REXX.TESTPDS"
console.log(zrexx.execute(2,dsn,"HELLO","3","second_rexx_arg","third_rexx_arg"));
zrexx.execute_async(2,dsn,"HELLO","12","second_rexx_arg","third_rexx_arg","fourth_rexx_arg","fifth_rexx_arg",function(err,rc) {
console.log("async call back");
console.log("error",err);
console.log("Rexx call RC",rc);
} );
Test
bash examples/setup_sample.sh to create a sample REXX script in a PDS
node examples/sample.js