IBM Mainframe Forum Index
 
Log In
 
IBM Mainframe Forum Index Mainframe: Search IBM Mainframe Forum: FAQ Register
 

IEC151I when reading from multi-volume cart


IBM Mainframe Forums -> JCL & VSAM
Post new topic   Reply to topic
View previous topic :: View next topic  
Author Message
hyao

New User


Joined: 08 Sep 2005
Posts: 3

PostPosted: Thu Mar 09, 2006 11:05 am
Reply with quote

I am getting a problem IEC151I

//STEP02 EXEC PGM=IEBGENER
//SYSPRINT DD SYSOUT=*
//TAPE2 DD DSN=CDPRODT.MBACK.BACKUPS(0),DISP=SHR
//SYSUT1 DD DSN=CDPRODT.EXTULT.TAHTBL,DISP=SHR,
// UNIT=CART,LABEL=11,VOL=REF=*.TAPE2
//SYSUT2 DD DSN=CDUSER.RPT44.TAHTBL,
// DISP=(NEW,CATLG,DELETE),
// UNIT=DISK,SPACE=(CYL,(10,5)),
// DCB=(RECFM=FB,LRECL=252,BLKSIZE=32760)
//* DCB=(AMP1.MDSCB,RECFM=FB,LRECL=252,BLKSIZE=32760)
//SYSIN DD DUMMY

The dataset is on a multi-volume multi-file cart, it is on the second volume, and is labelled 11..

How do I code the job so that it can read the dataset which is on the 2nd volume without having to hardcode the volume serial number.

I know we can substitute the volumes as VOL=SER=(TAPE1,TAPE2), but it won't work in our environment, because are jobs are automated, and we cannot use hardcoded volume-serial numbers.

Can anyone help , please ! Thank You
Back to top
View user's profile Send private message
martin9

Active User


Joined: 01 Mar 2006
Posts: 290
Location: Basel, Switzerland

PostPosted: Thu Mar 09, 2006 8:31 pm
Reply with quote

what is the problem?
you should provide the error message...
why you make a referback to dd tape2,
giving a ful y qualified dataset-name for dd
sysut1?

martin9
Back to top
View user's profile Send private message
hyao

New User


Joined: 08 Sep 2005
Posts: 3

PostPosted: Fri Mar 10, 2006 4:28 am
Reply with quote

IEF403I YAOHYQVP - STARTED - TIME=09.49.27
IEF233A M 4426,531494,,YAOHYQVP,STEP02,CDPRODT.MBACK.BACKUPS.G0076V00
IEC151I A13-18,IFG0195B,YAOHYQVP,STEP02,SYSUT1,4426,531494,CDPRODT.EXTULT.TAHTBL
IEA995I SYMPTOM DUMP OUTPUT 799
SYSTEM COMPLETION CODE=A13 REASON CODE=00000018
TIME=09.49.29 SEQ=52944 CPU=0000 ASID=0351
PSW AT TIME OF ERROR 075C1000 80E66B92 ILC 2 INTC 0D
NO ACTIVE MODULE FOUND
NAME=UNKNOWN
DATA AT PSW 00E66B8C - 41003B32 0A0D41F0 388A56F0
AR/GR 0: 80C3DB60/00E66E44 1: 00000000/A4A13000
2: 00000000/000084B8 3: 00000000/00E66312
4: 00000000/009DD410 5: 00000000/009DD7A4
6: 00000000/009DD74C 7: 00000000/009DD7A4
8: 00000000/009DD76C 9: 00000000/009C7BC8
A: 00000000/00E6810A B: 00000000/00E68A4C
C: 00000000/80E68B20 D: 00000000/009DD6D0
E: 00000000/80E66442 F: 00000000/00000018
END OF SYMPTOM DUMP
IEF450I YAOHYQVP STEP02 - ABEND=SA13 U0000 REASON=00000018 800
TIME=09.49.29
IEF234E K 4426,531494,PVT,YAOHYQVP,STEP02


******

The reason for making a refer back to TAPE2, is that the file that we need is in the label11 of the actual mainfile
CDPRODT.MBACK.BACKUPS.G0076V00

******
The TMS enquiry shows..

