(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

Reply via email to