[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: R:gnubol: Record delimiter clause and parse order




As far as I was aware you can't rewrite ANY sequential files - only write
or read.

Similarly, sequential files (whether record sequential or line sequential)
are only ever opened for input, output or extend - none of which support
rewriting.

Fred Neale




"William M. Klein" <wmklein@ix.netcom.com>@wallace.lusars.net on 06/06/2000
10:40:50 AM

Please respond to gnu-cobol@lusars.net

Sent by:  owner-gnu-cobol@wallace.lusars.net


To:   <gnu-cobol@lusars.net>
cc:

Subject:  RE: R:gnubol: Record delimiter clause and parse order


Assuming that we will want SOME support for "line sequential" files, I will
tell you that you run into some "strange" situations as far a how to handle
them in the MOST ANSI compliant way.  This is because they really aren't
fixed length and they really aren't variable length.  Therefore, sometimes
you want to follow one set of rules - and other times, the other rules.

For example, can you or can you not "rewrite" a line sequential file with a
record of a different length than the one you read (assuming that both are
shorter than the record size in the FD).  Similarly, when do you get a
FS=39
when opening such files - what attributes are and are not checked?

I can't remember all the other "oddities" that these caused when I was
Micro
Focus, but I do remember that there were some "strange" rules for these
types
of files.

> -----Original Message-----
> From: owner-gnu-cobol@wallace.lusars.net
> [mailto:owner-gnu-cobol@wallace.lusars.net]On Behalf Of Matthew Vanecek
> Sent: Monday, June 05, 2000 7:14 PM
> To: gnu-cobol@lusars.net
> Subject: Re: R:gnubol: Record delimiter clause and parse order
>
>
> DARI UMBERTO wrote:
> >
> > As for what I remember, we have the following:
> >
> > 1- On mainframe, drives the parameters : record length for fixed end
the
> > first four bytes for variable length
>
> Don't know about that--Haven't dug up any IBM physical file layouts yet.
>
> >
> > 2- On PC (MF or older MS Cobol), fixed length is always the same
> lenth BUT
> > it has a record delimiter, variable has a record delimiter, LINE
> SEQUENTIAL
> > has CR-LF
> >
> > 3- ON MF cobol for Unix behaviour is similar to PC
> >
>
> According to MF manuals, fixed length, sequential files have *no*
> delimiter.  line sequential (an MF invention) uses the OS default line
> delimiter (i.e., whatever would normally delimit lines in the prevailing
> text editors for the OS--\n or \r\n usually).  Also, according to the MF
> manuals, RECORD DELIMITER clause is *only* used for variable length
> records.  And the draft standard's syntax diagram for the RECORD
> DELIMITER is quite misleading--according to the text, this clause is
> only for variable length records.
>
> I think any deviations from this that people see are implementor
> extensions.  I think the level of compliance we need to shoot for is
> first ANSI compliant, and then COBOL II and MF supportive. IMO, that
> gives us plenty to do for a long time to come. ;)
> --
> Matthew Vanecek
> Visit my Website at http://mysite.directlink.net/linuxguy
> For answers type: perl -e 'print
> $i=pack(c5,(41*2),sqrt(7056),(unpack(c,H)-2),oct(115),10);'
> *****************************************************************
> For 93 million miles, there is nothing between the sun and my shadow
> except me. I'm always getting in the way of something...
>
> --
> This message was sent through the gnu-cobol mailing list.  To
> remove yourself
> from this mailing list, send a message to majordomo@lusars.net with the
> words "unsubscribe gnu-cobol" in the message body.  For more information
on
> the GNU COBOL project, send mail to gnu-cobol-owner@lusars.net.


--
This message was sent through the gnu-cobol mailing list.  To remove
yourself
from this mailing list, send a message to majordomo@lusars.net with the
words "unsubscribe gnu-cobol" in the message body.  For more information on
the GNU COBOL project, send mail to gnu-cobol-owner@lusars.net.




--
This message was sent through the gnu-cobol mailing list.  To remove yourself
from this mailing list, send a message to majordomo@lusars.net with the
words "unsubscribe gnu-cobol" in the message body.  For more information on
the GNU COBOL project, send mail to gnu-cobol-owner@lusars.net.