Re: TSO REXX -- find absolute generation # from relative?

2019-08-22 Thread Kirk Wolf
Al,

1) LOCATE is better than IGGCSI00.  It handles accurate resolutions
including wrap around for you.  Both just use the catalog.   Neither
require allocation.

2) Dynamic allocation of the DSN=MY.GDG(rel)  DISP=SHR   with either
BPXWDYN or SVC99  has the advantage of allowing you to specify GDGNT (or
not) so that you can control whether or not you have a stable "(0)" for
your job if that is desirable.   For me, I sometimes need to choose, and I
was asking if there is a good way without requiring allocation.


On Wed, Aug 21, 2019 at 4:55 PM Al Ferguson 
wrote:

> Yes, even if there is a NEW Allocation on the GDG (creating a new
> G000V), as it holds an excuse enqueue on the entire GDG (though you
> would be able to allocate the DSN directly, but not relatively).
>
> That is why I started with the CSI (Catalog Search Interface). Possibly
> not 100%, but you can get pretty close with some additional checks & Logic.
> The CSI is not faked out by DSNs that are named like GDGs (assuming you
> specify the correct type, “H") and it is quit quick.
>
>
> ___
>
> Al Ferguson   | mailto:afergu...@neptunescove.org
> Milwaukee, WI USA |   http://www.neptunescove.org
>
> Dulcius ex Asperis
>
> > On 21 August 2019, at 15:47, Paul Gilmartin <
> 000433f07816-dmarc-requ...@listserv.ua.edu> wrote:
> >
> > On Wed, 21 Aug 2019 15:17:57 -0500, Al Ferguson wrote:
> >>
> >> My next choice would be BPXWDYN to allocate the relative DSN I am
> looking for and get the INFO. I like this because it works everywhere,
> (MVS, TSO, USS, SystemREXX, ….) and it is part of the Base System. ...
> >>
> > Can this encounter problems because of an ENQ by another job?
> >
> > -- gil
> >
> > --
> > For IBM-MAIN subscribe / signoff / archive access instructions,
> > send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
> >
>
>
> --
> For IBM-MAIN subscribe / signoff / archive access instructions,
> send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
>

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


Re: TSO REXX -- find absolute generation # from relative?

2019-08-21 Thread Al Ferguson
Yes, even if there is a NEW Allocation on the GDG (creating a new G000V), 
as it holds an excuse enqueue on the entire GDG (though you would be able to 
allocate the DSN directly, but not relatively). 

That is why I started with the CSI (Catalog Search Interface). Possibly not 
100%, but you can get pretty close with some additional checks & Logic. The CSI 
is not faked out by DSNs that are named like GDGs (assuming you specify the 
correct type, “H") and it is quit quick.


___

Al Ferguson   | mailto:afergu...@neptunescove.org
Milwaukee, WI USA |   http://www.neptunescove.org

Dulcius ex Asperis

> On 21 August 2019, at 15:47, Paul Gilmartin 
> <000433f07816-dmarc-requ...@listserv.ua.edu> wrote:
> 
> On Wed, 21 Aug 2019 15:17:57 -0500, Al Ferguson wrote:
>> 
>> My next choice would be BPXWDYN to allocate the relative DSN I am looking 
>> for and get the INFO. I like this because it works everywhere, (MVS, TSO, 
>> USS, SystemREXX, ….) and it is part of the Base System. ...
>> 
> Can this encounter problems because of an ENQ by another job?
> 
> -- gil
> 
> --
> For IBM-MAIN subscribe / signoff / archive access instructions,
> send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
> 


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


Re: TSO REXX -- find absolute generation # from relative?

2019-08-21 Thread Paul Gilmartin
On Wed, 21 Aug 2019 15:17:57 -0500, Al Ferguson wrote:
>
>My next choice would be BPXWDYN to allocate the relative DSN I am looking for 
>and get the INFO. I like this because it works everywhere, (MVS, TSO, USS, 
>SystemREXX, ….) and it is part of the Base System. ...
> 
Can this encounter problems because of an ENQ by another job?

-- gil

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


Re: TSO REXX -- find absolute generation # from relative?

2019-08-21 Thread Al Ferguson
The few times I have had it wrap, you can check the highest record returned, it 
will be   (if the -1 is 9998 you are there as well ) and then you can do a 
search from the bottom looking for the “Hole” in the numbering. I have had to 
do it a few times, but it is so infrequent (took our shop 20+ years to start 
wrapping GDGs) that I usually leave the search out, but I still think it is 
faster then calling an external module. Also, the GDGs that wrapped, only had 
this issue for a short while (then you could no longer tell they were wrapped).

My next choice would be BPXWDYN to allocate the relative DSN I am looking for 
and get the INFO. I like this because it works everywhere, (MVS, TSO, USS, 
SystemREXX, ….) and it is part of the Base System. Getting “extensions” out 
into the system sometimes is the most difficult option. As consultant, I have 
had situations where this was turned down automatically, as they did not want 
to verify the harmlessness of the program and they did not want to support the 
code. Yes, there is no difference between the what the REXX could do vs an 
non-AC(1) program in a non-APF authorized location and they had to support the 
REXX code anyway … sometimes you cannot win that argument.


___

Al Ferguson   | mailto:fergu...@neptunescove.org
Milwaukee, WI USA |   http://www.neptunescove.org

Dulcius ex Asperis

> On 21 August 2019, at 14:55, Al Ferguson  wrote:
> 
> Another option would be to use the Catalog Search Interface (CSI). I have an 
> example in CBTTape.org  File #960 (the DSNLIST REXX). If 
> you are going for just the G00V000s, then the value of the just subtract the 
> Relative DSN from the number of records returned take that record. For 
> example if you get 32 records returned, and you want the “-1”th relative DSN, 
> then the (32-1) or 31st record will have you full DSN.
> 
> This does no allocations and just returns values from the Catalog, about as 
> efficient as you are going to get. No need to load the RXLOCATE Module, 
> initialize LE, and return the value, as the CSI is always available and 
> running.
> 
> 
> ___
> 
> Al Ferguson   | mailto:afergu...@neptunescove.org 
> 
> Milwaukee, WI USA |   http://www.neptunescove.org
> 
> Dulcius ex Asperis
> 
>> On 21 August 2019, at 13:19, Kirk Wolf > > wrote:
>> 
>> Using LOCATE/CAMLST seems better than using SVC99/BPXWDYN to resolve
>> relative->absolute since it doesn't require allocation of the data set,
>> which might fail.
>> 
>> One question that I have is (I assume) that LOCATE/CAMLST will always use
>> the latest generations ("GDGNT"), so that if what you want is a stable
>> "current" generation then it won't do the job.   With SVC99/BPXWDYN, you
>> can set or not set the "GDGNT" flag.
>> 
>> Does anyone know how to resolve relative->absolute without allocation
>> without "GDGNT" ?
>> 
>> 
>> On Sun, Jul 28, 2019 at 4:01 PM Dan D > > wrote:
>> 
>>> Sam just updated my CBT file today (File 452 in the Updates).
>>> 
>>> I had a tool called RXLOCATE that simply does a CAMLST LOCATE for a dsname
>>> in LOCDSN variable.
>>> 
>>> /*rexx*/
>>> LOCDSN = 'userid.GDG(-1)' */
>>> address LINK "RXLOCATE"
>>> say LOCDSN 'RC=' rc
>>> Exit
>>> 
>>> After the LINK to RXLOCATE the LOCDSN variable will have the absolute name
>>> or true name.
>>> 
>>> Dan
>>> 
>>> --
>>> For IBM-MAIN subscribe / signoff / archive access instructions,
>>> send email to lists...@listserv.ua.edu  
>>> with the message: INFO IBM-MAIN
>>> 
>> 
>> --
>> For IBM-MAIN subscribe / signoff / archive access instructions,
>> send email to lists...@listserv.ua.edu  
>> with the message: INFO IBM-MAIN
>> 
> 
> 
> 
> ___
> 
> Al Ferguson   | mailto:afergu...@neptunescove.org
> Milwaukee, WI USA |   http://www.neptunescove.org
> 
> Dulcius ex Asperis
> 
> 
> --
> For IBM-MAIN subscribe / signoff / archive access instructions,
> send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
> 


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


Re: TSO REXX -- find absolute generation # from relative?

2019-08-21 Thread Dan D
That doesn't always work Al.
When the GDG has wrapped the calculation gets messed up.
Best to let Catalog Management determine the absolute name for a given relative.

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


Re: TSO REXX -- find absolute generation # from relative?

2019-08-21 Thread Al Ferguson
Another option would be to use the Catalog Search Interface (CSI). I have an 
example in CBTTape.org  File #960 (the DSNLIST REXX). If 
you are going for just the G00V000s, then the value of the just subtract the 
Relative DSN from the number of records returned take that record. For example 
if you get 32 records returned, and you want the “-1”th relative DSN, then the 
(32-1) or 31st record will have you full DSN.

This does no allocations and just returns values from the Catalog, about as 
efficient as you are going to get. No need to load the RXLOCATE Module, 
initialize LE, and return the value, as the CSI is always available and running.

 
___

Al Ferguson   | mailto:afergu...@neptunescove.org 

Milwaukee, WI USA |   http://www.neptunescove.org

Dulcius ex Asperis

> On 21 August 2019, at 13:19, Kirk Wolf  > wrote:
> 
> Using LOCATE/CAMLST seems better than using SVC99/BPXWDYN to resolve
> relative->absolute since it doesn't require allocation of the data set,
> which might fail.
> 
> One question that I have is (I assume) that LOCATE/CAMLST will always use
> the latest generations ("GDGNT"), so that if what you want is a stable
> "current" generation then it won't do the job.   With SVC99/BPXWDYN, you
> can set or not set the "GDGNT" flag.
> 
> Does anyone know how to resolve relative->absolute without allocation
> without "GDGNT" ?
> 
> 
> On Sun, Jul 28, 2019 at 4:01 PM Dan D  > wrote:
> 
>> Sam just updated my CBT file today (File 452 in the Updates).
>> 
>> I had a tool called RXLOCATE that simply does a CAMLST LOCATE for a dsname
>> in LOCDSN variable.
>> 
>> /*rexx*/
>> LOCDSN = 'userid.GDG(-1)' */
>> address LINK "RXLOCATE"
>> say LOCDSN 'RC=' rc
>> Exit
>> 
>> After the LINK to RXLOCATE the LOCDSN variable will have the absolute name
>> or true name.
>> 
>> Dan
>> 
>> --
>> For IBM-MAIN subscribe / signoff / archive access instructions,
>> send email to lists...@listserv.ua.edu  
>> with the message: INFO IBM-MAIN
>> 
> 
> --
> For IBM-MAIN subscribe / signoff / archive access instructions,
> send email to lists...@listserv.ua.edu  with 
> the message: INFO IBM-MAIN
> 



___

Al Ferguson   | mailto:afergu...@neptunescove.org
Milwaukee, WI USA |   http://www.neptunescove.org

Dulcius ex Asperis


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


Re: TSO REXX -- find absolute generation # from relative?

2019-08-21 Thread Kirk Wolf
Using LOCATE/CAMLST seems better than using SVC99/BPXWDYN to resolve
relative->absolute since it doesn't require allocation of the data set,
which might fail.

One question that I have is (I assume) that LOCATE/CAMLST will always use
the latest generations ("GDGNT"), so that if what you want is a stable
"current" generation then it won't do the job.   With SVC99/BPXWDYN, you
can set or not set the "GDGNT" flag.

Does anyone know how to resolve relative->absolute without allocation
without "GDGNT" ?


On Sun, Jul 28, 2019 at 4:01 PM Dan D  wrote:

> Sam just updated my CBT file today (File 452 in the Updates).
>
> I had a tool called RXLOCATE that simply does a CAMLST LOCATE for a dsname
> in LOCDSN variable.
>
> /*rexx*/
> LOCDSN = 'userid.GDG(-1)' */
> address LINK "RXLOCATE"
> say LOCDSN 'RC=' rc
> Exit
>
> After the LINK to RXLOCATE the LOCDSN variable will have the absolute name
> or true name.
>
> Dan
>
> --
> For IBM-MAIN subscribe / signoff / archive access instructions,
> send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
>

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


Re: TSO REXX -- find absolute generation # from relative?

2019-07-28 Thread Dan D
Sam just updated my CBT file today (File 452 in the Updates).

I had a tool called RXLOCATE that simply does a CAMLST LOCATE for a dsname in 
LOCDSN variable.

/*rexx*/ 
LOCDSN = 'userid.GDG(-1)' */  
address LINK "RXLOCATE"  
say LOCDSN 'RC=' rc  
Exit

After the LINK to RXLOCATE the LOCDSN variable will have the absolute name or 
true name.

Dan

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


Re: TSO REXX -- find absolute generation # from relative?

2019-07-28 Thread Kirk Wolf
Gil,
Isn't just a BPXWDYN('ALLOC ... DISP(SHR) RTDSN(absdsn) RTDDN(ddn)')
enough?  I don't think that INFO is required, although it doesn't matter
that much.

BTW: "GDGNT" is probably an option that many will want.

Kirk Wolf
Dovetailed Technologies
http://dovetail.com


On Thu, Jul 25, 2019 at 3:58 PM Paul Gilmartin <
000433f07816-dmarc-requ...@listserv.ua.edu> wrote:

> On Thu, 25 Jul 2019 14:47:13 -0500, John McKown wrote:
>
> >I just don't see any _simple_ way to do this. I need to convert the
> >gdgbase(0) into gdgbase.GVnn absolute. Believe it or not, I have a
> >product which creates a number of PDS libraries (not PDSE) which are GDG.
> I
> >want to generate some JCL which is the equivalent of:
> >
> >//SYSUT1 DD DISP=SHR,DSN=GDGBASE(0)(MEMBER)
> >
> >Which is a JCL error.
> >
> What does BPXWDYN( 'ALLOC ...' )
> Followed by BPXWDYN( 'INFO ...' )
> tell you?
>
> (Beware of ENQ.)
>
> -- gil
>
> --
> For IBM-MAIN subscribe / signoff / archive access instructions,
> send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
>

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


Re: TSO REXX -- find absolute generation # from relative?

2019-07-26 Thread Lionel B Dyck
Sounds like another good RFE - go for it.

I think getting the current LISTDSI updated/enhanced will probably be easier 
than that major enhancement but I could be wrong.


Lionel B. Dyck <
Website: http://www.lbdsoftware.com

"Worry more about your character than your reputation.  Character is what you 
are, reputation merely what others think you are." - John Wooden

-Original Message-
From: IBM Mainframe Discussion List  On Behalf Of 
Paul Gilmartin
Sent: Friday, July 26, 2019 1:56 PM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Re: TSO REXX -- find absolute generation # from relative?

On Fri, 26 Jul 2019 12:37:26 -0500, Lionel B Dyck wrote:

>I just submitted this RFE this morning that will address this issue (if/when):
>
>https://www.ibm.com/developerworks/rfe/execute?use_case=viewRfe_ID=1
>34932
>
>Note that there is another RFE for a LISTDSI enhancement for which the 
>developers asked for more input so that implies they may be open to 
>updating LISTDSI and if the code is open why not do multiple RFE's 
> 
If you're inclined to go that way, among my favorites would be:
o Liberate LISTDSI from TSO so it could be used alike from IRXJCL and OMVS Rexx.
o Support LISTDSI( ... FILE ... ) for uncatalogued data sets, even allocated 
zFS files.
  Of course many results would be "N/A", but some could be fetched from 
TIOT/JFCB.

-- gil

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

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


Re: TSO REXX -- find absolute generation # from relative?

2019-07-26 Thread Paul Gilmartin
On Fri, 26 Jul 2019 12:37:26 -0500, Lionel B Dyck wrote:

>I just submitted this RFE this morning that will address this issue (if/when):
>
>https://www.ibm.com/developerworks/rfe/execute?use_case=viewRfe_ID=134932
>
>Note that there is another RFE for a LISTDSI enhancement for which the 
>developers asked for more input so that implies they may be open to updating 
>LISTDSI and if the code is open why not do multiple RFE's 
> 
If you're inclined to go that way, among my favorites would be:
o Liberate LISTDSI from TSO so it could be used alike from IRXJCL and OMVS Rexx.
o Support LISTDSI( ... FILE ... ) for uncatalogued data sets, even allocated 
zFS files.
  Of course many results would be "N/A", but some could be fetched from 
TIOT/JFCB.

-- gil

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


Re: TSO REXX -- find absolute generation # from relative?

2019-07-26 Thread Lionel B Dyck
I just submitted this RFE this morning that will address this issue (if/when):

https://www.ibm.com/developerworks/rfe/execute?use_case=viewRfe_ID=134932

Note that there is another RFE for a LISTDSI enhancement for which the 
developers asked for more input so that implies they may be open to updating 
LISTDSI and if the code is open why not do multiple RFE's 


Lionel B. Dyck <
Website: http://www.lbdsoftware.com

"Worry more about your character than your reputation.  Character is what you 
are, reputation merely what others think you are." - John Wooden

-Original Message-
From: IBM Mainframe Discussion List  On Behalf Of 
Seymour J Metz
Sent: Friday, July 26, 2019 12:17 PM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Re: TSO REXX -- find absolute generation # from relative?

I know that you don't like CSI, but IMHO that's the best way to go. 
Postprocessing the LISTC output is easy, but will break if IBM changes the 
format.

In the long run, have you considered asking IBM for a CI enhancement to allow 
both generation and member in DSN, or to allow relative generations in LISTDSI?


--
Shmuel (Seymour J.) Metz
http://mason.gmu.edu/~smetz3


From: IBM Mainframe Discussion List  on behalf of 
John McKown 
Sent: Thursday, July 25, 2019 3:47 PM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: TSO REXX -- find absolute generation # from relative?

I just don't see any _simple_ way to do this. I need to convert the
gdgbase(0) into gdgbase.GVnn absolute. Believe it or not, I have a product 
which creates a number of PDS libraries (not PDSE) which are GDG. I want to 
generate some JCL which is the equivalent of:

//SYSUT1 DD DISP=SHR,DSN=GDGBASE(0)(MEMBER)

Which is a JCL error.

--
A sine curve goes off to infinity, or at least the end of the blackboard.
-- Prof. Steiner

Maranatha! <><
John McKown

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

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

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


Re: TSO REXX -- find absolute generation # from relative?

2019-07-26 Thread Seymour J Metz
I know that you don't like CSI, but IMHO that's the best way to go. 
Postprocessing the LISTC output is easy, but will break if IBM changes the 
format.

In the long run, have you considered asking IBM for a CI enhancement to allow 
both generation and member in DSN, or to allow relative generations in LISTDSI?


--
Shmuel (Seymour J.) Metz
http://mason.gmu.edu/~smetz3


From: IBM Mainframe Discussion List  on behalf of 
John McKown 
Sent: Thursday, July 25, 2019 3:47 PM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: TSO REXX -- find absolute generation # from relative?

I just don't see any _simple_ way to do this. I need to convert the
gdgbase(0) into gdgbase.GVnn absolute. Believe it or not, I have a
product which creates a number of PDS libraries (not PDSE) which are GDG. I
want to generate some JCL which is the equivalent of:

//SYSUT1 DD DISP=SHR,DSN=GDGBASE(0)(MEMBER)

Which is a JCL error.

--
A sine curve goes off to infinity, or at least the end of the blackboard.
-- Prof. Steiner

Maranatha! <><
John McKown

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

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


Re: TSO REXX -- find absolute generation # from relative?

2019-07-26 Thread Dale R. Smith
On Thu, 25 Jul 2019 14:47:13 -0500, John McKown  
wrote:

>I just don't see any _simple_ way to do this. I need to convert the
>gdgbase(0) into gdgbase.GVnn absolute. Believe it or not, I have a
>product which creates a number of PDS libraries (not PDSE) which are GDG. I
>want to generate some JCL which is the equivalent of:
>
>//SYSUT1 DD DISP=SHR,DSN=GDGBASE(0)(MEMBER)
>
>Which is a JCL error.
>
>--
>A sine curve goes off to infinity, or at least the end of the blackboard.
>-- Prof. Steiner
>
>Maranatha! <><
>John McKown

John, here is a REXX Function that will do what you want.  It uses LISTCAT and 
is based on another function that I wrote that also retrieves some other 
information on the specified GDG Data Set.  Since you were only interested in 
the Absolute GDG Data Set  Name, I removed the other code and simplified the 
function.  Enjoy!

/*-- GETGDG --*/
/* Get the Absolute Generation for a specified Relative Generation.   */
/* Format:   GETGDG dsn   */
/* Where:dsn - GDG Data Set Name with Relative Generation Number: */
/* (0) (+0) (-n)  */
/*   hlq.dsn1(+0)  hlq.dsn2(-4)  hlq.dsn3(0)  */
/* Returns:  Return Code 0 followed by GDG Data Set Name with the */
/*   Absolute Generation Number:  0 hlq.dsn1.GVnn */
/*   Error Return Code and no DSN if a problem occurs:  n */
/*   Return Code of 2 indicates a missing/invalid DSN.*/
/* Examples: Parse Value GETGDG('HLQ.DSN.GDG(+0)') With src absdsn .  */
/*   If src   \= 0  Then (error processing)   */
/*   If absdsn = '' Then (error processing)   */
/**/
/*   dsn = 'HLQ.BASE.GDG(-2)' */
/*   Parse Value GETGDG(dsn) With src olddsn .*/
/*   If src   \= 0  Then (error processing)   */
/*   If olddsn = '' Then (error processing)   */
/**/
GETGDG:  Procedure  
   Arg dsn .
   If dsn = '' Then Return 2
   If Pos('.',dsn) = 0 Then Return 2
   Parse Var dsn dsn . '(' gen . ')' .  
   If gen = '' Then Return 2   
   cmd = "LISTCAT ENTRIES('"dsn"') GDG ALL"
   Call OutTrap 'REC.' 
   cmd 
   src = rc
   Call OutTrap 'OFF'  
   If src \= 0 Then
  Do   
 If rec.0 > 0 Then Say rec.1   
 Return src
  End  
   If rec.0 = 0 Then Return 8  
   osdsn = ''  
   num = Abs(gen) + 1  
   m = 0   
   Do s = rec.0 to 1 by -1 
  Parse Var rec.s type . '--' value .  
  If type \= 'NONVSAM' Then Iterate s  
  m = m + 1
  If num = m Then  
 Do
osdsn = value  
Leave s
 End 
   End /* Do s = rec.0 to 1 by -1 */ 
   Drop rec. 
   If osdsn = '' Then Return 12  
   Return 0 osdsn

-- 
Dale R. Smith 

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


Re: TSO REXX -- find absolute generation # from relative?

2019-07-26 Thread Juan Escamilla
Try the following:

/* Rexx  - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
/* determine the absolute generation of a GDG*/
/* Execute the rexx passing it the GDG Base and the relative */
/* generation number */
/* generation number */
/* ex ABSOLGDG GDGB(GDG BASE) GEN(0) */
/* Note:  if you don't specify GEN, it will default to 0 */
/* ex ABSOLGDG GDGB(GDG BASE) GEN(0) */
/*   */
Trace "N"
ddn  = "DDN"
gdgb = "SYSGM.CA.OPSMVS.DATASET.BACKUP"
gen  = "0"

parse upper arg 1 'GDGB(' gdgb ')'   ,
1 'GEN(' gen ')',
1  parmstring

parse upper var parmstring parmstring
If Pos('DEBUG',parmstring) > 0 Then trace i

If gdgb = "" then
 do
   say ""
   say "GDG Base Missing, Rerun REXX and Specify GDGBASE(gdg base)"
   exit 16
 end

If gen = "" then
 do
   say ""
   say "GEN not specified, defaulting to relative generation zero"
   gen = 0
 end

rtrc = BPXWDYN("ALLOC FI(DDN) DA('" || gdgb || "("gen")')" ,
   " SHR REUSE  RTDSN(RTDSN) ")

if rtrc = 0 then
 do
   say ""
   say "Return Code from Dynamic Allocation:" rtrc
   say "Absolute Generation Dataset:" RTDSN
 end
else
 do
   say ""
   say "Error in allocating GDG, Dynamic allocation Return Code:" rtrc
 end

exit rtrc

Use the following JCL example:

//* 
//* executes absolgdg rexx to determine the absolute generation
//*
//*  %absolgdg gdgb(SYSGM.CA.OPSMVS.DATASET.BACKUP)
//*  %absolgdg gdgb(SYSGM.CA.OPSMVS.DATASET.BACKUP) gen(-2)
//*
//* 
//JS020EXEC PGM=IKJEFT1B
//SYSEXEC   DD DISP=SHR,DSN=VZWX4J.REXX.EXEC
//SYSTSPRT  DD SYSOUT=(,)
//SYSTSIN   DD *
 %absolgdg gdgb(SYSGM.CA.OPSMVS.DATASET.BACKUP)
 %absolgdg gdgb(SYSGM.CA.OPSMVS.DATASET.BACKUP) gen(-2)
//

Let me know if this helps or if you need changes.

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


Re: TSO REXX -- find absolute generation # from relative?

2019-07-26 Thread Lionel B Dyck
I have REXX code that uses LISTC to find the latest fqdn but that isn't always 
desired even if it is the only way.

I just created an RFE requesting LISTDSI provide support for relative GDG - 
please add your vote  
http://www.ibm.com/developerworks/rfe/execute?use_case=viewRfe_ID=134932



Lionel B. Dyck <
Website: http://www.lbdsoftware.com

"Worry more about your character than your reputation.  Character is what you 
are, reputation merely what others think you are." - John Wooden

-Original Message-
From: IBM Mainframe Discussion List  On Behalf Of 
ITschak Mugzach
Sent: Friday, July 26, 2019 7:55 AM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Re: TSO REXX -- find absolute generation # from relative?

Not sure if possible, but i would give a try to jcl refer back. Step 1 use the 
dd as dummy, but run a rexx to free and allocate the right ddname with a member 
name received from jcl parm.
Step 2 reference the dd, but it is now a different name.

ITschak

בתאריך יום ו׳, 26 ביולי 2019, 15:50, מאת Tom Marchant ‏<
000a2a8c2020-dmarc-requ...@listserv.ua.edu>:

> On Fri, 26 Jul 2019 07:44:51 -0500, John McKown wrote:
>
> >On Thu, Jul 25, 2019 at 4:19 PM Tom Marchant < 
> >000a2a8c2020-dmarc-requ...@listserv.ua.edu> wrote:
> >
> >> How about an IEBCOPY step where you specify GDGBASE(0) on INDD (or 
> >> whatever) and select MEMBER to be unloaded to a temporary data set?
> >>
> >
> >I guess. But, given that I'm on z/OS 1.12, I can't make the member to be
> >select a value on a PROC.
>
> Well, then, an IEBCOPY step to copy the PDS to a temporary PDS,
> then a step to read the member from the temporary PDS.
>
> --
> Tom Marchant
>
> --
> For IBM-MAIN subscribe / signoff / archive access instructions,
> send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
>

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

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


Re: TSO REXX -- find absolute generation # from relative?

2019-07-26 Thread ITschak Mugzach
Not sure if possible, but i would give a try to jcl refer back. Step 1 use
the dd as dummy, but run a rexx to free and allocate the right ddname with
a member name received from jcl parm.
Step 2 reference the dd, but it is now a different name.

ITschak

בתאריך יום ו׳, 26 ביולי 2019, 15:50, מאת Tom Marchant ‏<
000a2a8c2020-dmarc-requ...@listserv.ua.edu>:

> On Fri, 26 Jul 2019 07:44:51 -0500, John McKown wrote:
>
> >On Thu, Jul 25, 2019 at 4:19 PM Tom Marchant <
> >000a2a8c2020-dmarc-requ...@listserv.ua.edu> wrote:
> >
> >> How about an IEBCOPY step where you specify GDGBASE(0) on
> >> INDD (or whatever) and select MEMBER to be unloaded to a
> >> temporary data set?
> >>
> >
> >I guess. But, given that I'm on z/OS 1.12, I can't make the member to be
> >select a value on a PROC.
>
> Well, then, an IEBCOPY step to copy the PDS to a temporary PDS,
> then a step to read the member from the temporary PDS.
>
> --
> Tom Marchant
>
> --
> For IBM-MAIN subscribe / signoff / archive access instructions,
> send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
>

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


Re: TSO REXX -- find absolute generation # from relative?

2019-07-26 Thread Tom Marchant
On Fri, 26 Jul 2019 07:44:51 -0500, John McKown wrote:

>On Thu, Jul 25, 2019 at 4:19 PM Tom Marchant <
>000a2a8c2020-dmarc-requ...@listserv.ua.edu> wrote:
>
>> How about an IEBCOPY step where you specify GDGBASE(0) on
>> INDD (or whatever) and select MEMBER to be unloaded to a
>> temporary data set?
>>
>
>I guess. But, given that I'm on z/OS 1.12, I can't make the member to be
>select a value on a PROC.

Well, then, an IEBCOPY step to copy the PDS to a temporary PDS, 
then a step to read the member from the temporary PDS.

-- 
Tom Marchant

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


Re: TSO REXX -- find absolute generation # from relative?

2019-07-26 Thread John McKown
On Thu, Jul 25, 2019 at 4:19 PM Tom Marchant <
000a2a8c2020-dmarc-requ...@listserv.ua.edu> wrote:

> On Thu, 25 Jul 2019 14:47:13 -0500, John McKown wrote:
>
> >I just don't see any _simple_ way to do this. I need to convert the
> >gdgbase(0) into gdgbase.GVnn absolute. Believe it or not, I have a
> >product which creates a number of PDS libraries (not PDSE) which are GDG.
> I
> >want to generate some JCL which is the equivalent of:
> >
> >//SYSUT1 DD DISP=SHR,DSN=GDGBASE(0)(MEMBER)
> >
> >Which is a JCL error.
>
> I take it since you want (0) that you just want to read the member
> from the latest generation.
>
> How about an IEBCOPY step where you specify GDGBASE(0) on
> INDD (or whatever) and select MEMBER to be unloaded to a
> temporary data set?
>

I guess. But, given that I'm on z/OS 1.12, I can't make the member to be
select a value on a PROC.

I'm giving up on this. I'm just royally P.O.'ed with the vendor anyway
right now.



>
> --
> Tom Marchant
>
>
-- 
A sine curve goes off to infinity, or at least the end of the blackboard.
-- Prof. Steiner

Maranatha! <><
John McKown

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


Re: TSO REXX -- find absolute generation # from relative?

2019-07-25 Thread Tom Marchant
On Thu, 25 Jul 2019 14:47:13 -0500, John McKown wrote:

>I just don't see any _simple_ way to do this. I need to convert the
>gdgbase(0) into gdgbase.GVnn absolute. Believe it or not, I have a
>product which creates a number of PDS libraries (not PDSE) which are GDG. I
>want to generate some JCL which is the equivalent of:
>
>//SYSUT1 DD DISP=SHR,DSN=GDGBASE(0)(MEMBER)
>
>Which is a JCL error.

I take it since you want (0) that you just want to read the member 
from the latest generation.

How about an IEBCOPY step where you specify GDGBASE(0) on 
INDD (or whatever) and select MEMBER to be unloaded to a 
temporary data set?

-- 
Tom Marchant

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


Re: TSO REXX -- find absolute generation # from relative?

2019-07-25 Thread Paul Gilmartin
On Thu, 25 Jul 2019 14:47:13 -0500, John McKown wrote:

>I just don't see any _simple_ way to do this. I need to convert the
>gdgbase(0) into gdgbase.GVnn absolute. Believe it or not, I have a
>product which creates a number of PDS libraries (not PDSE) which are GDG. I
>want to generate some JCL which is the equivalent of:
>
>//SYSUT1 DD DISP=SHR,DSN=GDGBASE(0)(MEMBER)
>
>Which is a JCL error.
> 
What does BPXWDYN( 'ALLOC ...' )
Followed by BPXWDYN( 'INFO ...' )
tell you?

(Beware of ENQ.)

-- gil

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


Re: TSO REXX -- find absolute generation # from relative?

2019-07-25 Thread Steve Beaver
I haven’t used UPDT in years 

Sent from my iPhone

Sorry for the finger checks

On Jul 25, 2019, at 15:34, Sri h Kolusu  wrote:

>> want to generate some JCL which is the equivalent of:
> 
> Try this
> 
> //STEP0100 EXEC PGM=IEBUPDTE,PARM='NEW'
> //SYSPRINT DD SYSOUT=*
> //SYSUT1   DD DUMMY
> //SYSUT2   DD DISP=SHR,DSN=GDGBASE(0)
> //SYSINDD DATA
> ./  ADD NAME=MCKNOWN,LEVEL=00,SOURCE=0,LIST=ALL
> ABC
> DEF
> ./ENDUP
> 
> The outut from this is you will have member named "Mcknown" in your GDGBASE
> (0)
> 
> Thanks,
> Kolusu
> 
> IBM Mainframe Discussion List  wrote on
> 07/25/2019 03:47:13 PM:
> 
>> From: John McKown 
>> To: IBM-MAIN@LISTSERV.UA.EDU
>> Date: 07/25/2019 03:48 PM
>> Subject: [EXTERNAL] TSO REXX -- find absolute generation # from relative?
>> Sent by: IBM Mainframe Discussion List 
>> 
>> I just don't see any _simple_ way to do this. I need to convert the
>> gdgbase(0) into gdgbase.GVnn absolute. Believe it or not, I have a
>> product which creates a number of PDS libraries (not PDSE) which are GDG.
> I
>> want to generate some JCL which is the equivalent of:
>> 
>> //SYSUT1 DD DISP=SHR,DSN=GDGBASE(0)(MEMBER)
>> 
>> Which is a JCL error.
>> 
>> --
>> A sine curve goes off to infinity, or at least the end of the blackboard.
>> -- Prof. Steiner
>> 
>> Maranatha! <><
>> John McKown
>> 
>> --
>> For IBM-MAIN subscribe / signoff / archive access instructions,
>> send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
>> 
> 
> --
> For IBM-MAIN subscribe / signoff / archive access instructions,
> send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN

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


Re: TSO REXX -- find absolute generation # from relative?

2019-07-25 Thread Sri h Kolusu
> want to generate some JCL which is the equivalent of:

Try this

//STEP0100 EXEC PGM=IEBUPDTE,PARM='NEW'
//SYSPRINT DD SYSOUT=*
//SYSUT1   DD DUMMY
//SYSUT2   DD DISP=SHR,DSN=GDGBASE(0)
//SYSINDD DATA
./  ADD NAME=MCKNOWN,LEVEL=00,SOURCE=0,LIST=ALL
ABC
DEF
./ENDUP

The outut from this is you will have member named "Mcknown" in your GDGBASE
(0)

Thanks,
Kolusu

IBM Mainframe Discussion List  wrote on
07/25/2019 03:47:13 PM:

> From: John McKown 
> To: IBM-MAIN@LISTSERV.UA.EDU
> Date: 07/25/2019 03:48 PM
> Subject: [EXTERNAL] TSO REXX -- find absolute generation # from relative?
> Sent by: IBM Mainframe Discussion List 
>
> I just don't see any _simple_ way to do this. I need to convert the
> gdgbase(0) into gdgbase.GVnn absolute. Believe it or not, I have a
> product which creates a number of PDS libraries (not PDSE) which are GDG.
I
> want to generate some JCL which is the equivalent of:
>
> //SYSUT1 DD DISP=SHR,DSN=GDGBASE(0)(MEMBER)
>
> Which is a JCL error.
>
> --
> A sine curve goes off to infinity, or at least the end of the blackboard.
> -- Prof. Steiner
>
> Maranatha! <><
> John McKown
>
> --
> For IBM-MAIN subscribe / signoff / archive access instructions,
> send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
>

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


Re: TSO REXX -- find absolute generation # from relative? [EXTERNAL]

2019-07-25 Thread Horne, Jim - James S
Respectfully, I disagree, especially since you mention REXX.  Using the WORD 
function, parsing is a snap.  If word 1 is NONVSAM, word 3 is the dataset name. 
 I.e.,
If Word(line_read,1) = 'NONVSAM' THEN gdgent = WORD(line_read,3) ;

The last 'gdgent' filled in will be the last GDG.  How does it get simpler?  
It's pretty simple to make that look like your desired function - and without a 
lot of work.

Jim Horne
From: IBM Mainframe Discussion List  On Behalf Of 
John McKown

{sigh} I parsing LISTCAT is a bother. Using IGGCSI00 is not simple, IMO at 
least. I really wish there were a REXX function to do it like:

absolute=RESGDG('basegdg(0)')

where "absolute" would have "basegdg.gv00" in it. So much simpler. Am I am 
a simple person. You really _don't_ want to see the kludge I am cooking up use 
Co:Z and UNIX directories. Which are, for me, a lot easier to use that a 
 PDS.


NOTICE: All information in and attached to the e-mails below may be 
proprietary, confidential, privileged and otherwise protected from improper or 
erroneous disclosure. If you are not the sender's intended recipient, you are 
not authorized to intercept, read, print, retain, copy, forward, or disseminate 
this message. If you have erroneously received this communication, please 
notify the sender immediately by phone (704-758-1000) or by e-mail and destroy 
all copies of this message electronic, paper, or otherwise. By transmitting 
documents via this email: Users, Customers, Suppliers and Vendors collectively 
acknowledge and agree the transmittal of information via email is voluntary, is 
offered as a convenience, and is not a secured method of communication; Not to 
transmit any payment information E.G. credit card, debit card, checking 
account, wire transfer information, passwords, or sensitive and personal 
information E.G. Driver's license, DOB, social security, or any other 
information the user wishes to remain confidential; To transmit only 
non-confidential information such as plans, pictures and drawings and to assume 
all risk and liability for and indemnify Lowe's from any claims, losses or 
damages that may arise from the transmittal of documents or including 
non-confidential information in the body of an email transmittal. Thank you.

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


Re: TSO REXX -- find absolute generation # from relative? [EXTERNAL]

2019-07-25 Thread Feller, Paul
John, I would agree using the catalog interface is not fun.  Also I ran a quick 
test and I was wrong about using the (0) as part of the name.  I had to use 
ABC.XYZ.* to get any information back with the test code I had.  The output 
that came back was a list of all the datasets in the GDG base.

Thanks..

Paul Feller
AGT Mainframe Technical Support


-Original Message-
From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf 
Of Lizette Koehler
Sent: Thursday, July 25, 2019 3:17 PM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Re: TSO REXX -- find absolute generation # from relative? [EXTERNAL]

I have done a LISTC ENT('gdgname') 

Then parsed the output to find the gen0

Take the First entry on the GDG list GDGBASE.Gv00 + GDG limit = close to 
gen0



Lizette


> -Original Message-
> From: IBM Mainframe Discussion List  On 
> Behalf Of John McKown
> Sent: Thursday, July 25, 2019 12:47 PM
> To: IBM-MAIN@LISTSERV.UA.EDU
> Subject: TSO REXX -- find absolute generation # from relative?
> 
> I just don't see any _simple_ way to do this. I need to convert the
> gdgbase(0) into gdgbase.GVnn absolute. Believe it or not, I have a 
> product which creates a number of PDS libraries (not PDSE) which are 
> GDG. I want to generate some JCL which is the equivalent of:
> 
> //SYSUT1 DD DISP=SHR,DSN=GDGBASE(0)(MEMBER)
> 
> Which is a JCL error.
> 
> --
> A sine curve goes off to infinity, or at least the end of the blackboard.
> -- Prof. Steiner
> 
> Maranatha! <><
> John McKown
> 
> --
> For IBM-MAIN subscribe / signoff / archive access instructions, send 
> email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN

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

--
Please note:  This message originated outside your organization. Please use 
caution when opening links or attachments.

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


Re: TSO REXX -- find absolute generation # from relative? [EXTERNAL]

2019-07-25 Thread Cieri, Anthony

I think there is a REALNAME program on the CBT site (file 929). I have 
not used it , but it might be f some help...

Hth
Tony 
 

-Original Message-
From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf 
Of John McKown
Sent: Thursday, July 25, 2019 4:14 PM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Re: TSO REXX -- find absolute generation # from relative? [EXTERNAL]

[[ SEI WARNING *** This email was sent from an external source. Do not open 
attachments or click on links from unknown or suspicious senders. *** ]]


{sigh} I parsing LISTCAT is a bother. Using IGGCSI00 is not simple, IMO at
least. I really wish there were a REXX function to do it like:

absolute=RESGDG('basegdg(0)')

where "absolute" would have "basegdg.gv00" in it. So much simpler. Am I
am a simple person. You really _don't_ want to see the kludge I am cooking
up use Co:Z and UNIX directories. Which are, for me, a lot easier to use
that a  PDS.

On Thu, Jul 25, 2019 at 3:09 PM Feller, Paul 
wrote:

> John, could you try to use the catalog interface (IGGCSI00) and do a
> request for the current generation with something like ABC.XYZ(0)?  I
> would think you would then get back the fully qualified name.
>
> Thanks..
>
> Paul Feller
> AGT Mainframe Technical Support
>
>
> -Original Message-
> From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On
> Behalf Of John McKown
> Sent: Thursday, July 25, 2019 2:47 PM
> To: IBM-MAIN@LISTSERV.UA.EDU
> Subject: TSO REXX -- find absolute generation # from relative? [EXTERNAL]
>
> I just don't see any _simple_ way to do this. I need to convert the
> gdgbase(0) into gdgbase.GVnn absolute. Believe it or not, I have a
> product which creates a number of PDS libraries (not PDSE) which are GDG. I
> want to generate some JCL which is the equivalent of:
>
> //SYSUT1 DD DISP=SHR,DSN=GDGBASE(0)(MEMBER)
>
> Which is a JCL error.
>
> --
> A sine curve goes off to infinity, or at least the end of the blackboard.
> -- Prof. Steiner
>
> Maranatha! <><
> John McKown
>
> --
> For IBM-MAIN subscribe / signoff / archive access instructions, send email
> to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
>
> --
> Please note:  This message originated outside your organization. Please
> use caution when opening links or attachments.
>
> --
> For IBM-MAIN subscribe / signoff / archive access instructions,
> send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
>


-- 
A sine curve goes off to infinity, or at least the end of the blackboard.
-- Prof. Steiner

Maranatha! <><
John McKown

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

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


Re: TSO REXX -- find absolute generation # from relative?

2019-07-25 Thread Lizette Koehler
I have done a LISTC ENT('gdgname') 

Then parsed the output to find the gen0

Take the First entry on the GDG list GDGBASE.Gv00 + GDG limit = close to 
gen0



Lizette


> -Original Message-
> From: IBM Mainframe Discussion List  On Behalf Of
> John McKown
> Sent: Thursday, July 25, 2019 12:47 PM
> To: IBM-MAIN@LISTSERV.UA.EDU
> Subject: TSO REXX -- find absolute generation # from relative?
> 
> I just don't see any _simple_ way to do this. I need to convert the
> gdgbase(0) into gdgbase.GVnn absolute. Believe it or not, I have a
> product which creates a number of PDS libraries (not PDSE) which are GDG. I
> want to generate some JCL which is the equivalent of:
> 
> //SYSUT1 DD DISP=SHR,DSN=GDGBASE(0)(MEMBER)
> 
> Which is a JCL error.
> 
> --
> A sine curve goes off to infinity, or at least the end of the blackboard.
> -- Prof. Steiner
> 
> Maranatha! <><
> John McKown
> 
> --
> For IBM-MAIN subscribe / signoff / archive access instructions, send email to
> lists...@listserv.ua.edu with the message: INFO IBM-MAIN

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


Re: TSO REXX -- find absolute generation # from relative? [EXTERNAL]

2019-07-25 Thread John McKown
{sigh} I parsing LISTCAT is a bother. Using IGGCSI00 is not simple, IMO at
least. I really wish there were a REXX function to do it like:

absolute=RESGDG('basegdg(0)')

where "absolute" would have "basegdg.gv00" in it. So much simpler. Am I
am a simple person. You really _don't_ want to see the kludge I am cooking
up use Co:Z and UNIX directories. Which are, for me, a lot easier to use
that a  PDS.

On Thu, Jul 25, 2019 at 3:09 PM Feller, Paul 
wrote:

> John, could you try to use the catalog interface (IGGCSI00) and do a
> request for the current generation with something like ABC.XYZ(0)?  I
> would think you would then get back the fully qualified name.
>
> Thanks..
>
> Paul Feller
> AGT Mainframe Technical Support
>
>
> -Original Message-
> From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On
> Behalf Of John McKown
> Sent: Thursday, July 25, 2019 2:47 PM
> To: IBM-MAIN@LISTSERV.UA.EDU
> Subject: TSO REXX -- find absolute generation # from relative? [EXTERNAL]
>
> I just don't see any _simple_ way to do this. I need to convert the
> gdgbase(0) into gdgbase.GVnn absolute. Believe it or not, I have a
> product which creates a number of PDS libraries (not PDSE) which are GDG. I
> want to generate some JCL which is the equivalent of:
>
> //SYSUT1 DD DISP=SHR,DSN=GDGBASE(0)(MEMBER)
>
> Which is a JCL error.
>
> --
> A sine curve goes off to infinity, or at least the end of the blackboard.
> -- Prof. Steiner
>
> Maranatha! <><
> John McKown
>
> --
> For IBM-MAIN subscribe / signoff / archive access instructions, send email
> to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
>
> --
> Please note:  This message originated outside your organization. Please
> use caution when opening links or attachments.
>
> --
> For IBM-MAIN subscribe / signoff / archive access instructions,
> send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
>


-- 
A sine curve goes off to infinity, or at least the end of the blackboard.
-- Prof. Steiner

Maranatha! <><
John McKown

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


Re: TSO REXX -- find absolute generation # from relative? [EXTERNAL]

2019-07-25 Thread Feller, Paul
John, could you try to use the catalog interface (IGGCSI00) and do a request 
for the current generation with something like ABC.XYZ(0)?  I would think you 
would then get back the fully qualified name.

Thanks..

Paul Feller
AGT Mainframe Technical Support


-Original Message-
From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf 
Of John McKown
Sent: Thursday, July 25, 2019 2:47 PM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: TSO REXX -- find absolute generation # from relative? [EXTERNAL]

I just don't see any _simple_ way to do this. I need to convert the
gdgbase(0) into gdgbase.GVnn absolute. Believe it or not, I have a product 
which creates a number of PDS libraries (not PDSE) which are GDG. I want to 
generate some JCL which is the equivalent of:

//SYSUT1 DD DISP=SHR,DSN=GDGBASE(0)(MEMBER)

Which is a JCL error.

--
A sine curve goes off to infinity, or at least the end of the blackboard.
-- Prof. Steiner

Maranatha! <><
John McKown

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

--
Please note:  This message originated outside your organization. Please use 
caution when opening links or attachments.

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


Re: [EXTERNAL] TSO REXX -- find absolute generation # from relative?

2019-07-25 Thread Horne, Jim - James S
John,

As long as you want to generate the JCL programmatically, look at using the TSO 
LISTCAT command with the LVL option and processing the output.

Just a thought;
Jim Horne

John McKown wrote:
I just don't see any _simple_ way to do this. I need to convert the
gdgbase(0) into gdgbase.GVnn absolute. Believe it or not, I have a product 
which creates a number of PDS libraries (not PDSE) which are GDG. I want to 
generate some JCL which is the equivalent of:

//SYSUT1 DD DISP=SHR,DSN=GDGBASE(0)(MEMBER)

Which is a JCL error.

NOTICE: All information in and attached to the e-mails below may be 
proprietary, confidential, privileged and otherwise protected from improper or 
erroneous disclosure. If you are not the sender's intended recipient, you are 
not authorized to intercept, read, print, retain, copy, forward, or disseminate 
this message. If you have erroneously received this communication, please 
notify the sender immediately by phone (704-758-1000) or by e-mail and destroy 
all copies of this message electronic, paper, or otherwise. By transmitting 
documents via this email: Users, Customers, Suppliers and Vendors collectively 
acknowledge and agree the transmittal of information via email is voluntary, is 
offered as a convenience, and is not a secured method of communication; Not to 
transmit any payment information E.G. credit card, debit card, checking 
account, wire transfer information, passwords, or sensitive and personal 
information E.G. Driver's license, DOB, social security, or any other 
information the user wishes to remain confidential; To transmit only 
non-confidential information such as plans, pictures and drawings and to assume 
all risk and liability for and indemnify Lowe's from any claims, losses or 
damages that may arise from the transmittal of documents or including 
non-confidential information in the body of an email transmittal. Thank you.

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


TSO REXX -- find absolute generation # from relative?

2019-07-25 Thread John McKown
I just don't see any _simple_ way to do this. I need to convert the
gdgbase(0) into gdgbase.GVnn absolute. Believe it or not, I have a
product which creates a number of PDS libraries (not PDSE) which are GDG. I
want to generate some JCL which is the equivalent of:

//SYSUT1 DD DISP=SHR,DSN=GDGBASE(0)(MEMBER)

Which is a JCL error.

-- 
A sine curve goes off to infinity, or at least the end of the blackboard.
-- Prof. Steiner

Maranatha! <><
John McKown

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