Reading C-ISAM Data with Borland Delphi 
Author Message
 Reading C-ISAM Data with Borland Delphi

Hi,

I have been given the assignment of enabling an application written in
Borland delphi to access Data stored by an application written in
MicroFocus COBOL and something called "C-ISAM Filehandler".

The COBOL-Application is running on Windows95 and writing its data to
the local disk.

The "accessing" part of my Delphi-Application will be simple: It has
to iterate over ALL records in a BIG table distributing them to
different tables in other formats. No index lookups, no writing to the
C-ISAM-Files. Exclusive access to the files will be given to my
application during this process.

Knowing nothing about COBOL and C-ISAM i did a search on the net and
found a lot of products and information. Nothing of it relates
directly to my problem.

There are several ODBC-Drivers claiming to read C-ISAM-Files but they
either seem to require NT or target client-server-environments with
the data on some UNIX- or NT-Box on a Network.

Then there are C-Libraries from Informix and Byte Designs. These could
of course be called from Delphi but i fear the interfacing.

Both solutions are expensive. This in itself is not the problem, but i
dare not come up with anything we would have to pay
per-installation-royalties for, as the people paying me are allergic
to that :-).

My needs are so simple that i am now thinking of reading the *.dat
files directly - is there any documentation available on their format?

Any help, directions, pointers to products or further reading would be
very much appreciated.

Bye, MM
--
Fon: +49 228 624013 Fax: +49 228 624031
"Was schiefgehen kann, geht auch schief."



Wed, 18 Jun 1902 08:00:00 GMT  
 Reading C-ISAM Data with Borland Delphi

Quote:

> I have been given the assignment of enabling an application written in
> Borland Delphi to access Data stored by an application written in
> MicroFocus COBOL and something called "C-ISAM Filehandler".

I suggest Relational DataBridge for Micro Focus.  Read further
suggestions below.

Quote:

> The COBOL-Application is running on Windows95 and writing its data to
> the local disk.

> The "accessing" part of my Delphi-Application will be simple: It has
> to iterate over ALL records in a BIG table distributing them to
> different tables in other formats. No index lookups, no writing to the
> C-ISAM-Files. Exclusive access to the files will be given to my
> application during this process.

> Knowing nothing about COBOL and C-ISAM i did a search on the net and
> found a lot of products and information. Nothing of it relates
> directly to my problem.

If you found www.liant.com then you found something that indeed relates
directly to your problem.  It relates so directly that it means that you
probably would not have to write an application at all.  Instead, you
define the relational tables using the existing COBOL data without need
for distribution to any other tables.  Delphi (or VB or any other
ODBC-enabled product) will have instant, direct access to the data in
the "COBOL" files, using standard ODBC SQL.

Quote:

> There are several ODBC-Drivers claiming to read C-ISAM-Files but they
> either seem to require NT or target client-server-environments with
> the data on some UNIX- or NT-Box on a Network.

Relational Databridge is available in a "single tier" version for Micro
Focus, and has been for several years.  

Quote:

> Then there are C-Libraries from Informix and Byte Designs. These could
> of course be called from Delphi but i fear the interfacing.

> Both solutions are expensive. This in itself is not the problem, but i
> dare not come up with anything we would have to pay
> per-installation-royalties for, as the people paying me are allergic
> to that :-).

This is difficult for me to understand.  Presumably, the "people paying
you" have paid for, or will pay for, the computers which run this
application, have paid for the application (either through licensing or
development costs), have paid for a Windows license for each of the
machines, and so forth.  The "royalty" for your proposed solution is the
higher cost of development and maintenance of your Delphi application,
which would not even exist when using Relational DataBridge.  (And your
personal reward is to be allowed to work on something more
interesting!?)

It might be that royalties, when properly understood, offer a
significant value to the end users who, after all, just want to get to
the data that you can unleash by the use of the appropriate product,
without the need for some "in-between" step to distribute the data to
tables.  Allergic reactions can respond to appropriate desensitizing
medication, and most allergy sufferers willingly pay for the medicine,
if it works as advertised.

Quote:

> My needs are so simple that i am now thinking of reading the *.dat
> files directly - is there any documentation available on their format?

Micro Focus has this information in its manuals.

Best regards,
--

Liant Software Corporation   http://www.liant.com/
512-343-1010  FAX:512-343-9487



Wed, 18 Jun 1902 08:00:00 GMT  
 Reading C-ISAM Data with Borland Delphi

Uhmm,
Here's a free tip.
Use od and write a c program.
Delphi is not required to do this.
(At least from what you have said.)
-Uncle Mikey

Quote:

> Hi,

> I have been given the assignment of enabling an application written in
> Borland Delphi to access Data stored by an application written in
> MicroFocus COBOL and something called "C-ISAM Filehandler".

> The COBOL-Application is running on Windows95 and writing its data to
> the local disk.

> The "accessing" part of my Delphi-Application will be simple: It has
> to iterate over ALL records in a BIG table distributing them to
> different tables in other formats. No index lookups, no writing to the
> C-ISAM-Files. Exclusive access to the files will be given to my
> application during this process.

