(Before Lizette deflects this to ISPF-L or TSO-REXX:) On 2015-11-05 16:23, Nims,Alva John (Al) wrote: > I think that it is more of a REXX treatment of strings. > > When the REXX instruction: > CMD = "CHANGE ALL SYSDA " IMPLUNIT > Is processed, CMD becomes the full string "CHANGE ALL SYSDA SYSDA" > But in the second invocation, it treats it as two different parameters to > ISREDIT so > Parm #1 is the string "CHANGE ALL SYSDA" and the second is the string > "IMPLUNIT" > I don't think REXX is performing a variable substitution in this case. > > I wonder if it does something differently if you were to use single quotes > around the command: > ' ISREDIT CHANGE ALL SYSDA ' IMPLUNIT > Should make no difference; I believe that in both cases Rexx removes the delimiting quotes; they are not passed to ISREDIT.
> -----Original Message----- > From: Donald Likens > Sent: Thursday, November 05, 2015 5:14 PM > > Can anyone explain why the second try does not work as expected? > > ISREDIT "MACRO" At this point, I would add: trace R /* To see what's happening. */ signal on novalue /* Traps inadvertently undefined symbols. */ > Say "IMPLUNIT" IMPLUNIT > CMD = "CHANGE ALL SYSDA " IMPLUNIT > ISREDIT CMD > Rather: address ISREDIT CMD /* For clarity */ > Results: > IMPLUNIT SYSDA > SYSDA is changed to SYSDA > ... but that's not what I'd expect. > ISREDIT "MACRO" > Say "IMPLUNIT" IMPLUNIT > ISREDIT "CHANGE ALL SYSDA " IMPLUNIT > Likewise: address ISREDIT "CHANGE ALL SYSDA " IMPLUNI /* For clarity */ > Results: > IMPLUNIT SYSDA > SYSDA is changed to IMPLUNIT > But that, the second try, is what I'd expect. -- gil ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [email protected] with the message: INFO IBM-MAIN
