Www.uvsoftware.ca Mainframe Conversion Using the Vancouver Utilities by Owen Townsend UV Software...

Preview:

Citation preview

www.uvsoftware.ca

Mainframe Conversion

• Using the Vancouver Utilities

• by Owen Townsend

• UV Software Inc.

• Partner with TxMQ Inc.

• Partner with Travancore

www.uvsoftware.ca

UV Software Inc.

• General purpose data utilities for unix/linux

• Mainframe Migration Tools, to convert JCL,COBOL,& Data to unix/linux/Windows/SFU

• Converted over 30 mainframes since 1993• HQ Vancouver Canada• President Owen Townsend, owen@uvsoftware.ca

www.uvsoftware.ca

TxMQ – Partner with UV Software

• IBM Business Partner in US & Canada

• Servicing fortune 1000 clients since 1991

• Mainframe sales, installation, training

• Assisting migrations to open systems

• Offices in Amherst NY & Markham ON

• Contact scott@txmq.com www.txmq.com

www.uvsoftware.ca

Travancore Software Solutions

• Onshore & offshore IT software services

• Mainframe support, web enabling, etc

• Partnering with UV Software & TxMQ– For Mainframe migrations to open systems

• HQ Trivandrum, Kerala, India

• Contact Shyam Subramanyam– Shyam@travancore.net www.travancore.net

www.uvsoftware.ca

Why Migrate to Unix/Linux ?• Increase Performance• Reduce Cost:

– Linux systems less expensive than proprietary Mainframes

• Reduce Risk: – migrating existing systems is less risky than

rewrites or new package implementations

• Preserve legacy logic:– Proven & customized over many years

www.uvsoftware.ca

Vancouver Utilities Contents

• JCL conversion to Korn shell scripts

• COBOL porting to Micro Focus COBOL

• Data conversion from EBCDIC to ASCII

• General purpose DATA utilities for unix

www.uvsoftware.ca

Conversion Methods• Unix, Linux, or Windows/SFU environment

• Mass conversion of all files in directories

• Scripts convert thousands of files quickly

– 1000 JCLs (2 minutes)

– 250 programs (3 minutes)

– Script to compile 250 programs (2 minutes)

– Generate 200 data conversion jobs (1 minute)

– Execute 200 file conversions (5 gig, 1 hour)

www.uvsoftware.ca

JCL Conversion - Highlights• DDN/DSN converted to Export DDN=DSN• SORT/SYNCSORT converted to ‘uvsort’• IEBGENER/IDCAMS converted to ‘uvcp’• GDG files converted to ksh functions• Console logging• Micro Focus COBOL animation made easy• Replacements for Ditto, Dyl280, Easytrieve• $RUNDATA/$RUNLIBS testing/production• Laser scripts, 132 cols x 66 lines on 8½ x 11

www.uvsoftware.ca

JCL Conversion Example #1

• sample JCL & script (1 step COBOL)

• Korn shell script equivalent

www.uvsoftware.ca

JCL Conversion Ex#2 (SORT)

• sample JCL & script (SORT/uvsort)

• Ksh script (uvsort + cobol)

www.uvsoftware.ca

SyncSort conversion to ‘uvsort’

• Syncsort functionality at lower cost

• INCLUDEs, OMITs, SUMs, OUTREC, etc.

• Uvsort sels, dels, sums, mvcs, etc.

• sample INCLUDE AND/OR conditions

www.uvsoftware.ca

JCL Conversion #3 (GDG files)

• GDG files supported by ksh functions

• exportgen0, exportgen1, exportgenp

• sample JCL & script with GDG files

• Korn shell script equivalent

www.uvsoftware.ca

IEBGENER & IDCAMS

• IEBGENER converted to ‘uvcp’

• IDCAMS REPRO converted to ‘uvcp’

• IEBGENER & IDCAMS JCL sample

• Korn shell script equivalent

www.uvsoftware.ca

COBOL porting to Micro Focus

• Not much to do, but saves manual editing• Insert EXTERNAL on select/assign stmts• Translate to lower case except in quotes

– more modern appearance– easier to edit with unix/linux editors (vi,etc)

• Insert detail file status test code– For Micro Focus extended file status display

www.uvsoftware.ca

Data Conversion

• Translate EBCDIC to ASCII– Preserving packed/binary fields– Correcting zoned signs to ASCII standards

• Conversion jobs generated from copybooks– and LISTCAT file specs

• 1 script to generate all conversion jobs

• 1 command to convert all data files

www.uvsoftware.ca

Data Conversion Example

• Data conversions generated from copybooks Sample copybook (citytax1.cpy)

