Discussion:
[hercules-390] Copying sequential dataset to PDS member - JCL?
nff2jf43ijwvycju3kvjhlqfikcnwrpgg5scgsb2@yahoo.com [hercules-390]
2017-08-14 15:45:54 UTC
Permalink
I'm trying to copy a sequential dataset (with reclen=132) into a member in a different source code PDS (reclen=80). (It contains the LISTPDS assembler code, and the only way I could use the Zoc terminal emulator to get the file onto the mainframe from the PC was into a sequential dataset, not a member).

The sequential dataset is HERC01.TEST.CNTLTMP and the member I'd like to create is HERC01.TEST.CNTL(LISTASM)

I've been fiddling around with IEBCOPY, IEBGENER and SORT, but am unable to make the copy happen.
Here's what I've tried:

1 IEBCOPY
//STEP010I EXEC PGM=IEBCOPY
//VAMBYPAS DD DUMMY
//SYSPRINT DD SYSOUT=*
//INP0 DD DISP=SHR,DSN=HERC01.TEST.CNTLTMP
//OUT0 DD DISP=SHR,DSN=HERC01.TEST.CNTL
//SYSIN DD *
COPYOPER COPY OUTDD=OUT0
INDD=INP0
SELECT MEMBER=(,LISTASM)
/*

This gives an RC=0008, "INP0 not an IEBCOPY unloaded dataset".

2. IEBGENER
//COPYMBR EXEC PGM=IEBGENER
//SYSPRINT DD SYSOUT=*
//SYSIN DD DUMMY
//SYSUT1 DD DSN=HERC01.TEST.CNTLTMP,DISP=SHR
//SYSUT2 DD DSN=HERC01.TEST.CNTL(LISTASM),DISP=SHR
/*

With the above JCL, I get an RC=0012, "CONFLICTING DCB PARAMETERS". I'm guessing this has something to do with the different RECLENs, but am not sure.

3. SORT
//S1 EXEC PGM=SORT
//SYSOUT DD SYSOUT=*
//SORTIN DD DSN=HERC01.TEST.CNTLTMP,DISP=SHR
//SORTOUT DD DSN=HERC01.TEST.CNTL(LISTASM),DISP=SHR
//SYSIN DD *
OPTION COPY
OUTREC FIELDS=(1,80)
/*
This attempt gives an RC=0016 (getting worse!) with a message:
IER005A - STATEMENT DEFINER ERROR
IER010A - NO S/M CARD

Can anyone point in the right direction to copy a sequential dataset to a new member in a source dataset?

Thanks
Pete
Peter Coghlan mailinglists@beyondthepale.ie [hercules-390]
2017-08-14 15:51:15 UTC
Permalink
Post by ***@yahoo.com [hercules-390]
Can anyone point in the right direction to copy a sequential dataset to a
new member in a source dataset?
Hi Pete,

Can you please ask these MVS related questions on a mailing list that discusses
MVS issues? They may be appropriate on H390-MVS but I am not a member of
that list and would not like to presume on the members behalf.

(I sent you a private email about this last time but I guess you didn't see
it. Maybe it went into a spam folder or something.)

Regards,
Peter Coghlan.
nff2jf43ijwvycju3kvjhlqfikcnwrpgg5scgsb2@yahoo.com [hercules-390]
2017-08-15 02:03:13 UTC
Permalink
Hi Peter
Sorry about that, and I couldn't find the email you sent. Is there a 'best' MVS list to join?
Thanks
Pete
'\'Fish\' (David B. Trout)' david.b.trout@gmail.com [hercules-390]
2017-08-15 04:09:50 UTC
Permalink
Post by ***@yahoo.com [hercules-390]
Hi Peter
Sorry about that, and I couldn't find the email you sent. Is there a
'best' MVS list to join?
Thanks
Pete
H390-MVS:

https://fish-git.github.io/html/hercsupp.html
--
"Fish" (David B. Trout)
Software Development Laboratories
http://www.softdevlabs.com
mail: ***@softdevlabs.com
Joe Monk joemonk64@gmail.com [hercules-390]
2017-08-14 18:39:24 UTC
Permalink
Pete,

Give this a try...

//COPYMBR EXEC PGM=IEBGENER
//SYSPRINT DD SYSOUT=*

//SYSUT1 DD DSN=HERC01.TEST.CNTLTMP,DISP=SHR
//SYSUT2 DD DSN=HERC01.TEST.CNTL(LISTASM),DISP=SHR,
DCB=(RECFM=FB,LRECL=80,BLKSIZE=80) < ---- PUT PDS BLKSIZE
//SYSIN DD *
GENERATE MAXFLDS=1,MAXLITS=1
RECORD FIELD=(80,1,,1)
/*

Joe

On Mon, Aug 14, 2017 at 10:45 AM,
Post by ***@yahoo.com [hercules-390]
I'm trying to copy a sequential dataset (with reclen=132) into a member in
a different source code PDS (reclen=80). (It contains the LISTPDS assembler
code, and the only way I could use the Zoc terminal emulator to get the
file onto the mainframe from the PC was into a sequential dataset, not a
member).
The sequential dataset is HERC01.TEST.CNTLTMP and the member I'd like to
create is HERC01.TEST.CNTL(LISTASM)
I've been fiddling around with IEBCOPY, IEBGENER and SORT, but am unable
to make the copy happen.
1 IEBCOPY
//STEP010I EXEC PGM=IEBCOPY
//VAMBYPAS DD DUMMY
//SYSPRINT DD SYSOUT=*
//INP0 DD DISP=SHR,DSN=HERC01.TEST.CNTLTMP
//OUT0 DD DISP=SHR,DSN=HERC01.TEST.CNTL
//SYSIN DD *
COPYOPER COPY OUTDD=OUT0
INDD=INP0
SELECT MEMBER=(,LISTASM)
/*
This gives an RC=0008, "INP0 not an IEBCOPY unloaded dataset".
2. IEBGENER
//COPYMBR EXEC PGM=IEBGENER
//SYSPRINT DD SYSOUT=*
//SYSIN DD DUMMY
//SYSUT1 DD DSN=HERC01.TEST.CNTLTMP,DISP=SHR
//SYSUT2 DD DSN=HERC01.TEST.CNTL(LISTASM),DISP=SHR
/*
With the above JCL, I get an RC=0012, "CONFLICTING DCB PARAMETERS". I'm
guessing this has something to do with the different RECLENs, but am not
sure.
3. SORT
//S1 EXEC PGM=SORT
//SYSOUT DD SYSOUT=*
//SORTIN DD DSN=HERC01.TEST.CNTLTMP,DISP=SHR
//SORTOUT DD DSN=HERC01.TEST.CNTL(LISTASM),DISP=SHR
//SYSIN DD *
OPTION COPY
OUTREC FIELDS=(1,80)
/*
IER005A - STATEMENT DEFINER ERROR
IER010A - NO S/M CARD
Can anyone point in the right direction to copy a sequential dataset to a
new member in a source dataset?
Thanks
Pete
nff2jf43ijwvycju3kvjhlqfikcnwrpgg5scgsb2@yahoo.com [hercules-390]
2017-08-15 02:04:51 UTC
Permalink
Thanks so much Joe - worked a treat, except the end of line characters were all set to '~' for some reason (an easy fix with a global search/replace). I think those '~' might have had something to do with the funny IND$FILE process in the terminal emulator. Thanks again.
Pete
kerravon86@yahoo.com.au [hercules-390]
2017-08-21 04:26:02 UTC
Permalink
Post by ***@yahoo.com [hercules-390]
I'm trying to copy a sequential dataset
(with reclen=132) into a member in a
different source code PDS (reclen=80).
I recommend you try out "COPYFILE"
which may already be on your system,
but if not, the code is here:

http://pdos.cvs.sourceforge.net/viewvc/pdos/pdos/pdpclib/copyfile.c?view=markup

and build it with GCCMVS.

It will gracefully copy either text files
or binary files between anything you
care to give it, e.g. F132 input and
V255 output. It will silently truncate
long lines too.

BFN. Paul.

Loading...