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 <[email protected]>
> ...
> 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 [email protected] with the message: INFO IBM-MAIN