From: rfengineer55 on
Hello,

My compiler is giving me the following error -

Error 1 error #7198: Indexed IO is a VMS only feature.


When the compiler hits the following line of code -----

read (amdb,810,keyid=3,keyge=amkey,err=150,iostat=iostat) amrec


The compiler is Intel Visual Fortran, The source code is VAX VMS
Fortran that came from the FCC in Washington, DC. The compiler is
set up for VMS compatibility, but I still get this error.

I really don't want to bring the code up any farther than Fortran 77
compliant.

Apparently just setting the compiler to VMS compatibility is not
enough to dodge this error. What else is required?

RF ENGINEER55 Jeff
From: Craig Powers on
rfengineer55 wrote:
> Hello,
>
> My compiler is giving me the following error -
>
> Error 1 error #7198: Indexed IO is a VMS only feature.
>
>
> When the compiler hits the following line of code -----
>
> read (amdb,810,keyid=3,keyge=amkey,err=150,iostat=iostat) amrec
>
>
> The compiler is Intel Visual Fortran, The source code is VAX VMS
> Fortran that came from the FCC in Washington, DC. The compiler is
> set up for VMS compatibility, but I still get this error.
>
> I really don't want to bring the code up any farther than Fortran 77
> compliant.
>
> Apparently just setting the compiler to VMS compatibility is not
> enough to dodge this error. What else is required?

The error message looks pretty clear to me. I would say that you will
have to either run the code on VMS, or port the indexed IO to the
equivalent standard Fortran.
From: rfengineer55 on
On Jun 11, 9:39 pm, Craig Powers <craig.pow...(a)invalid.invalid> wrote:
> rfengineer55 wrote:
> > Hello,
>
> > My compiler is giving me the following error -
>
> > Error      1        error #7198: Indexed IO is a VMS only feature.
>
> > When the compiler hits the following line of code -----
>
> > read (amdb,810,keyid=3,keyge=amkey,err=150,iostat=iostat) amrec
>
> > The compiler is Intel Visual Fortran, The source code is VAX VMS
> > Fortran that came from the FCC in Washington, DC.   The compiler is
> > set up for VMS compatibility, but I still get this error.
>
> > I really don't want to bring the code up any farther than Fortran 77
> > compliant.
>
> > Apparently just setting the compiler to VMS compatibility is not
> > enough to dodge this error. What else is required?
>
> The error message looks pretty clear to me.  I would say that you will
> have to either run the code on VMS, or port the indexed IO to the
> equivalent standard Fortran.- Hide quoted text -
>
> - Show quoted text -

The error looks pretty clear to me also. What's not clear is the
solution. Fortran 77 is standard Fortran. How can we utilize it's
resources to solve the problem?

Jeff
From: Louis Krupp on
On 6/11/2010 10:09 PM, rfengineer55 wrote:
> On Jun 11, 9:39 pm, Craig Powers<craig.pow...(a)invalid.invalid> wrote:
>> rfengineer55 wrote:
>>> Hello,
>>
>>> My compiler is giving me the following error -
>>
>>> Error 1 error #7198: Indexed IO is a VMS only feature.
>>
>>> When the compiler hits the following line of code -----
>>
>>> read (amdb,810,keyid=3,keyge=amkey,err=150,iostat=iostat) amrec
>>
>>> The compiler is Intel Visual Fortran, The source code is VAX VMS
>>> Fortran that came from the FCC in Washington, DC. The compiler is
>>> set up for VMS compatibility, but I still get this error.
>>
>>> I really don't want to bring the code up any farther than Fortran 77
>>> compliant.
>>
>>> Apparently just setting the compiler to VMS compatibility is not
>>> enough to dodge this error. What else is required?
>>
>> The error message looks pretty clear to me. I would say that you will
>> have to either run the code on VMS, or port the indexed IO to the
>> equivalent standard Fortran.- Hide quoted text -
>>
>> - Show quoted text -
>
> The error looks pretty clear to me also. What's not clear is the
> solution. Fortran 77 is standard Fortran. How can we utilize it's
> resources to solve the problem?

I don't believe indexed files are part of the Fortran standard (or most
implementations thereof), so the resources available with your compiler
and your favorite IDE may not be enough.

