On Thu, 6 Aug 2020, at 23:40, Steely.Mark wrote:

> //SYSTSIN   DD *
> PROFILE PREFIX(xxxxxx)
> ISPSTART CMD(%EDITREX1 XXX0111.DATA(DATAXX) - EICUPDT PARM(1))

So the command being issued once ispf is up is

%EDITREX1 XXX0111.DATA(DATAXX) - EICUPDT PARM(1)


> Here is EDITREX1:
> PARSE ARG filename macro1 macro2

so, filename will be   XXX0111.DATA(DATAXX)
     macro1  will be    - 
     macro2  will be    EICUPDT PARM(1)

And it will not work.

Either you need to change the parse statement to take account of the 
"-" in the incoming argument string, or you need to leave it out of the
arguments.

Either way you should do some basic sanity checking of the values of 
filename, macro1 and macro2   before you use them.  



> ADDRESS ISPEXEC "EDIT DATASET('"filename"') MACRO("macro1") "macro2

> I added macro2 to accept the parm value.
> This is the results:
> 
>        >O>   "EDIT DATASET('XXX0111.DATA(DATAXX)') MACRO(EICUPDT) 
> PARM(1)"         <---    This is the last line that the trace produced

I don't see how it's possible for the code you posted to have produced 
that error.  Why did the "-" in the original ISPSTART command vanish?


-- 
Jeremy Nicoll - my opinions are my own.

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: INFO IBM-MAIN

Reply via email to