This article discusses how to convert ISAM files to another format since IBM discontinued ISAM support as of z/OS 1.7.
Solution:
IBM discontinued support of ISAM files as of z/OS 1.7.
If you have still have ISAM files, they can easily be converted to other formats using VISION:Builder. Since ISAM files are always keyed, KSDS VSAM will likely be the most common usage.
A job like the following would be executed under a z/OS release prior to z/OS 1.7 that still supports ISAM. This job reads in an ISAM file and writes the entire records out to a KSDS VSAM file. The VSAM cluster definition would have been predefined using IDCAMS.
Note the use of free-form M4INPUT syntax which has been available for several VISION:Builder releases.
//CONVERT EXEC PGM=MARKIV //STEPLIB DD DISP=SHR,DSN=builder15.loadlib //M4LIB DD DISP=SHR,DSN=your.m4lib //M4LIST DD SYSOUT=* //M4OLD DD DISP=SHR,DSN=oldISAMfile //M4SUBF1 DD DISP=OLD,DSN=newVSAMdsn //M4INPUT DD * CONTROL FILE MASTER INPUT NAME oldisamFDname FILE SUBF1 NAME subvsam EXTRACT FILE subvsam ENTIRE O RECFM KEYVSAM /*
If the ISAM files are used in existing VISION:Builder applications, existing File Definitions would change column 21 of the FD statement from I (fixed ISAM) or J (variable ISAM), to the new format, in this example, K (KSDS VSAM). No changes need be made to the applications that read these files, only this simple change to the File Definition.
Any existing VISION:Builder applications that create ISAM subfiles would change the I or J in column 56 on the E1 (or En) to a record format supported by z/OS such as E (ESDS VSAM), K (KSDS VSAM), F (fixed length sequential) or V (variable blocked sequential). VISION:Builder supports more formats such as DLI and DB2, but these are the most logical to minimize impact to existing applications.
This example shows a fixed-format statement from a legacy system that creates an ISAM subfile.
The statement is modified to create an ESDS VSAM subfile.
SUBFILE E1 NRNFILENAME6000J
to
SUBFILE E1 NRNFILENAME6000K