Troubleshooting
Problem
You are in the process of testing a VSAM file converted to DB2 using CICS VSAM Transparency for z/OS (CICS VT). You used the automated process to convert the Base cluster. You also converted the alternate indexes (AIX). Now, when you try to access an AIX (path) with a batch job the program abends with ERR001 CODE 39.
Symptom
It was not until after you ran the automated process to convert the Base cluster that you found out that the file had 2 alternate indexes. You tried to manually convert the alternate indexes using the mapping alternate index procedure explained in the user guide. You ran the VIDPATHJ job, created the DB2 indexes, and generated DIM and DDM.
These are the messages that you receive when trying to access the AIX:
VIDSS200 SUBSYSTEM NAME=ssi OPENING DDNAME=KSDSAIX
VIDSS201 SUBSYSTEM NAME=ssi CLOSING DDNAME=KSDSAIX
ERR001 VSAM "OPEN " ERROR ON "KSDSAIX" CODE=39
S0010 070618132803001*ERR001 VSAM "OPEN " ERROR ON "KSDSAIX" CODE=39
Cause
The OPEN was unsuccessful because a conflict was detected between the fixed file attributes and the attributes specified for that file in the program. These attributes include the organization of the file (sequential, relative, or indexed), the prime record key, the alternate record keys, the code set, the maximum record size, the record type (fixed or variable), and the blocking factor.
Diagnosing The Problem
The error code 39 for an OPEN indicates a mismatch between how the program views the file and what is actually returned from an attempted OPEN.
Resolving The Problem
Create a "dummy" VSAM object for ALL of the real VSAM objects.
In this example, KSDS001 is the DD statement for the base cluster, and KSDSAIX is the DD statement for an alternate index path:
//KSDS001 DD SUBSYS=(ssi,db2id,dimname)
//KSDS001@ DD DSN=ITEMDET.VID.DUMMY,DISP=SHR
//KSDSAIX DD SUBSYS=(ssi,db2id,dimname)
//KSDSAIX@ DD DSN=ITEMDET.VID.DUMMY,DISP=SHR
Define a DUMMY AIX and PATH against ITEMDET.VID.DUMMY with the same attributes as the real VSAM file.
The KSDSAIX@ DD statement must point to the DUMMY PATH dataset. It must be the PATH dataset because COBOL verifies that the Key attributes returned from the OPEN match those declared in the program.
Related Information
Product Synonym
CICSVT CICS VT CICS/VT
Was this topic helpful?
Document Information
Modified date:
22 June 2018
UID
swg21266035