THIS IS JUST AN EXAMPLE OF THE FTP INSTRUCTIONS FOR DOWNLOAD TO SHOW HOW EASY IT WILL BE
THEY WILL NOT WORK (Without valid IP Address and Credentials)
You MUST complete the request form at REQUEST FORM,
and then we will mail you the actual ip address, userid, and password
=====================================================================
Subject: RE: ftp Instructions for MXG Version VV.RR from Merrill.
To DOWNLOAD the MXG Version VV.RR Source Library:
url: ftp.mxg.com (or ip address: 000.000.000.000
USERID uuuuuuuu
PW pppppppp
note: userid and password characters may be in mixed case.
Contents of these instructions:
1. Choice of Files to Download from ftp site
2. Duration of ftp
3. Choice of ftp direct to MVS or to pc/workstation first
4. If you have ftp problems
5. After the successful download
APPENDIX A. Example MVS-only download and un-TERSE tervvrr.ter
APPENDIX B. Example ftp dirvvrr.zip, Windows command prompt
APPENDIX C. Example JCL for MVS-OS/390-z/OS batch ftp job
APPENDIX D. Example TSO ftp session
APPENDIX E. Example MVS-only, PKZIP for MVS unzip of ebcvvrr.zip:
1. Choice of Files to Download from ftp site:
a. z/OS TERSEd PDS file, RECOMMENDED, see APPENDIX A. for JCL example.
tervvrr.ter ( 24,966,144) EBCDIC TERSED (COMPRESSED) PDS, MVS EXECUTION
ONLY.
b. Zipped file of all 7031 files in ASCII in the MXG Source Directory.
This is the righteous file to download for ASCII execution of MXG,
since you only have to unzip the directory, no rename, no hassles.
dirvvrr.zip ( 23,175,748) ASCII SOURCE DIRECTORY ZIPPED, FOR ASCII
EXECUTION. SEE APPENDIX B.
These next files are archaic and unlikely to be needed.
c. IEBUPDTE-format, EBCDIC text, sequential ("the MXG tape") file used
on EBCDIC systems (MVS-z/OS,VM,etc.) as input to IBM's PGM=IEBUPDTE
to create the MXG Source Library, an MVS PDS, that starts with the
member AAAAAAAA and has a last member of ZZZZZZZZ. Member AAAAAAAA
tabulates the number of members in the current version, and member
DIR lists all of the sizes of the individual PDS members in bytes.
ebcvvrr.ebc (221,471,280) EBCDIC IEBUPDTE FORMAT, FTP DIRECT TO MVS.
ebcvvrr.zip ( 23,139,627) ZIPPED, FTP TO WORKSTATION, UNZIP, THEN TO MVS.
d. IEBUPDTE-format, ASCII text, sequential ("the MXG tape") file used
on ASCII systems (PCs,Linux,unix) as input to MXG's IEBUPDTE.SAS
program to create the MXG Source Directory's 6890 individual files.
Transfer as binary, see member IEBUPDTE for instructions.
This used to be the only choice for ASCII execution of MXG.
ascvvrr.asc (141,983,208) ASCII IEBUPDTE FORMAT,FTP TO PC/WORKSTATION
ascvvrr.zip ( 20,769,152) ZIPPED ABOVE
2. The duration depends on your line speed and zip/unzipped file:
the 175MB unzipped EBCDIC (safest choice for z/OS):
- on a 1.44mbit T1 (500MB/hr) ==> 15 minutes
- or a 56kbit dial-up line ==> 7 hours
the 20MB tersed or zipped files:
- on a 1.44mbit T1 (500MB/hr) ==> 2 minutes
- or a 56kbit dial-up line ==> 51 minutes
"Safest choice" only because there is no character conversion,
for MVS execution; if you download a zip and/or ascii version,
and then upload to z/OS, you put yourself at the mercy of the
character translation table in your ftp/upload program.
3. You can ftp direct to your MVS host, or to a pc/workstation first:
You must enable the "Passive Transfer" option of your ftp product or
your browser; without that option set, you can get timeouts and/or
disconnects after starting a transfer.
You can also use your browser to access the ftp site for download; the
syntax is to open ftp://000.000.000.000 (note ftp: not http:)
and you will be prompted for userid and password.
If your browser hangs, or you do not get the logon popup window, or your
browser reports "530 Sorry no ANONYMOUS access allowed", or if your site
has a proxy server or firewall that forbids the popup window for userid
and password, you should be able to connect using the full syntax to
include userid and password: ftp://userid:password@ipaddress
ftp://uuuuuuuu:pppppppp@000.000.000.000
ftp ebcvvrr.ebc directly into an MVS Sequential File, with attributes:
DSN=MXG.MXGVVRR.EBC,RECFM=FB,LRECL=80,BLKSIZE=27920,SPACE=(CYL,(200,50))
as a binary ftp transfer (i.e., no conversion, since it is EBCDIC now).
or,
ftp the ebcvvrr.zip to your pc/workstation as binary, unzip it there,
and then "upload" to your MVS System using TSO tools like IND$FILE,
RHUMBA, or ftp, but the "upload" to MVS must also be binary, that is:
specify both NOCRLF and NOEBCDIC, into an MVS Sequential File with
RECFM=FB,LRECL=80,BLKSIZE=27920,SPACE=(CYL,(200,50))
4. If you have ftp problems:
If you have any problems, try first to ftp something else from another
ftp site (for example, www.sas.com) - if you are unable to ftp from
other places, then it may be a restriction in your company's proxy
server and/or firewall, and you need to resolve with your
security/network folks. Also, do not use line numbers in your z/OS
ftp program statements - numbered lines can and have caused errors.
With thousands of ftp transfers, only a handful of sites had problems,
and all were local restrictions that were resolved internally.
We do NOT recommend downloading ASCII to a workstation and uploading to
MVS, because translation from ASCII to EBCDIC varies between uploading
packages, and you may have to globally edit the uploaded EBCDIC text
with country-unique characters (US Dollar Sign versus English Pound).
5. After the succesful download:
After the ftp, then, use that MVS file as the //SYSIN
dataset in your PGM=IEBUPDTE job to create the MXG Source PDS:
//STEP1 EXEC PGM=IEBUPDTE,PARM=NEW
//SYSPRINT DD DUMMY
//SYSIN DD DSN=MXG.MXGVVRR.EBC,DISP=SHR
//SYSUT2 DD DSN=MXG.MXGVVRR.SOURCLIB,VOL=SER=XXXXXX,
// DISP=(NEW,CATLG),
// UNIT=3390,DCB=(RECFM=FB,LRECL=80,BLKSIZE=27920),
// SPACE=(CYL,(210,50,1199))
For ASCII Execution of MXG:
ftp the dirvvrr.zip file to your ASCII platform as binary,
then unzip into your \mxgvvrr\sourclib directory.
For any platform:
Once you create DSN=MXG.MXGVVRR.SOURCLIB on MVS, or the directory on
ASCII ("the MXG Source PDS library), all of the remaining installation
instructions are in member INSTALL, and member JCLINSTL has the JCL
example to complete the installation.
Herbert W. Barry Merrill, PhD
President-Programmer
MXG Software
Merrill Consultants
Dallas, Texas, USA
214 351 1966 x 7
barry@mxg.com
www.mxg.com
APPENDIX A. - RECOMMENDED z/OS INSTALLATION: Download TERSEd file:
//* This is the recommended way to download and INSTALL MXG Software
//* for execution on z/OS execution.
//*
//*--------------------------------------------------------------------
//* This two step job is all that is required to download and create
//* the MXG Sourclib PDS from the TERSEd file.
//*
//* STEP1 - FTP the TERSEd file from MXG ftp site to your mainframe.
//* STEP2 - Uncompress that downloaded file into new MXG PDS
//*
//* Site specific DSNs are specfied in GET command of STEP1 which
//* must be the same as input to STEP2
//* The DSNAME of your new Sourclib PDS is in STEP2
//*
//* LRECL should not be changed in STEP1 and must remain 1024
//*
//* This JCL is MiXeD case.
//* Also, do not use numbered lines in the SYSIN statements.
//*
//* Addition info about TRSMAIN available from IBM
//* http://techsupport.services.ibm.com/390/trsmain.html
//* where you'll discover that TRSMAIN is an alias entry
//* point for the redesigned AMATERSE, but changing to
//* use PGM=AMATERSE requires you to also change the
//* INFILE/OUTFILE DDnames to SYSUT1/SYSUT2 for AMATERSE.
//* Member FTPING in the MXG Source decodes many ftp error messages.
//*--------------------------------------------------------------------
//MXGFTP JOB (ACCOUNTS,NNNN),REGION=0M,
// CLASS=A,MSGCLASS=X,NOTIFY=&SYSUID
//STEP1OF2 EXEC PGM=FTP,PARM='(EXIT=4'
//SYSPRINT DD SYSOUT=*,DCB=BLKSIZE=133
//SYSABEND DD SYSOUT=*
//SYSOUT DD SYSOUT=*
//FTPOUT DD SYSOUT=*
//SYSIN DD *
000.000.000.000
uuuuuuuu pppppppp
BINARY
LOCSITE LRECL=1024 RECFM=FB BLKSIZE=6144 UNIT=SYSDA
LOCSITE PRIMARY=5000 SECONDARY=300
GET tervvrr.ter 'MXG.MXGVVRR.TERSED' (replace
CLOSE
QUIT
//STEP2OF2 EXEC PGM=TRSMAIN,PARM='UNPACK'
//SYSPRINT DD SYSOUT=*,DCB=(LRECL=133,BLKSIZE=12901,RECFM=FBA)
//INFILE DD DSN=MXG.MXGVVRR.TERSED, <- File from FTP above
// DISP=SHR
//OUTFILE DD DSN=MXG.MXGVVRR.SOURCLIB, <- New MXG SOURCLIB PDS
// DISP=(NEW,CATLG,DELETE),
// UNIT=3390,DCB=(RECFM=FB,LRECL=80,BLKSIZE=0),
// SPACE=(CYL,(210,50,1200))
appendix B. - Example ftp from a Windows command prompt:
(file sizes in example output may not be current size)
You can issue the DOS ftp command from a command prompt under
Windows to download the MXG file.
The sequence of your inputs and ftp's responses, with some comments,
are shown below. For ASCII execution, you will want to download the
dirvvrr.zip
to your hard drive and then unzip it directly into your mxg source
directory.
C:\>ftp
ftp> ope 000.000.000.000
Connected to 000.000.000.000.
220 Serv-U FTP Server v4.0 for WinSock ready...
USER (000.000.000.000:(NONE)): uuuuuuuu
331 User name okay, need password.
Password:
230 User logged in, proceed.
ftp> ls
200 PORT Command successful.
150 Opening ASCII mode data connection for /bin/ls.
-- the list of files at the ftp site are shown
-- you will only need to download the one you want
ascvvrr.asc
ascvvrr.zip
dirvvrr.zip
ebcvvrr.ebc
ebcvvrr.zip
tervvrr.ter
226 Print of File List complete.
ftp: 65 bytes received in 0.00Seconds 65000.00Kbytes/sec.
-- the next "ftp" commands actually are local commands,
-- and will determine where the downloaded file will be
-- stored on your local machine.
ftp> lcd
Local directory now C:\.
ftp> lcd c:\download
Local directory now C:\download.
ftp> binary
200 Type set to I.
-- now, name which file you want to "get"
ftp> get dirvvrr.zip
200 PORT Command successful.
150 Opening BINARY mode data connection for dirvvrr.zip.
226 Transfer complete.
ftp: 18937334 bytes received in 110.99Seconds 170.62Kby/sec.
ftp> quit
221 Goodbye!
Appendix C. - Example JCL for an MVS-OS/390-z/OS batch ftp job of
the EBCDIC text in IEBUPDTE format:
//MXGFTP JOB (ACCOUNTS,NNNN),REGION=0M,
// CLASS=A,MSGCLASS=X,NOTIFY=&SYSUID
//FTPMXG EXEC PGM=FTP,PARM='(EXIT'
//SYSPRINT DD SYSOUT=*,DCB=BLKSIZE=133
//SYSABEND DD SYSOUT=*
//SYSOUT DD SYSOUT=*
//FTPOUT DD SYSOUT=*
//* NOTE: password may be in mixed case.
//* userid and file name can be either case.
//* other text can also be either case.
//SYSIN DD *
000.000.000.000
uuuuuuuu pppppppp
quote PASV
BINARY
LOCSITE LRECL=80 RECFM=FB BLKSIZE=27920
LOCSITE UNIT=SYSDA PRIMARY=5000 SECONDARY=300
GET ebcvvrr.ebc 'MXG.MXGVVRR.EBC' (replace
CLOSE
QUIT
"PASV" for Passive Mode prevents timeouts, 99% of the time, but
but one site's firewall rejected the request, and they had
to remove the quote PASV to make their ftp work.
Do not use line numbers for the //SYSIN text; they will cause
errors like: ZA1553E Invalid port number. Open fails.
Appendix D. - Example TSO ftp session:
EZA1450I IBM FTP CS V1R2
EZA1466I FTP: using IBMTCP05
EZA1456I Connect to ?
000.000.000.000
EZA1554I Connecting to: 000.000.000.000 port: 21.
220 Serv-U FTP Server v4.0 for WinSock ready...
EZA1459I NAME (000.000.000.000:TSOUSER):
uuuuuuuu
EZA1701I >>> USER uuuuuuuu
331 User name okay, need password.
EZA1789I PASSWORD:
EZA1701I >>> PASS
230 User logged in, proceed.
EZA1460I Command:
binary
EZA1701I >>> TYPE I
200 Type set to I.
EZA1460I Command:
LOCSITE LRECL=80 RECFM=FB BLKSIZE=27920
EZA1460I Command:
LOCSITE UNIT=SYSDA PRIMARY=5000 SECONDARY=300
EZA1460I Command:
get ebcvvrr.ebc 'MXG.MXGVVRR.EBC'
EZA1701I >>> PORT 199,14,219,100,6,229
200 PORT Command successful.
EZA1701I >>> RETR ebcvvrr.ebc
150 Opening BINARY mode data connection for ebcvvrr.ebc (128376160 by).
EZA1485I 8040960 bytes transferred.
...
EZA1485I 128152800 bytes transferred.
226 Transfer complete.
EZA1617I 128376160 bytes transferred 162 sec.
EZA1460I Command:
close
EZA1701I >>> QUIT
221 Goodbye!
EZA1460I Command:
quit
Appendix E. - MVS-Only Example, PKZIP for MVS unzip of ebcvvrr.zip:
If you cannot ftp direct to MVS, but you have PKZIP for MVS, you can
ftp the ebcvvrr.zip to your PC, as binary, passive mode, then upload
to your "MVS" system, binary, passive mode, and then use this JCL to
unzip that file:
//ZIPIT01 EXEC PGM=PKUNZIP,
// PARM='-CALLMODE(BATCH)'
//STEPLIB DD DSN=OEM.PKWARE.R56.LOAD,DISP=SHR
//SYSPRINT DD SYSOUT=*
//SYSABEND DD SYSOUT=*
//SYSIN DD *
-ACTION(EXTRACT)
-ARCHIVE(highlevel.ebcvvrr.zip)
-UNZIPPED_DSN(**,highlevel.EBCvvrr.UNZIPPED)
-OUTFILE_VOLUMES(volser)
-DATA_TYPE(BINARY)
-SAVE_LRECL(Y)
Then JCLINST job (IEBUPDTE) using the UNZIPPED file as //SYSUT1