On Sat, 25 Nov 2023 10:38:23 -0600, Jon Perryman wrote:
>>>
>>It's needed when allocating the same the same temp data set to two different
>>ddnames within s single job step, regardless of volume.
>
>Are you saying that DD DDNAME= doesn't work without VOL=REF? Are you saying
>that DSN=&&TEMP on both DD requires one to have a VOL=REF? If
>allocation is causing a problem, doesn't an IEFBR14 step solve that problem?
>
My understanding is that with DDNAME= the referenced ddname is not available to
an access method within the job step. My technique needed both.
>You can get VOL=REF to work for temporary datasets but is it the right
>solution? The only times I used VOL=REF was for datasets that needed to be on
>the same volume.
>
Since both dd statements refer to the same data set, they are ipso facto on the
sane volume.
But lacking the VOL=REF for an uncatalogued (e.g. temp) data set, allocation
attempts
a catalog search which fails with DATA SET NOT FOUND.
A sample distilled from working code:
//STEP1 EXEC PGM=IKJEFT01
//SYSEXEC DD DISP=(,PASS),UNIT=VIO,SPACE=(CYL,(1,,5)),
// RECFM=VB,LRECL=222,DSN=&&SYSEXEC
//REXXOUT DD DISP=SHR,DSN=&&SYSEXEC(CATMAKE),VOL=REF=*.SYSEXEC
//REXXIN DD DATA,DLM='..'
/* Rexx */
...
..
//SYSPRINT DD SYSOUT=(,)
//SYSTSPRT DD SYSOUT=(,)
//SYSTSIN DD *
repro infile(REXXIN) outfile(REXXOUT)
%CATMAKE
I could have used instead:
o an additional job step, IEBGENER or IDCAMS.
o LMCOPY.
Either would have been more JCL and commands to code.
--
gil
----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: INFO IBM-MAIN