On Wed, 2 Apr 2014 15:20:41 -0700, Skip Robinson wrote:

>CONCAT is not a standard TSO/E command. It's likely a Rexx or CLIST, in
>which case you can look at the code to see what it does. If it's an RYO
>command processor, you may not have the source.
> 
I apologize for excessive brevity, indolence.  Earlier in the thread, I
said, more fully (still trimming here):
    ...
call BPXWDYN 'alloc dd(SYSLIB)  shr dsn(SYS1.MACLIB) msg(2)'
call BPXWDYN 'alloc rtddn(CAT1) shr dsn(SYS1.MODGEN) msg(2)'
call BPXWDYN 'concat ddlist(SYSLIB,'CAT1')           msg(2)'
    ...
Not Rexx, not CLIST, not RYO, source not available:

    Requesting dynamic concatenation
    z/OS Using REXX and z/OS UNIX System Services
    SA23-2283-00 
    
http://pic.dhe.ibm.com/infocenter/zos/v2r1/topic/com.ibm.zos.v2r1.bpxb600/bpx1rx76.htm
 

>I agree with your earlier comment that handling concatenations may be
>different from single data sets because of the most likely usage of them.
>A concatenation is pretty useless unless you run a process that works on
>multiple data sets. The most common usage, SYSPROC/SYSEXEC, requires that
>specific DDNAME and would be meaningless with a system-generated DDNAME.
>OTOH there are some processes that require a data set (or volume) to be
>allocated under any random DDNAME; they just have to be allocated. In
>those cases--almost never a concatenation--a system-generated DDNAME is
>fine.
>
Hardly "pretty useless".  Lots of readers here have sometimes coded in JCL:

    //SYSLIB  DD  DISP=SHR,DSN=SYS1.MACLIB
    //        DD  DISP=SHR,DSN=SYS1.MODGEN

... without assigning a specific DDNAME to SYS1.MODGEN; equivalent to
what my Rexx sample(s) do.

>From:   Paul Gilmartin 
>Date:   04/02/2014 02:50 PM
>Subject:        Re: FREE DDNAME with concatenated datasets?
>Sent by:        IBM Mainframe Discussion List <IBM-MAIN@LISTSERV.UA.EDU>
>        ...
>    allocate dd(ddn) dsn(dsn1)
>    allocate dd(ddn2) dsn(dsn2)
>    concat ddlist(ddn,ddn2)
>    free ddn


On Wed, 2 Apr 2014 17:24:45 -0500, Richard Peurifoy wrote:
>
>This makes sense to me.
>
>If I specifically allocate two files, I would expect to have to
>free two files.
>
>The free of ddn de-concats the files and frees ddn.


On Wed, 2 Apr 2014 16:50:17 -0500, Paul Gilmartin wrote:
>
>    allocate dd(ddn) dsn(dsn1,dsn2)
>    free ddn
>
>... frees both catenand data sets.  But:

"makes sense" or not, I remain curious about the difference between
the control block structures created by the two processes.

-- gil

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