executing natural pgm in Batch mode, suse linux

I have a bash script I am attempting to run for natbatch:
Natural 6.2.2

export BATCHWRKDIR=/usr/sag/Batch
natural BATCHMODE CMSYNIN=$BATCHWRKDIR/cmd.txt CMOBJIN=$BATCHWRKDIR/cmd.txt
CMPRINT="$BATCHWRKDIR/Natbatch_output_date +"%Y%m%d_%H%M%S".rep"
NATLOG=ALL

cmd.txt=LOGON RBDEVL,xxxxxx,xxxxxx
EXECUTE RB9201B
FIN
RB9201B reads an Adabas file, sorts some records, prints some stuff

I have CMPRINT in NATPARM set to lpt1 and Auto=off
So my output goes to lpt1, not sure why it doesnt go to 'Natbatch_output Etc… anyway, output in lpt1 says:
^LNAT0818 User ID is missing or this terminal is not defined.

Could use some help, again, examples are welcome,
Sag said make sure NATPARM AUTO = OFF, and it is.
Thanks

if AUTO=OFF and you don’t have a LOGON in the stack, Natural Security generates a LOGON command for you. Thus, the first thing in the input has to be the input to the LOGON command, not a LOGON command. Just remove the word LOGON from your cmd.txt (or put the whole LOGON command on the STACK).

Thank you Douglas, I see you’re only about 2 hours north of my location in Merced. Ca . After taking the LOGON out, I received an error regarding a non-existing error program for that Library (which will eventually exist, but apparently doesnt currently) I removed the non-existing error pgm,
Now I receive an error 82 referencing Object ‘Menu’.
I don’t have ‘Menu’ in the Startup for SYSSEC, but it is set in my NATPARM in STACK. The reason for it being in the NATPARM is so when I key ‘natural’ to start up natural from command prompt, it will start NATURAL, if I leave STACK blank in NATPARM, it just hangs, so Do you have a suggestion?
How can I start Natural from command prompt, without having ‘Menu’ set in NATPARM, or is there another solution which I can put in my Natbatch script which will avoid the error 82?
Also I recieve error 1586, Unable to submit print job… but I think I have the define printer setup incorrectly, have to check that.

NAT0082 Invalid command, or Object MENU does not exist in library.
NEXT EXECUTE RB9201B
^L 0000 NAT1586 Unable to submit print job.
NEXT FIN

Oh boy what fun were having with Linux
Again, thanks Douglas
John

Setup separate parameters for on-line and batch. Leave STACK blank in your batch parms.

If you call your batch parameter set “NATBAT”, then, in your batch script, add

PARM=NATBAT

to the NATURAL invocation.

Thanks Ralph,
I wasn’t aware that I needed to or could setup different parms for Batch vs Online. So I checked in the docs, found where I can set profile parms on the fly, or in my script, correct? I will try and set the Startup to blank in my script. Got any examples?
Thanks again
John

Ok, I have a separate Natparm setup for batch, and in Device assignments I have LPT1, LPT2, LPT3, LPT4 for LOGICAL DEVICES,
CLOSE MODE=80, LINE SIZE=80, PAGE SIZE=66, MAXPAGE=32767,
For the PHYSICAL assignment I have also LPT1, LPT2, LPT3, LPT4,
So, I execute a pgm in Natural that writes like this:
define printer (2)
WRITE (2) ‘SYSTEMS PRINTER’
I receive an error 1586.
So I am not quite printing yet,
What am I missing??
This shell command works, but not the write command.
call “shcmd” “lp -d systems /usr/sag/PrintJobs/LPT2.rpt”