Of course, it is possible to provide PARM=, but you can not access it in Natural programs, but Natural will do it for you.
//STEP EXEC PGM=mybatnat,
// 'STACK=(LOGON mylibrary;myprogram myparms)')
You can provide multiple commands with parameters in stack. Each command (including the parameters) is delimited by input delimiter, the parameters are preceded by blanks.
The advantage over SMSYNIN is:
As it is no inline dataset, you can see the contents in sd.st or any other product that displays the jcl.
OBJIN determines where to read the input data from. OBJIN is set either in the parameter module (PROFILE=) or in the “PARM=(OBJIN=value…)” or in CMPRMIN containing a line "OBJIN=value).
First, INPUT is taken from the stack, provided in the parm line or in the command line of CMSYNIN. If additional inputs are issued or no program parameters are specified, OBJIN is evaluated:
- if OBJIN=Y input is taken from CMOBJIN,
- if OBJIN=N input is taken from CMSYNIN, treating the next line as data instead of command
- if OBJIN=R input is taken from the first available dataset: if CMOBJIN is specified, input is taken from there, else input is taken from CMSYNIN.
If INPUT leads to an end-of-file condition, you will get an error.
So, check your JCL and your parameter module for the absence or presence of the parameter OBJIN, and the dataset CMOBJIN.