> Knowing nothing about COBOL and C-ISAM i did a search on the net and
> found a lot of products and information. Nothing of it relates
> directly to my problem.

> There are several ODBC-Drivers claiming to read C-ISAM-Files but they
> either seem to require NT or target client-server-environments with
> the data on some UNIX- or NT-Box on a Network.

> Then there are C-Libraries from Informix and Byte Designs. These could
> of course be called from Delphi but i fear the interfacing.

> Both solutions are expensive. This in itself is not the problem, but i
> dare not come up with anything we would have to pay
> per-installation-royalties for, as the people paying me are allergic
> to that :-).

> My needs are so simple that i am now thinking of reading the *.dat
> files directly - is there any documentation available on their format?

> Any help, directions, pointers to products or further reading would be
> very much appreciated.

> Bye, MM
> --
> Fon: +49 228 624013 Fax: +49 228 624031
> "Was schiefgehen kann, geht auch schief."

--
#include <std_disclaimer.h>               /* Mike Segel (MS385) */
#include <No_Spam.h>
#ifdef OFFENDED_BY_CONTENT
The author takes no responsibility for this post.
Any resemblence to a coherent  rational thought is purely coincidence.
-The Management.
#endif
*****************************
Due to AGIS's Refusal to Act Responsibly  
We are blocking  all of their domains at the packet level.
This block will exist until AGIS modifies their policies to
conform to existing RFCs and net community standards.

We encourage all ISPs and domain holders to do the same.
*****************************



Wed, 18 Jun 1902 08:00:00 GMT  
 Reading C-ISAM Data with Borland Delphi

Hi,

Quote:
>Not to pick on C (in which much of the ODBC for C-ISAM is implemented,
>after all), but chose the best tool!

Which is not always a technical issue.

I do know C but it would still take me much longer to implement the
stuff in that much-hated-by-me language, not counting wear and tear on
my nerves :-).

Thanks for all the help received here anyway!

Bye, MM
--
Fon: +49 228 624013 Fax: +49 228 624031
"Was schiefgehen kann, geht auch schief."



Wed, 18 Jun 1902 08:00:00 GMT  
 Reading C-ISAM Data with Borland Delphi



Quote:

> > Use Delphi and ODBC ( C is not required ).

> Not commenting on Delphi as a tool, it is not the best tool
> for the job in this instance.

> The data resides on the server in a flat file.
> The data format is fairly straight forward.

> To use Delphi is a bit of a braindead approach.

Yeah it's a no brainer. He has it, he knows it, and it will work.      

Quote:
> First, is there an ODBC for C-ISAM?
> (Lets assume that there is.)
> Second. Your job is to convert the data from one format
> to another so that you can load it in to a different database.

Delphi can do this quite easily.  

    with DBTable1 do
    begin
      with DBTable2 DO
      begin
        Exclusive      := TRUE;
      end;
      DBLBatchMove.Mode := batCopy;
      DBLBatchMove.Execute;
    end;

Table 1 can be Dbase, Paradox, Foxpro, Access, ASCII, or any ODBC Data.
Table 2 can be Dbase, Paradox, Foxpro, Access, ASCII, or any ODBC Data.

Quote:
> Using a PC tool is a mistake. First, you are opening a network
> connection reading the data to your pc, then loading the data
> back across the network to either the same server or a different
> server. (So now the program is slow.)

Use what you have and what you know and what you like.

Quote:
> In C, you just open the DB table as a file, read in either
> a fixed length string, or until an EOL character. (I forget
> if C-ISAM stores each record with a \n at the end of the record.)
> Then you can parse your data out. You can
> either write it to a record and insert into an Informix DB,
> or you can write it out as a comma delimited file which can
> be imported to any db.
> If your data has an occurs clause, then you have some more programming.

And why can't I do this in Delphi or any other language for that matter.  
In fact I already do this with a Micro Focus file.

Quote:
> Not to pick on Delphi, but chose the best tool.
> For data migration, C is best!

I think C would work here, But so would Delphi (equally).

I just don't care for C. I used it for an IVR application that will be
rewritten this year using Delphi.

Just my opinion, I could be wrong.

Bob Findley
------------------------------------------------------------------
The new rules of the devlopment process:
Alpha Testing:   A Clean Compile.
Beta Testing:    Put it in Production.
------------------------------------------------------------------



Wed, 18 Jun 1902 08:00:00 GMT  
 
 [ 5 post ] 

 Relevant Pages 

1. Access to C-ISAM data from delphi ?

2. Can Delphi read Lotus Notes data files?

3. HELP: How to read comma_delimited data, using Delphi or Turbo Pascal

4. Reading and Writing data to Delphi BLOB Fields

5. Componenti delphi per C-Isam

6. ISAM Tables from Delphi

7. Delphi CS 1.02 to Sybase Help

8. Accessing oracle sequences from Delphi 1.0 CS

9. Delphi CS, Oracle7.2 & SQLNetV2.2

10. Delphi 2.0 CS Update & BLOB Problem

11. 3 Questions on Delphi 3.0 cs

 

 
Powered by phpBB® Forum Software