RE: Open Empty VSAM File

New Message Reply Date view Thread view Subject view Author view Other groups

Subject: RE: Open Empty VSAM File
From: Huegel, Thomas (THuegel@Kable.com)
Date: Wed Oct 01 2008 - 15:36:09 EDT


Billy,
I'm not sure if the list allows attachments so I sent it to your email also.
Good luck with it.

Tom

-----Original Message-----
From: owner-vse-l@Lehigh.EDU [mailto:owner-vse-l@Lehigh.EDU]On Behalf Of
Billy R. Bingham
Sent: Wednesday, October 01, 2008 12:32 PM
To: VSE Discussion List
Subject: RE: Open Empty VSAM File


Thomas,

I would like to have a copy of that program.


Thanks,

Billy
---- "Huegel wrote: 
> I actually found a version of my little program, this one executes standalone in batch.
> Probably no big deal to make it callable from a phase.
> It is over 20 yrs. old and may need some updating to reflect the current version of VSAM and VSE.
> This is what the job stream might look like.
> 
> 
> // DLBL TESTACB,'CICS.RSD',,VSAM,CAT=PRDCAT1  
> // EXEC ACMTSTCB,SIZE=AUTO,PARM='DATA NCIS 50'
> // IF $RC = 2 THEN                            
> // GOTO NOFMTRSD                              
> * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
> *   RETURN CODES                                                      *
> *      CATALOG EQUAL (=) PARAMETER RC = 01                            *
> *      CATALOG LESS THAN (<) PARAMETER RC = 02                        *
> *      CATALOG GREATER THAN (>) PARAMETER RC = 03                     *
> * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
> 
> If you want to mess with it I can give you the source... NO GUARANTIES !!!
> 
>   
> 
> -----Original Message-----
> From: owner-vse-l@Lehigh.EDU [mailto:owner-vse-l@Lehigh.EDU]On Behalf Of
> Kevin Corkery
> Sent: Wednesday, October 01, 2008 11:16 AM
> To: VSE Discussion List
> Subject: RE: Open Empty VSAM File
> 
> 
> In the job output below I show the differences in return codes for opening a
> VSAM file in FCOBOL versus COBOL for VSE.  In the first case the file is
> defined as a VSAM ESDS but remains empty.  The FCOBOL returns a successful
> open and an "end of file" on the first read and a successful close.  The
> VSE/COBOL returns the "35" status and of course, an appropriate bad status
> for the read and the close indicating that the file is not open.  I then
> place a record into the file and repeat the test getting the normal "00"
> status is all cases since the file looks just fine at this point.  I seem to
> recall this issue when we changed some of our FCOBOL programs to VSE/COBOL
> since the original code expected the immediate "end-of-file" condition not
> the alternative series of return codes.  By the way, the return codes are
> the same if there is no data in the file, regardless of the file being
> previously open for output.  I usually test for data in a file using IDCAMS
> PRINT to attempt to print a single record and then checking the return code
> for zero which indicates data exists I can then make a decision about
> skipping job steps, etc. 
> 
> 
> 
> // JOB     COBTESTX < TEST DIFFERENCES >  DATE 10/01/2008, CLOCK 11/50/40
> // EXEC    PROC=JUNKCAT
> // DLBL    IJSYSUC,'VSESP.JUNK.CATALOG',,VSAM,CAT=IJSYSCT,BUFSP=65536
> JUNK0001
> EOP JUNKCAT
> // EXEC    IDCAMS
> 1S54I  PHASE IDCAMS   IS TO BE FETCHED FROM IJSYSRS.SYSLIB
> IDCAMS  SYSTEM SERVICES                   TIME: 11:50:40        10/01/2008
> PAGE   1
>  
>    DELETE  CORK.IDCAMS.CARDFILE CLUSTER PURGE
> IDC0550I ENTRY (C) CORK.IDCAMS.CARDFILE DELETED
> IDC0550I ENTRY (D) CORK.IDCAMS.CARDFILE.DATA DELETED
> IDC0001I FUNCTION COMPLETED, HIGHEST CONDITION CODE WAS 0
>  
>    SET     MAXCC = 0
>  
>    DEFINE  CLUSTER(NAME(CORK.IDCAMS.CARDFILE)       -
>                    MODEL(DEFAULT.MODEL.ESDS)        -
>                    REC(100 100) RECSZ(080 080)      -
>                    REUSE DEFAULTVOLUMES)            -
>                DATA(NAME(CORK.IDCAMS.CARDFILE.DATA))
> IDC0001I FUNCTION COMPLETED, HIGHEST CONDITION CODE WAS 0
>  
>    IF      LASTCC > 0 THEN CANCEL JOB
> IDC0204I PRECEDING COMMAND BYPASSED DUE TO CONDITION CODES
>  
> IDC0002I IDCAMS PROCESSING COMPLETE. MAXIMUM CONDITION CODE WAS 0
>  
> 1S55I  LAST RETURN CODE WAS 0000
> // EXEC    PROC=JUNKCAT
> // DLBL    IJSYSUC,'VSESP.JUNK.CATALOG',,VSAM,CAT=IJSYSCT,BUFSP=65536
> JUNK0001
> EOP JUNKCAT
> // DLBL    INPUT,'CORK.IDCAMS.CARDFILE',,VSAM,DISP=OLD
>  
> // EXEC    COBTESTF
> 1S54I  PHASE COBTESTF IS TO BE FETCHED FROM MKC.TEST
> COBTEST FCOBOL
> OPEN STATUS IS 00
> READ STATUS IS 10
> ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
> ++++
> CLOSE STATUS IS 00
>  
> // EXEC    COBTESTV
> 1S54I  PHASE COBTESTV IS TO BE FETCHED FROM MKC.TEST
> COBTEST VSE/COBOL
> OPEN STATUS IS 35
> READ STATUS IS 47
> ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
> ++++
> CLOSE STATUS IS 42
>  
> 1S55I  LAST RETURN CODE WAS 0000
> // EXEC    PROC=JUNKCAT
> // DLBL    IJSYSUC,'VSESP.JUNK.CATALOG',,VSAM,CAT=IJSYSCT,BUFSP=65536
> JUNK0001
> EOP JUNKCAT
> // DLBL    OUTPUT,'CORK.IDCAMS.CARDFILE',,VSAM,DISP=NEW
>  
> // EXEC    IDCAMS
> 1S54I  PHASE IDCAMS   IS TO BE FETCHED FROM IJSYSRS.SYSLIB
> IDCAMS  SYSTEM SERVICES                   TIME: 11:50:41        10/01/2008
> PAGE   1
>  
>    REPRO   IFILE(SYSIPT) OFILE(OUTPUT)
> IDC0005I NUMBER OF RECORDS PROCESSED WAS 1
> IDC0001I FUNCTION COMPLETED, HIGHEST CONDITION CODE WAS 0
>  
> IDC0002I IDCAMS PROCESSING COMPLETE. MAXIMUM CONDITION CODE WAS 0
>  
> 1S55I  LAST RETURN CODE WAS 0000
> // EXEC    PROC=JUNKCAT
> // DLBL    IJSYSUC,'VSESP.JUNK.CATALOG',,VSAM,CAT=IJSYSCT,BUFSP=65536
> JUNK0001
> EOP JUNKCAT
> // DLBL    INPUT,'CORK.IDCAMS.CARDFILE',,VSAM,DISP=OLD
>  
> // EXEC    COBTESTF
> 1S54I  PHASE COBTESTF IS TO BE FETCHED FROM MKC.TEST
> COBTEST FCOBOL
> OPEN STATUS IS 00
> READ STATUS IS 00
> THIS IS A DUMMY RECORD IN THE ACTUAL VSAM FILE.
> CLOSE STATUS IS 00
>  
> // EXEC    COBTESTV
> 1S54I  PHASE COBTESTV IS TO BE FETCHED FROM MKC.TEST
> COBTEST VSE/COBOL
> OPEN STATUS IS 00
> READ STATUS IS 00
> THIS IS A DUMMY RECORD IN THE ACTUAL VSAM FILE.
> CLOSE STATUS IS 00
>  
> 1S55I  LAST RETURN CODE WAS 0000
>  
> EOJ COBTESTX  MAX.RETURN CODE=0000                                  DATE
> 10/01/2008, CLOCK 11/50/41, DURATION   00/00/01
> 
> 




New Message Reply Date view Thread view Subject view Author view Other groups

This archive was generated by hypermail 2b25 : Mon Oct 13 2008 - 08:50:07 EDT