As I recall, QSAM/BSAM can have a "logical record" >32K. But __only__ if
it is VBS and __ONLY__ if you process each logical segment separately in
your own code. That is, you cannot request that QSAM merge the segments
together into a single logical record for you. The reason being that
each segment contains its own LLBB field and the merged record also has
a single LLBB field. The halfword LL field restricts the LRECL to
<=32767 or it won't fit as a signed halfword.

Now, it think this means that COBOL itself cannot use LRECL>32K because
I don't think COBOL supports separate VBS record segments being
processed separately. But I'm not a COBOL programmer.

On Mon, 2011-08-29 at 10:05 -0700, Frank Swarbrick wrote:
> Even using Spanned (record format is S) or Undefined (record format is U) 
> Cobol (Enterprise COBOL 4.2) appears to not allow a record length more than 
> 32K:
>  
> 32  IGYGR1224-E   The maximum calculated record size of file 
> "WIRE-DOCUMENT-FILE" was greater than the maximum allowable size
>                   32767.  32767 was assumed.
>  
> Is this a COBOL limitation or a QSAM limitation?  Is VSAM my best (only?) 
> alternative?
>  
> Thanks,
> Frank
> 
> ----------------------------------------------------------------------
> For IBM-MAIN subscribe / signoff / archive access instructions,
> send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
> Search the archives at http://bama.ua.edu/archives/ibm-main.html
-- 
John McKown
Maranatha! <><

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html

Reply via email to