As others have said - PDSE member generations are *not* generation data sets. A 
PDS or PDSE can be a GDS but the members are not. PDSE member generations 
provide similar functionality to a GDG in that the current generation has both 
a relative, and absolute, generation of 0. The prior generation has a relative 
generation of -1 and an absolute generation of from 1 to 2,000,000,000 (and 
note that if you reach the limit it does not wrap - at least the doc does not 
indicate it can wrap).

With ISPF prior to z/OS 3.1 you need ISPF library services to access generation 
- here is snippets copied from PDSEGEN (cbttape file 969 or 
github.com/lbdyck/pdsegen):
  
     "LMINIT DATAID(pdsegend) DATASET("pdsedsn")"      
     "LMOPEN DATAID("pdsegend") OPTION(INPUT)"         
     'edit dataid('pdsegend') member('mbr') gen('agen')'
     "LMClose dataid("pdsegend")"       

With z/OS 3.1 ISPF will have improvements to make it easier, still not ideal, 
for generations.

As for the zombie members that happens because both TSO DELETE, and ISPF member 
delete, only delete the base member (generation 0) and leave the generations 
alone. That is why with FileManager, the Review command (cbttape), and with 
PDSEGEN, you may see members with a relative generation of 0 and an absolute 
generation that is non-zero. PDSEGEN has its own delete process that supports 
deleting generations so zombies (or ghost members) will not happen. FileManager 
under 3.15, the workbench, also understands how to correctly handle generations.

Please vote for this IBM Idea (formerly RFE) 
https://ibm-z-hardware-and-operating-systems.ideas.ibm.com/ideas/ZOS-I-1565 - 
currently in a status of 'Future consideration' with 157 votes.

Hope this helps somewhat.


Lionel B. Dyck <><
Website: https://www.lbdsoftware.com
Github: https://github.com/lbdyck

“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 <IBM-MAIN@LISTSERV.UA.EDU> On Behalf Of 
Charles Mills
Sent: Monday, May 29, 2023 4:57 PM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Two related member generation questions

1. Is there any support in JCL or in ISPF for reading member generations? If I 
want to reference or browse a PDSE 2 member generation other than the latest, 
is it possible to do so? Am I just missing the doc somewhere?

2. Is this not an error or at least an illogical statement in the JCL 
reference? Under DSNAME - Cataloged data set name it says

dsname(member)
Specifies the name of the permanent partitioned data set (PDS) or the 
partitioned data set extended (PDSE), and the name of a member within that data 
set. If the member does not exist and DISP=OLD or DISP=SHR is specified, the 
allocation will succeed, but the job will fail when the data set is opened for 
input. If the member does not exist and the data set is opened for output, the 
system will add the member to the data set.

member
1 to 8 alphanumeric or national characters, or a character X'C0'. The first 
character must be alphabetic, national, +, or -. If the first character is + or 
-, the member is a part of a generation data group.

dsname(generation)
Specifies the name of a generation data group (GDG) and the generation number 
(zero or a signed integer) of a generation data set within the GDG.

That member description is not right, is it? If the first character is numeric, 
+ or -, it's not a reference to a member of a PDS or PDSE at all -- it 
specifies a generation data set, right? Or is this support for member 
generations and I am not reading it correctly?

Also, member syntax has nothing to do with whether the dataset is cataloged, 
right? The syntax is exactly the same with a VOLSER reference or for a 
temporary dataset, right?

Charles

----------------------------------------------------------------------
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

Reply via email to