Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations Mike Lewis on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

Databases used by Cobol 1

Status
Not open for further replies.

RonSwingler

Programmer
Dec 31, 2002
3
0
0
US
I work for a company that provides Medical Software developed in Delphi. I am not a COBOL programmer. I am in the process of converting a new client's data from their old software to our software. However, I am having a difficult time determining the database format.

The software company is out of business and I have not been able to contact anyone.

This is what I know...The software was written in COBOL because there are several files with a COB extension and there is an exe named "runcobol.exe". The software was developed in the 80's and was sold until the late 90's. It is in the DOS environment.

The database that I am trying to determine does not have a file extension. This is making it hard to determine the database format. When opening it in a text editor, the data is formatted.

Can anyone give me any ideas of what this format might be? Were there many databases to choose from when developing COBOL programs in the 80's?

Anyone know of any utilities that might read these databases and export them into a more common type database?

Any information would be appreciated.
Thanks.
 
Hi RonSwingler,

The database was most likely created and maintained by COBOL itself (SEQUENTIAL, RELATIVE or INDEXED).

The data may be unintelligible in a text editor because of numeric fields formatting (COMPUTATIONAL, BINARY, PACKED, etc...).

If I understand your situation, this software and database was sold as a 'black-box'. Your company never had any independent access or internal documentation to the database. Maybe this was done intentionally/contractually?

I think you will need the source code, to sort this one out. Or tell us what system you are trying to reverse engineer?

Dimandja
 
Hi Ron,

Can you show us the "call sequences" and/or commands/stmts used to activate I/O to the databse? This amy serve to identify the name of the DB or the vendor.

Thanx, Jack.
 
Likely the software was developed using RM/COBOL from Liant Software ( As Dimandja indicated, the data files are likely not any particular database but are most likely indexed sequential files peculiar to RM/COBOL. Liant may be able to provide some additional information/documentation on files of this sort or perhaps some other tek-tips user may be familiar with them as I'm not.

Regardless, if you don't have the original COBOL source code you're likely SOL and will have to reverse engineer the data/layout as best you can.

Good luck.

Glenn
 
Hi Ron,

Without the source, this would be a tough assignment, even for an experienced COBOL programmer.

See if you have a utility named 'rmmapinx.cob'. This utility will identify if the file is an indexed file and tell you, among other things, how many records are in the file. To execute: runcobol rmmapinx.cob (it will prompt you for the file name). If it doesn't have any records then there is no data for you to convert.

See if you have a utility named 'recover2.cob'. This utility will dump out the contents of an indexed file to a binary sequential file. This will make it a little easier to reverse engineer.

You will likely have numeric fields that are in packed, binary or computational format. See the RM/COBOL User's Guide (Appendix C) Internal Data Formats for more information.
Be aware that the file can contain multiple record formats.

-Rob
 
Thank you all for the very useful information.

I was able to determine, with your help, that it was written in RM/COBOL. I also found the files 'rmmapinx.cob' and 'recover2.cob'. These files were located in the same directory as 'runcobol.exe' (directory is c:\rmc85). With the use of these files, I was able to convert the files to a sequential. It is more readable, but still I need a utility to convert it to a more common database. I did find several on the internet, though still trying to find the right one. If anyone knows of a good one, I would appreciate your suggestion.

This conversion has been really nasty...hopefully it will get better as I go. Though, wouldn't have got this far without your help.

Thanks again.
Ron
 
Hi Ron, I have a similar problem with yours...and I followed this thread from the start, but I got stuck. I used the 'recover2.cob' and it prompted me for the indexed file,the dump file and OPTION...Since I'm not familiar at all with RM/COBOL, I have no idea what OPTION is...What do I type in? I really need to convert those data...tell me what to do, thanks
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top