• CobMap record layout from copybook Sample cobmap (citytax.map)

• Data conversion job (uvcopy) Sample uvcopy data conversion job (citytax1.uv)

www.uvsoftware.ca

Data File specs from LISTCAT

• LISTCAT info completes conversion jobs– Info added to copybook/cobmap/uvcopy job– Data filename, file type, Indexed keys

Sample LISTCAT & extracted control file

uvcopy job completed by control file

www.uvsoftware.ca

Converting flat files to RDBMS• Convert data to pipe delimited text files

– Packed/binary fields edited signs & decimal pts

• Packed/binary fields unpacked & edited– Conversion jobs auto-gen’d from copybooks

• SQL loader control file also generated• Sample pipe delimited output file• Sample uvcopy job to perform pipe delimit• Sample loader control file

www.uvsoftware.ca

Conversion Directories

• For JCL,COBOL,& Data conversions

• Conversion Libraries

• Data directories for testing or production

• sample test data subdirs

www.uvsoftware.ca

Scripts to convert All JCL/COBOL/DATA

• jcl2ksh5A – convert All JCL to ksh

• cnvMF5A – convert all COBOL to Micro Focus

• gencnvC - generate all Data conversion jobs

• uvcopyxx ‘pfx2/*’ - execute all data convert jobs

www.uvsoftware.ca

Scripts to convert 1 JCL/COBOL/DataFile

• jcl2ksh51 – convert 1 JCL to ksh• cnvMF51 – convert 1 program to MicroFocus

• gencnvB – convert 1 datafile to ASCII

• genpipeA – convert 1 file to pipe-delimited

• uvcopy pfx3/datafilename – execute 1 conversion job

www.uvsoftware.ca

Testing & Debugging Aids

• uvhd & uvhdcob – data file investigation– Browse, search, update, print, etc

• uvhd – sample EBCDIC file display– uvhd dat1ebc/custmas1 r256s3a

• uvhd – sample ASCII file display– uvhd dat2asc/custmas1 r256s3

• uvhdcob – sample record display– uvhdcob dat2asc/custmas1 maps/custmas1

www.uvsoftware.ca

COBOL Cross-References

• xcobcall1 – list called programs in each program• xcobcall2 – crossref programs calling any 1 program• xcobcopy1 – list copybooks in each program• xcobcopy2 – crossref programs using any 1 copybook

• cobfiles - COBOL files report – organization, access, open-mode, recsize, copybook,

www.uvsoftware.ca

JCL Cross-References

• xjkshfile1 – list datafiles in each JCL/script• xjkshfile2 – crossref programs using any 1 datafile• xjkshprog1 – list programs in each JCL/script• xjkshprog2 – crossref JCL/scripts using any 1 program

• Jobflow reports – generated from JCL + COBOL programs– Show file I/O from step to step in multi-step jobs– Sample jobflow report

www.uvsoftware.ca

Converting DYL280 to uv…

• Sample#1 – file init (write 1 blank/zero rec)Mainframe DYL280 code

Equivalent uvcp

Equivalent uvcopy

• Sample#2 – add records to an indexed fileMainframe DYL280 code

Equivalent uvcopy

www.uvsoftware.ca

Pre-Programmed jobs (uvcopy)• table2 – table summaries by arguments

– Table entries limited only by memory– Table dumped at EOF in argument sequence– Percentages on every line of 100% total line

• Sample input data file• Sample table summary report• Operating instructions & console displays• uvcopy job equivalent

www.uvsoftware.ca

Replacements for Mainframe Utilities

• Uvqrpg – Report Generator– up to 8 page headings & footers– up to 8 control break fields & total levels– up to 100 accumulators per level– built in sort

• Sample input file• Sample output report• Sample uvqrpg code

www.uvsoftware.ca

Free Sample Conversions

• Email sample JCL for conversion – Korn shell scripts returned within 48 hours

• Send 1 zip file including:– Up to 10 JCLs (representative variety)– Any referenced PROCs– Any control cards (SYSIN library modules)– for SORT FIELDS, IKJEFT01 params, etc

• Email to owen@uvsoftware.ca

www.uvsoftware.ca

Conversion Plan – phase 1

• Training & Conversion jumpstart– 3 or 4 weeks of onsite assistance– by UVSI, TxMQ, or Travancore personnel– Train customer team to use conversion tools– Convert all JCLs, COBOLs,& Data files– Test/debug 1st few JCL/scripts & programs

www.uvsoftware.ca

Conversion plan – phase 2 & 3

• Testing & Debugging– 3 to 12 months depending on project size– By customer conversion team– aided by TxMQ or Travancore as desired

• Go Live– Usually over a weekend