ADDRESS TSO is the default when a REXX exec is executed from ISPF or TSO  It 
usually is not needed.

TSOEXEC adds additional overhead in some cases (not all). In addition, it is a 
command (not a REXX environment such as ADDRESS TSO).

"LISTA ST" will work fine without ADDRESS TSO is omitted. Did you actually try 
it? I've used it for years and never coded ADDRESS TSO in any REXX except to 
switch back after ADDRESSing another environment.

Using ADDRESS XXXX changes to environment XXXX. This is why you coding ADDRESS 
ISREDIT allows you to use the edit commands without prefixing them with ISREDIT 
OR ADDRESS ISREDIT.

As for parsing in your panel, why was it necessary? What error occurred that 
makes it necessary?

If you are having problems with LIBDEF's being freed, then you can consider 
using different APPLID's because ISPF libdef's are associated with the APPLID.

Jon Perryman.
 



>________________________________
> From: CM Poncelet <ponce...@bcs.org.uk>
>
>
>I do not know what error would have occured if I had used 'ISPF option 
>6', but I suspect none - because "TSOEXEC LISTA ST" (in quotes) would 
>still be valid regardless of whether the "TSOEXEC" was required or not 
>(e.g. if it was implicit in TSO/E). The error would have occurred if I 
>had executed LISTA ST (without a preceding ADDRESS TSO) in REXX in an 
>ISPF environment, and I guess the error would then have been something 
>like 'unrecognized command'. But the same would be true for ISREDIT in 
>REXX. You can either code ADDRESS ISREDIT followed by the edit commands 
>e.g. FIND <string> (without ISREDIT or quotes), or not code ADDRESS 
>ISREDIT but code "ISREDIT <edit command etc.>" (in quotes) for each edit 
>command, as in e.g. "ISREDIT FIND <string>" etc.
>
>All my panel did was parse anything on the command line (e.g. %ABCXYZ 25 
>MNO 2) and then return the 'translated' results to my Clist, which then 
>issued the e.g. ISPEXEC SELECT CMD(%ABCXYZ 25 MNO 2) NEWAPPL PASSLIB. It 
>could also have been invoked directly as TSO %ABCXYZ 25 MNO 2, or (from 
>option 6) as %ABCXYZ 25 MNO 2. The panel itself did not play any active 
>role besides parsing whatever was on the command line.
>
>From the TSO READY prompt I invoked REXX to extract the DSNs from my 
>TSO PROC's DDNAMEs, then free its DDNAMEs and reallocate them with their 
>original DSNs but with my own datasets concatenated ahead. I issued a 
>TSOLIB ACT DATASET('<whatever DSN>') if necessary. My REXX then called 
>my 'dialog' Clist without displaying panel ISR@PRIM. I did not use 
>LIBDEFs, as the final LIBDEF <DDNAME> freed not only its own DSNs but 
>any other DYNALLOC'd DSNs on <DDNAME> too if PASSLIB was not specified, 
>and I did not want that to happen.
>
>There are different ways of achieving the same result. E.g. LISTDSI 
>("<DDNAME> FILE") can be used to get DSNs from DDNAMEs instead of using 
>"LISTA ST", and e.g. "IEBCOPY" can be coded on its own instead of 
>ISPEXEC SELECT PGM(IEBCOPY) or CALL 'SYS1.LPALIB(IEBCOPY)' etc. So if I 
>had already written something in the 1980's and it still worked, I used it.
>

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN

Reply via email to