Discussion:
How to import/export data to MVS under Hercules
(too old to reply)
VN_V
2006-01-09 03:14:41 UTC
Permalink
Another quick question:

I'm new to this Hercules stuff and not very clear on different ways
to get data in/out of MVS running under Hercules. My questions are
(if someone can give short/sweet answers on where and how to get the
utilities to perform these tasks as well):

1) What is the best way to get data from a real main frame down to
the PC and then get it into MVS under Hercules ? I've used DASDLOAD
to get Xmitted data but I ran into problems with 'line too long'..
The kind of data I'm talking about could be loadlibs, not just text.

2) Once you've worked with stuff on MVS under Hercules, what is the
best way to get data back out to PC and then uploaded back to a real
Mainframe ? Again, the data can be loadlibs as well.

While I'm doing these, where do I need to worry about ASCII/EBCDIC
translation (if there is requirement to do that) ?

Thanks.
Martin
2006-01-09 07:46:23 UTC
Permalink
VN,

Here is my view.

for PDS-libs:

XMIT x.x DSN(LOADLIB) TO(XFERFORMAT) then

Transfer via DOWNLOAD of the terminalemulation you use

and on the receiving system

UPLOAD

then RECEIVE

for text you can omit the XMIT/RECEIVE-

The translation issue does not exist: XMIT/RECEIVE should be done
against BIN (unaltered) files.

With pure TEXT you might have surprising results, when going from EBCDIC
to ASCII and then ASCII to EBCDIC, if the data has char in it asside of
the 26*2/10/14 char that are on the same position and do exist in all
sets of ASCII and EBCDIC.

So even for TEXT is is advisable to use bin (since you go from EBCDIC to
EBCDIC anyway).

Once you have all the pieces in place, you might switch to FTP or other
more advanced methods (or even AWS-tape).
--
Martin
--
XML2PDF - the way to get all features of PDF into your documents
on mainframe or PC systems; more at http://www.pi-sysprog.de
somitcw
2006-01-09 12:30:24 UTC
Permalink
I assUme that you are asking how to convert
data between zOS 1.6 and MVS 3.8j ?

All up loads and down loads should be done
BINARY. Do not convert any to ascii.

Load libs might be the same format. zOS also
supports PDSE which is not the same format.

Load modules may be the same. zOS load
modules may require LE code. zOS load modules
may not be linked to run AMODE 24 and RMODE 24.
zOS load modules may have blocks larger than
18K. zOS load modules may reference control
blocks that do not even exist in MVS 3.8j.

You can use IEBCOPY COPYMOD MAXBLK=18432
or MAXBLK=13030 ( older systems liked 12288 )
or MAXBLK=8368 ( older systems liked 6144 )
or MAXBLK=7294 ( older systems liked 6144 )
to reblock a load library the disk track size
so it will fit on an MVS 3.8j disk track.
If you restore to a 3375, 3380, 9345, or 3390,
MVS fetch may not care anyway?

Transport can be with CCKDDUMP/CCKDLOAD,
ADRDSSU, XMIT/RECEIVE/XMIT370/RECV370, or
IEBCOPY. Might be other methods?
FTP is not readily available on MVS 3.8j
and IEBCOPY ALTERMOD is not available to
clean up record counts or address lists or
whatever it fixes.

If CCKDDUMP, the 3390 has to be model 1.
MVS 3.8j with 3390 mods only supports up
to 32767 tracks on a disk volume.
CCKDDUMP is distributed with Hercules, but
also see old distributions in:
http://groups.yahoo.com/group/hercules-390/files

If ADRDSSU, you need to install the
DSSREST for MVS 3.8j. See:
http://groups.yahoo.com/group/H390-MVS/files/AWSADR
http://groups.yahoo.com/group/turnkey-mvs/files/DSSREST.ZIP
I never used it and suspect that it does not
support copying back to zOS. i.e. You may
have to use different utilities to copy from
MVS 3.8j to zOS 1.6 ?

If XMIT, see:
http://www.cbttape.org/~jmorrison/mvs38j/xv0005-beta02.het
http://www.jaymoseley.com/hercules/download/zips/ind$file.zip

If IEBCOPY to unloaded sequential disk, see:
http://www.homerow.net/asm/hetutl.htm
http://groups.yahoo.com/group/hercules-390/files/AWSSL.v19j.xmi.zip
http://groups.yahoo.com/group/hercules-390/files/Utilities/awsutil-
v11.zip
http://groups.yahoo.com/group/hercules-390/files/rawstape.jcl
Post by VN_V
I'm new to this Hercules stuff and not very
clear on different ways to get data in/out of
MVS running under Hercules. My questions are
(if someone can give short/sweet answers on
where and how to get the utilities to perform
1) What is the best way to get data from a
real main frame down to the PC and then get
it into MVS under Hercules ? I've used
DASDLOAD to get Xmitted data but I ran into
problems with 'line too long'..
The kind of data I'm talking about could
be loadlibs, not just text.
2) Once you've worked with stuff on MVS
under Hercules, what is the best way to
get data back out to PC and then uploaded
back to a real Mainframe ? Again, the data
can be loadlibs as well.
While I'm doing these, where do I need
to worry about ASCII/EBCDIC translation
(if there is requirement to do that) ?
Thanks.
somitcw
2006-01-09 18:27:39 UTC
Permalink
I should have also included one of the
ways to copy data between zOS and MVS 3.8j
that doesn't require additional utilities.