06.069
VOLSER = 531494 ACTVOL= SMSMC= MCVTAPED
DSN = CDPRODT.MBACK.BACKUPS.G0076V00 DSN17= .BACKUPS.G0076V00
EXPDT = CATALOG ACCT= HEXZEROS
FLAG1 = 41 = (CLO,RDS) BATCHID= 00 =
FLAG2 = 80 = (CAT) HOOKID = 08 = OP SL IN
FLAG3 = 02 = (MTF) EDMID =
FLAG4 = 08 = (OSC) FLAG5 = 00 =
CDATE = 06/03/2006 CJOB = CD#CY66M CTIME = 1347 CPGM = IEBGENER
LDATE = 09/03/2006 LJOB = CD#0SDCA LTIME = 1158 LPGM = SYNCSORT
CSTEP = CDCY6601 CDDNAME= SYSUT2 CUNIT = 442B LUNIT = 440F
OUTDATE= ZEROS OUTCODE= SLOT = 0000000 TRERRC = 00000
BTHDATE= 10/08/1999 VENDOR = HEXZEROS COUNT = 00193 TWERRC = 00000
DATECLN= ZEROS USECLN = 00000 CLNCNT = 000 TRERRI = 00000
VOLSEQ = 0001 ROBTY = ROBID = 000 TWERRI = 00000
1STVOL = 531494 NEXTVOL= 531650 PREVVOL= PRERRC = 00000
NUMDSNB= 0009 1STDSNB= 0092168 LSTDSNB= 0099326 PWERRC = 00000
LABEL = SL DEN = 38KC TRTCH = 36X2 PRERRI = 00000
RECFM = F LRECL = 000080 BLKSIZE= 000080 PWERRI = 00000
AUDATE = 09/03/2006 AUTIME = 1158 BLKCNT = 0000000000
AUCODE = 01 AUFLAG1= 00 CPUID = AMP1 USERID = CD#ESP
VOLPERC= 000 FILPERC= 000 COMPRES= 000 CTLGCNT= 001


Second page of TMS enquiry when 'file' is selected.

FILE VOLUME
SEQ SERIAL DSNB DATA SET NAME

0002 531494 0092168 CDPRODT.EXTULT.TCOTBL
0003 531494 0042428 CDPRODT.EXTULT.TNATBL
0004 531494 0081524 CDPRODT.EXTULT.TPOTBL
0005 531494 0038959 CDPRODT.EXTULT.TPOAGTBL
0006 531494 0092365 CDPRODT.EXTULT.TPOCLTBL
0007 531494 0082383 CDPRODT.EXTULT.TPTTBL
0008 531494 0036089 CDPRODT.EXTULT.TRLTBL
0009 531494 0000329 CDPRODT.EXTULT.TRTTBL
0010 531494 0099326 CDPRODT.EXTULT.TPVTBL
0011 531650 0091911 CDPRODT.EXTULT.TAHTBL

If you note the dataset CDPRODT.EXTULT.TAHTBL is actually in the volume 531650, while the main dataset
CDPRODT.MBACK.BACKUPS.G0076V00 IS IN VOLUME 531494


So this is a multi-volume, multi-file type of backup.... Reason why the backup is done this way is to save on cost of tape cartridges....

The problem is because when label 11 is being accessed, it is actually in the volume 531650, while the referback refers to the volume 531494....

The dataset name in SYSUT1 is the one on label11 of the backup in
CDPRODT.MBACK.BACKUPS...

If I don't have a referback, and it won't know where it is stored, because the catalog doesn't know CDPRODT.EXTULT.TAHTBL... it only knows it as part of the backup CDPRODT.MBACK.BACKUPS(0).


Hope this information clarifies.

Thank you .....
Back to top
View user's profile Send private message
hyao

New User


Joined: 08 Sep 2005
Posts: 3

PostPosted: Thu Mar 16, 2006 6:37 am
Reply with quote

This problem occurs when the dataset is not in the catalog entries, although, it may be seen within TMS enquiry, it doesn't really exist in the catalog.... The problem is the job that creates it, actually fails, but doesn't abend, as such it didn't write the catalog entry.... Check the job that creates it, and if it fails, try to fix the problem of failure. In this case, it appears that the job failed because it is trying to write to a dataset which exist as a catalog gdg base....
Back to top
View user's profile Send private message
martin9

Active User


Joined: 01 Mar 2006
Posts: 290
Location: Basel, Switzerland

PostPosted: Thu Mar 16, 2006 6:12 pm
Reply with quote

hy hyoa,

as i understand,
so have a gdg base on tape, where you backup certain datasets on it.
therefore, how did you make this backup, please
tell me the utility, because it might be possible,
that you have to unload the backuped datasets
also with the same utility, for that you have access later...

martin9
Back to top
View user's profile Send private message
View previous topic :: :: View next topic  
Post new topic   Reply to topic View Bookmarks
All times are GMT + 6 Hours
Forum Index -> JCL & VSAM

 


Similar Topics
Topic Forum Replies
No new posts Reading dataset in Python - New Line ... All Other Mainframe Topics 22
No new posts Find the size of a PS file before rea... COBOL Programming 13
No new posts Convert single row multi cols to sing... DFSORT/ICETOOL 6
No new posts Volume chain using DFSORT DFSORT/ICETOOL 17
No new posts Code Multi Row fetch in PL1 program PL/I & Assembler 1
Search our Forums:

Back to Top