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
 

 

Maximum Length of LRECL parameter

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

New User


Joined: 05 May 2010
Posts: 6
Location: Bloomington, IL, USA

PostPosted: Wed May 26, 2010 11:54 pm    Post subject: Maximum Length of LRECL parameter
Reply with quote

I know that maximum length of LRECL parameter is 32K. I want to receive a file of length 300K FTPed by other team.

Please suggest me a solution to create a file of length 300K?
If thats not possible what other options are available.

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

Robert Sample

Global Moderator


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

PostPosted: Thu May 27, 2010 12:13 am    Post subject:
Reply with quote

What platform is the file coming from? Can the other team create the file with records no more than 32K in length?

Although I haven't tested this, you might be able to transfer the file to a Unix System Services directory and break the records down into 32K or less.

Quote:
I have a PS file which has length of 120 Characters. i want to read last 26 characters of that file and copy them into another file using JCL Only.
Sorry, this cannot be done. JCL executes programs. It does nothing but execute programs. It cannot read files, copy files, or do anything else -- all JCL does is execute programs. If you wanted to do this in batch with a utility such as SORT or a program, then it could easily be done. But as stated, your request is not possible.
Back to top
View user's profile Send private message
rahulabvp

New User


Joined: 05 May 2010
Posts: 6
Location: Bloomington, IL, USA

PostPosted: Thu May 27, 2010 12:24 am    Post subject:
Reply with quote

The records are coming from IBUS and FTP team is putting those records into a PS file. I need to create the file of length 300K. If I can create the file then FTP team can put the records into that file.

But not sure how to create such a long file. Please help me.

Thanks,
Rahul
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 May 27, 2010 12:30 am    Post subject:
Reply with quote

Hello and welcome to the forum,

Did you read what Robert posted? Suggest you re-read. . .

Also suggest someone implement a process on the sending system to break this data into proper mainframe records. . .

You might be able to do this in USS, but only if you have someone who knows how to work in the environment. The sending system surely has someone who can manipulate data.
Back to top
View user's profile Send private message
rahulabvp

New User


Joined: 05 May 2010
Posts: 6
Location: Bloomington, IL, USA

PostPosted: Thu May 27, 2010 12:48 am    Post subject:
Reply with quote

I dont want message (XML) to be broken into several parts. I want a long single string of 300K so that i can read it. The current length of the file is 80 and hence the XML is broken into many lines. To read this broken XML is difficult as I am going to use XMLPARSE commnad in DB2. Thats why i am asking if file of 300K length can be created or not.
Back to top
View user's profile Send private message
Robert Sample

Global Moderator


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

PostPosted: Thu May 27, 2010 12:53 am    Post subject:
Reply with quote

Quote:
I know that maximum length of LRECL parameter is 32K. I want to receive a file of length 300K FTPed by other team.
Unfortunately, you can't always get what you want. The LRECL limit is not optional, is not something you can get around by some trick -- a z/OS (MVS) file has this limit. Period. The only exceptions that I am aware of are ANSI tapes (which I've never even heard of being processed on a z/OS system), variable blocked spanned records (and good luck explaining to someone working on another platform about segment descriptor words), or -- maybe (as I said, not confirmed) -- Unix System Services files in a USS directory.

If none of these options works for you (and the USS option may not work at all -- test it first), then you can either (a) state to the sending team that the file cannot be processed on a mainframe, or (b) have the sending team shrink the records to fit the LRECL limitation. We on this forum have no magic secrets that will allow you to exceed the LRECL size limit.
Back to top
View user's profile Send private message
Robert Sample

Global Moderator


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

PostPosted: Thu May 27, 2010 12:57 am    Post subject:
Reply with quote

NOW the requirement comes out! COBOL quite happily can combine up to 1.5 million 80-byte records into a single array and parse it using XMLPARSE. The code is simple COBOL and works quite well -- I've written it to parse iTunes library data and there are no issues with creating a long string of data and then parsing it.

Since the solution you want is not possible, I recommend you start exploring alternatives.
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 May 27, 2010 1:30 am    Post subject:
Reply with quote

Hello,

I am probably missing something, but why can you not simply read the little records, move them into a 300k array and parse this?

Quote:
I dont want message (XML) to be broken into several parts.
You are possibly not old enough to remember, but the Rolling Stones made a famous song about this - "You Can't Always Get What You Want". . .

Quote:
I want a long single string of 300K so that i can read it.
Send this request to IBM and maybe someday it will be implemented. If it is not already in process, it will take years even if they agree to do what you want - so doing something else now is in order.
Back to top
View user's profile Send private message
Ronald Burr

Active User


Joined: 22 Oct 2009
Posts: 293
Location: U.S.A.

PostPosted: Thu May 27, 2010 2:40 am    Post subject:
Reply with quote

As an alternative, have the sender drop the 300K XML record onto a Message Queue and have your COBOL program Open the MQ, Get the Record(s) into a large ( 300K ) buffer, and XMLPARSE to your hearts content.

Why some folks ( e.g. the sender, in this case ) flagrantly ignore Mainframe restrictions is beyond me. While it would be ludicrous to expect a 5 passenger car to carry 50 passengers, it seems that some folks fully expect that there is a way to get MVS, which has a defined maximum LRECL of 32K, to support an LRECL of 300K.
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 DDNAME parameter mistah kurtz JCL & VSAM 6 Mon Dec 19, 2016 4:41 pm
No new posts Execessive parameter issue Sumeendar JCL & VSAM 5 Mon Dec 19, 2016 4:35 pm
No new posts TOT & DATE parameter in ICEMAN hemanthj642 DFSORT/ICETOOL 4 Mon Nov 14, 2016 5:19 am
No new posts SQZ pipe delimited file with 1 column... Rick Silvers DFSORT/ICETOOL 2 Sun Nov 06, 2016 8:11 pm
No new posts Joinkeys operation when key1 and key2... Susanta DFSORT/ICETOOL 5 Wed Nov 02, 2016 5:35 pm


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