Portal | Manuals | References | Downloads | Info | Programs | JCLs | Master the Mainframes
IBM Mainframe Computers Forums Index
 
Register
 
IBM Mainframe Computers Forums Index Mainframe: Search IBM Mainframe Forum: FAQ Memberlist Usergroups Profile Log in to check your private messages Log in
 

 

Invalid record format error while try to view a PDS

 
Post new topic   Reply to topic    IBMMAINFRAMES.com Support Forums -> JCL & VSAM
View previous topic :: :: View next topic  
Author Message
sureshmurali
Warnings : 1

New User


Joined: 25 Nov 2010
Posts: 70
Location: Sivakasi, India

PostPosted: Wed Jan 05, 2011 9:56 pm    Post subject: Invalid record format error while try to view a PDS
Reply with quote

Hi I have created a new pds and copied it from an existing PDS using the following jcl :

//STEP10 EXEC PGM=IEBCOPY
//SYSPRINT DD SYSOUT=*
//SYSUT1 DD DSN=XXUF511.COBOL.PROGRAMS,
// DISP=OLD
//SYSUT2 DD DSN=XXUF511.COBOL.PROGRAM1,
// DISP=(NEW,CATLG,DELETE)
//SYSIN DD *
COPY INDD=SYSUT1,
OUTDD=SYSUT2
/*


In the SYSPRINT of SPOOL i see this :

IEB154I COMPILE HAS BEEN SUCCESSFULLY UNLOADED
IEB154I COMPILE1 HAS BEEN SUCCESSFULLY UNLOADED
IEB154I DATA1 HAS BEEN SUCCESSFULLY UNLOADED
IEB154I DATA2 HAS BEEN SUCCESSFULLY UNLOADED
IEB154I DISPLAY HAS BEEN SUCCESSFULLY UNLOADED
IEB154I ERRMSG HAS BEEN SUCCESSFULLY UNLOADED
IEB154I FILES HAS BEEN SUCCESSFULLY UNLOADED
IEB154I IEBCOPY HAS BEEN SUCCESSFULLY UNLOADED
IEB154I IEBGENER HAS BEEN SUCCESSFULLY UNLOADED
IEB154I KSDS HAS BEEN SUCCESSFULLY UNLOADED
IEB154I ROUGH HAS BEEN SUCCESSFULLY UNLOADED
IEB154I RUNJCL HAS BEEN SUCCESSFULLY UNLOADED
IEB154I RUNJCL1 HAS BEEN SUCCESSFULLY UNLOADED
IEB154I SAMPLE HAS BEEN SUCCESSFULLY UNLOADED
IEB154I ZALTERDO HAS BEEN SUCCESSFULLY UNLOADED
IEB1098I 15 OF 15 MEMBERS UNLOADED FROM INPUT DATA SET REFERENCED BY SYSUT1
IEB147I END OF JOB - 0 WAS HIGHEST SEVERITY CODE

Then while trying to view the new pds XXUF511.COBOL.PROGRAM1, it is showing the message "Invalid record format " in the right corner of the screen. What could be the issue?
Is it mandatory to give the DCB parameters value for the SYSUT2 dataset?
Will it not automatically copied it from the SYSUT1 dataset?

Please clarify.

Thanks
Back to top
View user's profile Send private message

dick scherrer

Site Director


Joined: 23 Nov 2006
Posts: 19270
Location: Inside the Matrix

PostPosted: Wed Jan 05, 2011 10:03 pm    Post subject:
Reply with quote

Hello,

Some utilities copy the input dcb info if none is specified for the output - some do not.

Suggest you run the job again specifying the output dcb info. . .
Back to top
View user's profile Send private message
sureshmurali
Warnings : 1

New User


Joined: 25 Nov 2010
Posts: 70
Location: Sivakasi, India

PostPosted: Wed Jan 05, 2011 10:30 pm    Post subject:
Reply with quote

Yeah Thanks Dick. It didnt worked out with the parameters i tried.
The source pds has the following DCB + others:

Organization . . . : PO
Record format . . . : FBA
Record length . . . : 80
Block size . . . . : 800
1st extent tracks . : 1
Secondary tracks . : 3
Data set name type : PDS

//SYSUT2 DD DSN=XXUF511.COBOL.PROGRAM1,
// DISP=(NEW,CATLG,DELETE),
// DCB=(LRECL=80,BLKSIZE=0,RECFM=FB)

I just included the DCB parameters. But when i J scanned the jcl, it is showing the following error msg :

JCL RECFM 'FB' DOES NOT MATCH THE VOLUME ENTRY RECFM
'VS'.


So i set the RECFM=VS in the DCB and ran the jcl. MAXCC=0.

But still the same message "Invalid record format " occurs.

Does it mean that, if i didnt mention the volume for the new PDS , it is trying to create the file in the default volume and that volume has its own RECFM=VS? What could be the issue behind the same error? What should i update on the DCB parameters?

Please clarify
Back to top
View user's profile Send private message
Robert Sample

Global Moderator


Joined: 06 Jun 2008
Posts: 7932
Location: Bellevue, IA

PostPosted: Wed Jan 05, 2011 10:41 pm    Post subject:
Reply with quote

Since you specified neither directory blocks in your SPACE parameter nor DSORG=PO for your output file, IEBCOPY assumed that the output file is a sequential file, NOT a PDS.

IEBCOPY unloads PDS files to sequential files by setting the LRECL of the output file to 16 more than the blksize of the input PDS, or 816 in your case, and the BLKSIZE becomes 820 since the RECFM is set to VS. There is control information included in the unloaded PDS, so it is not human readable data.

Are you attempting to copy a PDS to a PDS? PDS to sequential file (and if so, IEBCOPY unload format or something else)?
Back to top
View user's profile Send private message
dick scherrer

Site Director


Joined: 23 Nov 2006
Posts: 19270
Location: Inside the Matrix

PostPosted: Thu Jan 06, 2011 12:13 am    Post subject:
Reply with quote

Hello,

IEBCOPY is one of the oldest utilities still in use. . .

It is not as friendly as most of the newer utilities. . .

In fact (in the rare instances that i've used IEBCOPY to copy members from one pds to a new pds), i always use the same dcb info for the new one. IIRC, i've not used it since that last of the Y2K work i helped with.
Back to top
View user's profile Send private message
sureshmurali
Warnings : 1

New User


Joined: 25 Nov 2010
Posts: 70
Location: Sivakasi, India

PostPosted: Thu Jan 06, 2011 10:52 pm    Post subject:
Reply with quote

I was attempting to copy from PDS to PDS only.
Quote:
Are you attempting to copy a PDS to a PDS? PDS to sequential file (and if so, IEBCOPY unload format or something else)?

Here you mean the sequential file is PS file only, right?
Back to top
View user's profile Send private message
sureshmurali
Warnings : 1

New User


Joined: 25 Nov 2010
Posts: 70
Location: Sivakasi, India

PostPosted: Thu Jan 06, 2011 11:06 pm    Post subject:
Reply with quote

I just updated the program with the following :

// SPACE=(TRK,(10,20),RLSE),
// DCB=(LRECL=80,BLKSIZE=0,RECFM=VS,DSORG=PO)

After run, it is MAXCC=8.

DD NAME SYSUT2 IS SUPPOSED TO BE A PARTITIONED DATA SET BUT IT HAS NO DIRECTORY. EXPECT A TERMINAL I/O
ERROR. (DS1LSTAR=X'000000' DS1DSORG=X'0200' JFCDSORG=X'0200')

Do i need to mention anything more ?

Please clarify.

Thanks
Back to top
View user's profile Send private message
Robert Sample

Global Moderator


Joined: 06 Jun 2008
Posts: 7932
Location: Bellevue, IA

PostPosted: Thu Jan 06, 2011 11:27 pm    Post subject:
Reply with quote

Code:
// SPACE=(TRK,(10,20),RLSE),
needs to have some directory blocks specified -- 10,20,20 for example to allocate 20 directory blocks.

Quote:
Here you mean the sequential file is PS file only, right?
PS means "physical sequential"
Back to top
View user's profile Send private message
Bill Dennis

Active Member


Joined: 17 Aug 2007
Posts: 562
Location: Iowa, USA

PostPosted: Fri Jan 07, 2011 7:56 am    Post subject:
Reply with quote

After adding directory blocks to SPACE parameter be sure to change RECFM back to FB.
Back to top
View user's profile Send private message
Pete Wilson

Active User


Joined: 31 Dec 2009
Posts: 437
Location: London

PostPosted: Thu Jan 27, 2011 9:47 pm    Post subject:
Reply with quote

Try this, it will create your target dataset modelled on the source file DCB attributes.
//SYSUT2 DD DSN=XXUF511.COBOL.PROGRAM1,
// DISP=(NEW,CATLG,DELETE),
// LIKE=XXUF511.COBOL.PROGRAMS
Back to top
View user's profile Send private message
View previous topic :: :: View next topic  
Post new topic   Reply to topic    IBMMAINFRAMES.com Support Forums -> JCL & VSAM All times are GMT + 6 Hours
Page 1 of 1

 

Search our Forum:

Similar Topics
Topic Author Forum Replies Posted
No new posts INVALID FIELD OR CONSTANT IN SORTOF ?? Ron Klop DFSORT/ICETOOL 8 Wed Jan 11, 2017 3:44 pm
No new posts OO COBOL compile error Virendra Shambharkar COBOL Programming 3 Tue Jan 10, 2017 6:05 pm
No new posts S922 Error yuvan ABENDS & Debugging 3 Fri Dec 02, 2016 6:58 pm
No new posts Invoke Webservice Fails with DFHPI100... divated CICS 2 Thu Nov 24, 2016 5:57 pm
No new posts How to update a portion of text in a ... Bill Woodger DFSORT/ICETOOL 25 Wed Nov 09, 2016 9:41 pm


Facebook
Back to Top
 
Mainframe Wiki | Forum Rules | Bookmarks | Subscriptions | FAQ | Tutorials | Contact Us