- Community Home
- >
- Servers and Operating Systems
- >
- Operating Systems
- >
- Operating System - OpenVMS
- >
- The STREAM Record Format
Categories
Company
Local Language
Forums
Discussions
Forums
- Data Protection and Retention
- Entry Storage Systems
- Legacy
- Midrange and Enterprise Storage
- Storage Networking
- HPE Nimble Storage
Discussions
Discussions
Discussions
Discussions
Forums
Forums
Discussions
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
- BladeSystem Infrastructure and Application Solutions
- Appliance Servers
- Alpha Servers
- BackOffice Products
- Internet Products
- HPE 9000 and HPE e3000 Servers
- Networking
- Netservers
- Secure OS Software for Linux
- Server Management (Insight Manager 7)
- Windows Server 2003
- Operating System - Tru64 Unix
- ProLiant Deployment and Provisioning
- Linux-Based Community / Regional
- Microsoft System Center Integration
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Community
Resources
Forums
Blogs
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО08-26-2005 02:59 AM
тАО08-26-2005 02:59 AM
I'm looking at the manual "Guide to OpenVMS File Applicaions" and on page 2-13 I read about the Stream record format:
"This variation uses a terminator from a limited set of special characters: The carriage return (CR), the carriage-return/line feed combination (CRLF) or the form feed (FF)"
But how do I specify the exact terminator in use?
The specific problem is this: I have a file from the outside (non-VMS), and dir/full shows it is a STREAM, and DUMP shows there is a CR/LF at the end of every record. I can't read the file because I get "Record too long", and I think it's because the program does not know how to find the end of record -- ie, it is looking for the wrong terminator.
Dom
Solved! Go to Solution.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО08-26-2005 03:04 AM
тАО08-26-2005 03:04 AM
Re: The STREAM Record Format
do you see "Record too long" using editor (EDT)?
If yes, there is no error. EDT can manager only file with max record len = 254.
To check integrity of file use follow command:
$ DUMP
You could see records of file.
Antonio Vigliotti
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО08-26-2005 03:11 AM
тАО08-26-2005 03:11 AM
Re: The STREAM Record Format
Try changing the file type attribute to a type that mirrors most closely the orignal format. E.g :-
Set file foo.bar / att = RFM:STM
Set file foo.bar / att = RFM:STMCR
Set file foo.bar / att = RFM:STMLF
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО08-26-2005 03:11 AM
тАО08-26-2005 03:11 AM
Re: The STREAM Record Format
Can you type the file ?
Purely Personal Opinion
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО08-26-2005 03:13 AM
тАО08-26-2005 03:13 AM
Re: The STREAM Record Format
%TYPE-F-WRITEERR, error writing SYS$OUTPUT:.;
-RMS-F-SYS, QIO system service request failed
-SYSTEM-F-EXQUOTA, process quota exceeded
But I still have to ask: How does VMS (or DUMP) know that the CRLF is being used as a terminator?
Dom
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО08-26-2005 03:22 AM
тАО08-26-2005 03:22 AM
Re: The STREAM Record Format
$ write sys$output f$file_attributes ("t.txt","rfm")
STM
$
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО08-26-2005 03:33 AM
тАО08-26-2005 03:33 AM
SolutionMay be record size is really too long for your application.
Because your file is external (no VMS) may also missed some record attribute. You don't refer about this of your dir/full.
I guess you can declare CR with follow command:
$ SET FILE /ATTRIB=(RAT:CR)
You have to see how long is longest record in dir/full. In your fortran software, you must allocate a buffer for biggest record.
To avoid losting of type, before using fortran, try to read with type command. After you can see file with TYPE (without SYSTEM-F-EXQUOTA and ignoring what is displayed), you are able to read with fortran application.
Antonio Vigliotti
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО08-26-2005 03:44 AM
тАО08-26-2005 03:44 AM
Re: The STREAM Record Format
All of them, when found in the file.
>> I can't read the file because I get "Record too long",
That message should probably read "Record too long for use buffer". Some programs dynamically choose a record buffer size based on the minumum of a program provided value (512?) and the "MRS" (maximum record size) of the file and the "LRL" (longest recorded record). Files 'from the outside' sometimes miss this LRL. Just set a reasonably large value with SET FILE/ATTR=LRL=xxx, or try to CONVERT the file to get the real value. (hmmm... convert may need LRL=32767 just to be sure).
Hein.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО08-26-2005 04:18 AM
тАО08-26-2005 04:18 AM
Re: The STREAM Record Format
Steve -- I did get the file through ftp
Antonio -- The problem was solved when I changed the fortran program to RECL=3050
Hein -- I didn't know that STREAM meant that all and any of the terminators could be used. I guess I misread the manual.
Thanks again,
Dom