It gets easier if you do not CALL the program but instead you wrapped a
command around it.
I'm guessing you didn't. And since you probably didn't and do not want to
change those existing programs it probably doesn't make sense to retrofit
them now.

So, programmatically, without any disruption, try this:
PGM PARM(&MYPARM)
DCL VAR(&MYPARM) TYPE(*CHAR) LEN(10)
DCL VAR(&WORKVAR) TYPE(*CHAR) LEN(10)
IF (%address(&myparm)=*null) then(do)
chgvar var(&workvar) value(' ')
enddo
else do
CHGVAR VAR(&WORKVAR) VALUE(&MYPARM)
enddo
ENDPGM

Try that in debug; with, and without, a parameter.

Rob Berendt




Return to Archive home page | Return to MIDRANGE.COM home page