To port this application, you'll to have to start with an understanding
of how the indexed file is set up and exactly what the READ statement
does. Once you've done that, you can decide how to proceed. As I see
it, your choices come down to something like the following:

1. Convert the data to MySQL (about which I know absolutely nothing) or
a third-party indexed file implementation and figure out how to
interface to it with Fortran.

2. Get a third-party product that emulates DEC's Record Management
System (specifically indexed files) and figure out how to use it with
Fortran.

3. Convert the data in the indexed file to a flat file and find a way
to sort and filter the records so get the ones you want in the right
order. Depending on the size of the data base, this might give you
acceptable performance.

If you want to learn only your application, I would pick #3. If you
want to learn the language and some tools, I would go with #1 or #2.

Louis
From: e p chandler on

"Louis Krupp" <lkrupp_nospam(a)indra.com.invalid> wrote in message
news:B9-dnXzaq-Hdv47RnZ2dnUVZ_vGdnZ2d(a)indra.net...
> On 6/11/2010 10:09 PM, rfengineer55 wrote:
>> On Jun 11, 9:39 pm, Craig Powers<craig.pow...(a)invalid.invalid> wrote:
>>> rfengineer55 wrote:
>>>> Hello,
>>>
>>>> My compiler is giving me the following error -
>>>
>>>> Error 1 error #7198: Indexed IO is a VMS only feature.
>>>
>>>> When the compiler hits the following line of code -----
>>>
>>>> read (amdb,810,keyid=3,keyge=amkey,err=150,iostat=iostat) amrec
>>>
>>>> The compiler is Intel Visual Fortran, The source code is VAX VMS
>>>> Fortran that came from the FCC in Washington, DC. The compiler is
>>>> set up for VMS compatibility, but I still get this error.
>>>
>>>> I really don't want to bring the code up any farther than Fortran 77
>>>> compliant.
>>>
>>>> Apparently just setting the compiler to VMS compatibility is not
>>>> enough to dodge this error. What else is required?
>>>
>>> The error message looks pretty clear to me. I would say that you will
>>> have to either run the code on VMS, or port the indexed IO to the
>>> equivalent standard Fortran.- Hide quoted text -
>>>
>>> - Show quoted text -
>>
>> The error looks pretty clear to me also. What's not clear is the
>> solution. Fortran 77 is standard Fortran. How can we utilize it's
>> resources to solve the problem?
>
> I don't believe indexed files are part of the Fortran standard (or most
> implementations thereof), so the resources available with your compiler
> and your favorite IDE may not be enough.
>
> To port this application, you'll to have to start with an understanding of
> how the indexed file is set up and exactly what the READ statement does.
> Once you've done that, you can decide how to proceed. As I see it, your
> choices come down to something like the following:
>
> 1. Convert the data to MySQL (about which I know absolutely nothing) or a
> third-party indexed file implementation and figure out how to interface to
> it with Fortran.

Does Intel Fortran support ODBC?

> 2. Get a third-party product that emulates DEC's Record Management System
> (specifically indexed files) and figure out how to use it with Fortran.

Good luck!

> 3. Convert the data in the indexed file to a flat file and find a way to
> sort and filter the records so get the ones you want in the right order.
> Depending on the size of the data base, this might give you acceptable
> performance.
>
> If you want to learn only your application, I would pick #3. If you want
> to learn the language and some tools, I would go with #1 or #2.

> Louis

You forgot option #4. Do the project in COBOL. This language does support
indexed files but then the math would be a real bear.

Sorry to bring up COBOL, but part of this problem has the flavor of a fairly
typical business D.P. task involving data conversion and data access.

Actually there is some important information we don't know. What is the
format, layout and structure of the database that the OP has on his PC? Is
his data really transferred from a VAX, byte for byte? If so, is there
METADATA known by the operating system that is NOT transferred?

I suspect that the data actually exists in some other form, possibly a
formatted text file or maybe even a CSV file.
If so, then the OP may be able to use parts of the posted program for the
record structure and formulas. But then he must code ALL of the programming
logic himself to use what standard Fortran does provide: sequential and
direct access files, either formatted or unformatted. (forget about stream
for now.).

-- Elliot