Re: Class Notes for a PL/I Course.

"Joe Monk [email protected] [H390-MVS]" <[email protected]> Sat, 5 Oct 2019 09:18:09 -0500
Newsgroups gmane.comp.emulators.hercules390.mvs
Message-ID <CAPcd4G-6waTT07__oyogRh+-6QEn-06Z73z6Y4T5Xp=CF87t3A@mail.gmail.com>
An LRECL of 4, is a zero-length record. If the format is VB, then the
BLKSIZE is 8.

When computing the LRECL of a variable length record, you must include the
4 bytes for the RDW, When computing the BLKSIZE if the format is VB, then
you must also add 4 bytes, for the BDW.

Joe

On Sat, Oct 5, 2019 at 4:40 AM kerravon86-/[email protected] [H390-MVS] <
[email protected]> wrote:

>
>
> ---In [email protected], <giuseppe@...> wrote :
>
> > > > Am I right betting a variable length dataset can't have a zero length
> > > records?
> > > I haven't worked with VS datasets, but I know that regular V[B]
> datasets
> > > can have records with zero length. (At least in MVS, yes; in VM/CMS,
> no.)
>
> > Ouch. Thanks.
>
> > But I bet that if I use 0xFFFF for logical EOF I'm on
> > the safe side?
>
> The RDW will be a minimum of 4 or 5. So you can
> use an RDW of 0 to indicate EOF, which is what
> COPYFILE will do if you do a binary copy of a
> RECFM=VB to RECFM=FB.
>
> An RDW of 4 is a zero-length record. There's
> no concept of an RDW of 0. The RDW is the
> length of the data plus 4 bytes for the RDW
> itself, so logically has to be a bare minimum
> of 4.
>
> BFN. Paul.
> 
>