Use IEHMOVE COPY UNLOAD to convert
a DSORG=PS, PO, or DA data set to a
FBx80x800 sequential data set ( VIO or
disk ), wrap IEHMOVE COPY JCL around it
for the restore, down or up load as needed.
Submit the JOB using a disk data set or
card reader. Warning, IEHMOVE is strange.
Only use on a copy of data. Use COPY, not
MOVE to copy. Do not MOVE a member because
IEHMOVE will delete the data set. Don't
allocate SYSUT1 to the same disk as the
input or output data set. Try to keep
IEHMOVE away from SMS disk volumes.
etc. etc. etc.
Post by somitcw
I assUme that you are asking how to convert
data between zOS 1.6 and MVS 3.8j ?
All up loads and down loads should be done
BINARY. Do not convert any to ascii.
Load libs might be the same format. zOS also
supports PDSE which is not the same format.
Load modules may be the same. zOS load
modules may require LE code. zOS load modules
may not be linked to run AMODE 24 and RMODE 24.
zOS load modules may have blocks larger than
18K. zOS load modules may reference control
blocks that do not even exist in MVS 3.8j.
You can use IEBCOPY COPYMOD MAXBLK=18432
or MAXBLK=13030 ( older systems liked 12288 )
or MAXBLK=8368 ( older systems liked 6144 )
or MAXBLK=7294 ( older systems liked 6144 )
to reblock a load library the disk track size
so it will fit on an MVS 3.8j disk track.
If you restore to a 3375, 3380, 9345, or 3390,
MVS fetch may not care anyway?
Transport can be with CCKDDUMP/CCKDLOAD,
ADRDSSU, XMIT/RECEIVE/XMIT370/RECV370, or
IEBCOPY. Might be other methods?
FTP is not readily available on MVS 3.8j
and IEBCOPY ALTERMOD is not available to
clean up record counts or address lists or
whatever it fixes.
If CCKDDUMP, the 3390 has to be model 1.
MVS 3.8j with 3390 mods only supports up
to 32767 tracks on a disk volume.
CCKDDUMP is distributed with Hercules, but
http://groups.yahoo.com/group/hercules-390/files
If ADRDSSU, you need to install the
http://groups.yahoo.com/group/H390-MVS/files/AWSADR
http://groups.yahoo.com/group/turnkey-mvs/files/DSSREST.ZIP
I never used it and suspect that it does not
support copying back to zOS. i.e. You may
have to use different utilities to copy from
MVS 3.8j to zOS 1.6 ?
http://www.cbttape.org/~jmorrison/mvs38j/xv0005-beta02.het
http://www.jaymoseley.com/hercules/download/zips/ind$file.zip
http://www.homerow.net/asm/hetutl.htm
http://groups.yahoo.com/group/hercules-390/files/AWSSL.v19j.xmi.zip
http://groups.yahoo.com/group/hercules-390/files/Utilities/awsutil-
v11.zip
http://groups.yahoo.com/group/hercules-390/files/rawstape.jcl
Post by VN_V
I'm new to this Hercules stuff and not very
clear on different ways to get data in/out of
MVS running under Hercules. My questions are
(if someone can give short/sweet answers on
where and how to get the utilities to perform
1) What is the best way to get data from a
real main frame down to the PC and then get
it into MVS under Hercules ? I've used
DASDLOAD to get Xmitted data but I ran into
problems with 'line too long'..
The kind of data I'm talking about could
be loadlibs, not just text.
2) Once you've worked with stuff on MVS
under Hercules, what is the best way to
get data back out to PC and then uploaded
back to a real Mainframe ? Again, the data
can be loadlibs as well.
While I'm doing these, where do I need
to worry about ASCII/EBCDIC translation
(if there is requirement to do that) ?
Thanks.
John
2006-01-09 18:42:40 UTC
Permalink
Post by VN_V
I'm new to this Hercules stuff and not very clear on different ways
to get data in/out of MVS running under Hercules. My questions are
(if someone can give short/sweet answers on where and how to get the
1) What is the best way to get data from a real main frame down to
the PC and then get it into MVS under Hercules ? I've used DASDLOAD
to get Xmitted data but I ran into problems with 'line too long'..
The kind of data I'm talking about could be loadlibs, not just text.
2) Once you've worked with stuff on MVS under Hercules, what is the
best way to get data back out to PC and then uploaded back to a real
Mainframe ? Again, the data can be loadlibs as well.
While I'm doing these, where do I need to worry about ASCII/EBCDIC
translation (if there is requirement to do that) ?
Thanks.
Get the data into a sequential file on z/OS using some utility which
is compatable with MVS, such as IEBCOPY or IEHMOVE. Now, use AWSUTIL
utility on the z/OS system using the READ command to create an
emulated tape file. Download the sequential file to your PC using a
BINARY transfer. Take that file to the PC which is running Hercules.
Use the Hercules DEVINIT command to "mount" the file on an emulated
tape device. Use the appropriate utility to read and reconstruct the
original file contents from the emulated tape volume. Note that the
emulated tape volume will be a "non labelled" volume in this case.

