Sir it is not my place to ask you why you asked a particular question, or why 
you want to use a particular approach. Your reasons are really none of my 
business. If the same approach caused problems in our shop I may mention it as 
a professional courtesy relative  to the technical discussion. If people don't 
think something is worth discussing they don't have to reply.  

----- Original Message -----
From: IBM Mainframe Discussion List <IBM-MAIN@bama.ua.edu>
To: IBM-MAIN@bama.ua.edu <IBM-MAIN@bama.ua.edu>
Sent: Fri Mar 04 19:13:32 2011
Subject: Re: Difference between DISP=NEW and MOD for a PDS member?

That could be. JCL apparently converts DISP=MOD to DISP=NEW internally
(x'C0' is what ends up in JFCBIND2 for either one).

That's why I was asking. They are both supported -- why, I wondered -- is
there a difference?

I'm not just playing with JCL variations in my spare time. I have
responsibility for a "virtualization" product that does a lot of varied
processing depending on many details of its execution environment. I have a
bug involving the treatment of PDS members DISP=NEW/MOD. I'm trying to
figure out what the distinctions are, if any. Face it, the MVS documentation
tends to be very scattered. It's tough to know whether the discussion you
have found is the only relevant discussion. And it's tough to run an
experiment when you don't know what exactly you are looking for.

It may be a poor practice in actual coding, but customers/users do what they
do. It's supported by IBM. Not good form for a product to fail. And "it's
supported by IBM but it's a poor coding practice" is not an argument I want
to have with a customer or prospect.

BTW, which one is poor coding practice, NEW or MOD?

Geez! Why do I have to defend asking a question on IBMMAIN?

Charles

-----Original Message-----
From: IBM Mainframe Discussion List [mailto:IBM-MAIN@bama.ua.edu] On Behalf
Of Gerhard Adam
Sent: Friday, March 04, 2011 4:57 PM
To: IBM-MAIN@bama.ua.edu
Subject: Re: Difference between DISP=NEW and MOD for a PDS member?

Why should it make a distinction?  DISP=MOD and DISP=NEW behave exactly the
same way for a new data set also.

In fact, a DISP=MOD doesn't make logical sense for a PDS, since it isn't
sequential data that is being appended, nor does it make sense for a
directory.  While the manual indicates that both forms work, they seem like
a poor practice in actual coding.


-----Original Message-----
From: IBM Mainframe Discussion List [mailto:IBM-MAIN@bama.ua.edu] On Behalf
Of Charles Mills
Sent: Friday, March 04, 2011 4:34 PM
To: IBM-MAIN@bama.ua.edu
Subject: Re: Difference between DISP=NEW and MOD for a PDS member?

Yes. Notice that it makes no distinction between MOD and NEW for a member.
That is exactly why I asked the question.

Charles

-----Original Message-----
From: IBM Mainframe Discussion List [mailto:IBM-MAIN@bama.ua.edu] On Behalf
Of Gerhard Adam
Sent: Friday, March 04, 2011 4:08 PM
To: IBM-MAIN@bama.ua.edu
Subject: Re: Difference between DISP=NEW and MOD for a PDS member?

Has it occurred to anyone to just look at the JCL Reference manual?

" When you specify DISP=MOD or DISP=NEW for a partitioned data set (PDS) or
partitioned data set extended (PDSE), and you also specify a member name in
the DSNAME parameter, the member name must not already exist. If the member
name already exists, the system terminates the job.

When you specify DISP=OLD for a PDS or a PDSE, and you also specify a member
name in the DSNAME parameter, the data set must already exist. If the member
name already exists and the data set is opened for output, the system
replaces the existing member with the new member. If the member name does
not already exist and the data set is opened for output, the system adds the
member to the data set.

When you specify DISP=MOD for a PDS or a PDSE, and you do not specify a
member name, the system positions the read/write mechanism at the end of the
data set. The system does not make an automatic entry into the directory.

When you specify DISP=MOD for a PDS or a PDSE, and you do specify a member
name, the system positions the read/write mechanism at the end of the data
set. If the member name already exists, the system terminates the job.

When you specify DISP=SHR for a partitioned data set extended (PDSE) and
also specify a member name, then:

    * If the member name exists, the member can have one writer or be shared
by multiple readers, or

    * If the member name does not exist, the member can be added to the data
set. Thus, multiple jobs can access different members of the data set and
add new members to the data set concurrently -- but concurrent update access
to a specific member (or update and read by other jobs) is not valid. 

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html

Reply via email to