--
John
VN_V
2006-01-11 05:25:14 UTC
Permalink
Thanks for the response.
From what you're saying, it seemed like AWS tape is a good method.
However, I had some problems mounting a AWS tape. What I did was to
create a AWS tape on the real mainframe using AWSSL (from CBT Tape)
and it looked like a SL tape was created. Then I downloaded it to
the PC as a binary file. Afterwards, I ran a job asking for this
tape volser on Hercules/MVS.

The next thing it asked for was a Device # or cancel (MSG IEF238D)
on the MVS console. I then issued the cmd 'attach 400 3480
\mytape.aws' under Hercules and replied 400 to the WTOR. Hercules
did acknowledge that it was a AWS tape. However, after that I saw a
messge 'IEC501A' which is a mount request from MVS. In the
meantime, I saw the message 'AUTOMOUNT: Mount request for Volser' on
the Hercules console as well.

It appeared like somehow MVS didn't even acknowledge that the volume
was mounted there already.

My question was: How do I send a signal to MVS that this tape is
ready to be used from Hercules ?

Or maybe I did something wrong here !!!

If so, then what is the sequence of things that I need to go through
to ensure that MVS does see the tape as the input.

Now, the next question is: how do I create an output AWS tape on MVS
under Hercules (just in case I want to take what I've done on the PC
back to the mainframe) ?
Post by VN_V
I'm new to this Hercules stuff and not very clear on different ways
to get data in/out of MVS running under Hercules. My questions are
(if someone can give short/sweet answers on where and how to get the
1) What is the best way to get data from a real main frame down to
the PC and then get it into MVS under Hercules ? I've used
DASDLOAD
Post by VN_V
to get Xmitted data but I ran into problems with 'line too
long'..
Post by VN_V
The kind of data I'm talking about could be loadlibs, not just text.
2) Once you've worked with stuff on MVS under Hercules, what is the
best way to get data back out to PC and then uploaded back to a real
Mainframe ? Again, the data can be loadlibs as well.
While I'm doing these, where do I need to worry about
ASCII/EBCDIC
Post by VN_V
translation (if there is requirement to do that) ?
Thanks.
Get the data into a sequential file on z/OS using some utility
which
is compatable with MVS, such as IEBCOPY or IEHMOVE. Now, use
AWSUTIL
utility on the z/OS system using the READ command to create an
emulated tape file. Download the sequential file to your PC using a
BINARY transfer. Take that file to the PC which is running
Hercules.
Use the Hercules DEVINIT command to "mount" the file on an emulated
tape device. Use the appropriate utility to read and reconstruct the
original file contents from the emulated tape volume. Note that the
emulated tape volume will be a "non labelled" volume in this case.
--
John
somitcw
2006-01-11 13:07:18 UTC
Permalink
If you are using the MVS 3.8j Tur(n)key
system, 400 is not genned as a tape drive.
Try MVS console commands:
D U,TAPE
D U,TAPE,ONLINE
V 480,ONLINE

The DEVINIT for tapes does not tell
you if you typed the filespecs correctly
until you use the tape.
Last night I did:
c:
cd cygwin\usr\local\bin
hercules.exe
...
devinit 480 tape/ind$file.v111.het
The tape looked good, but MVS never saw it.
When I varied it online in MVS, then
Hercules said that it couldn't find the
path or file.
Finally I entered:
devinit 480 tapes/ind$file.v111.het
The folder tape did not exist so needed
an 's' on it.

If you are not hung in "allocation
recovery", you can use the MVS UNLOAD
command to unload a tape, the MVS
VARY command to have MVS check the
tape drive, the MVS display command
to see the status of the tape drive,
and the MVS mount command to keep
the tape from unloading:
U 480
V 480,ONLINE
D U,TAPE,ONLINE,480,1 or shorter forms
M 480,VOL=(SL,thevol) or M TAPE,VOL=(SL,thevol)
thevol should be replaced with the vol ser.

Tapes can be mounted before the
tape drive is varied online or after.
Tapes can be mounted before the JOB
starts or after. Mounting after the
JOB starts and before the tape drive
is online may cause the tape to
unload and be requested again.
I suggest:
V 480,ONLINE
devinit 480 filespecs
V 480,ONLINE
Submit JOB
Try to recover

--- In hercules-390-***@public.gmane.org,
"VN_V" <***@y...> wrote:
- - - snipped - - -
Post by VN_V
It appeared like somehow MVS didn't
even acknowledge that the volume was
mounted there already.
My question was: How do I send a
signal to MVS that this tape is
ready to be used from Hercules ?
- - - snipped - - -

Loading...