Results 1 to 10 of 10
  1. #1
    Join Date
    Jul 2009
    Posts
    4

    Dead Database Programer Problem

    First off hi to all out there, this is my first time to this thread. I am working with this guy and his partner in his business died unfortunately for him but me as well because I have been contracted to up date the program he made. It is a database lookup program written in I think Bortland C++ and Desktop Database. He has even very left a list of instructions but when followed do not work but give hints to his intentions. I have narrowed the problem down too the program he wrote to update his programs makes a data base from another database. One his program can use but the problem is I can only get the program to work when the update data is in the original place. So when I cut and paste the new data base into the folder where the program is his update program will not work. I checked that the database is not read only. So is there a special way to move a data base? Help Please

    Thanks for your reply I did look at the C++ code and that is what I said to the client but all the files are in a pretty random order and no project codes and a ton of files called the same thing. But the problem I have narrowed down to the database that I am trying to use the update program with ,the dead man has all ready used to update the program, I am trying to redo his results. The problem is when I copy and paste the source data base from the CD to the folder with the update program it wont recognize the table. But it will with the copy of the table that is in the folder all ready.

    There is a file extension called .mdb witch I have a small thought might be the culprit if someone might be able to explain I am totally confused about this, so any help would be appreciated.

    And have looked again and there is a .ndx file as well.

    Ok I have found more information I will share with all of you. I guess the .ndx file could be Borland database index, Microsoft database index, dBase IV multiple index, Label Pro re-index, and I also saw something about Paradox ( witch was bought by Borland ) And for the .mdb file is microsoft access database file, access database application.
    Last edited by diggity_dz; 07-15-09 at 09:37.

  2. #2
    Join Date
    Feb 2004
    Location
    In front of the computer
    Posts
    15,579
    You'll need to find someone that knows C++ and BDE who can review the source code to help you understand why the transformation isn't working. There are a myriad of details that could be causing this problem, and no good way that I know to sort out which is the culprit in this case.

    -PatP
    In theory, theory and practice are identical. In practice, theory and practice are unrelated.

  3. #3
    Join Date
    Nov 2004
    Location
    out on a limb
    Posts
    13,692
    so the program is talking to a JET database
    my immediate suspicion is going to be how you refer to the MDB ie tell the application to talk to the correct location of the MDB

    I'd want to check the code that opens the connection to the MDB,. is it via an explicit path, a DSN, a config setting.
    I'd rather be riding on the Tiger 800 or the Norton

  4. #4
    Join Date
    Jul 2009
    Posts
    4
    I am not sure but I think the C++ program witch does the up date is in Bortland C++ and desktop database that is why I am a little confused about why the .mdb file is there or what it is for, that is my main reason for suspecting it ( I know about the rest of the files ) I have found reference to this file in the internet and says it is for Access. I am assuming it some sort of setup file for the database. But I am not for sure what made for or what it does. And what do I have to do make a new one when new data is to be imported into the program ( this happens every 6 months ).
    Last edited by diggity_dz; 07-15-09 at 08:18.

  5. #5
    Join Date
    Feb 2004
    Location
    In front of the computer
    Posts
    15,579
    You've demonstrated that the documentation/notes don't tell you what you need to know. Read the .CPP files instead. By definition, the .CPP files (and their includes) are correct.

    -PatP
    In theory, theory and practice are identical. In practice, theory and practice are unrelated.

  6. #6
    Join Date
    Nov 2004
    Location
    out on a limb
    Posts
    13,692
    no a mdb file is a JET database file, it stores data the data is exrtracted and mnaipulated using SQL. the mdb extension is also used for access applications talking to JET data.

    so I'm assuming the MDB data file is your applications data storage. somewhere within your application there is some code which opens a connection to your applications data storage mechanism. its entirely possible that the application isn't using a JET/Access database and the mdb file is an artifact.

    I don't use Delphi, I've never got to grips with C or C++ but there must be some code somewhere that opens a connection read, writes or updates data. my guess is the code that nmakes the connection is the culprit
    I'd rather be riding on the Tiger 800 or the Norton

  7. #7
    Join Date
    Jul 2009
    Posts
    4
    I had the same thinking and I looked through the .cpp and .h files the best I can given the short amount of time I have, it is hard to tell but it looks like he passed the data to a buffer and writes it. I cant find any code to make theses files. One class in the C++ is "TParadoxDatabaseFile". And I think this is the class that handles finding the database file. It gets passed some values about files here is the class:

    TParadoxDatabaseFile(char *fn, char *indexName, char *indexTag, DBIShareMode mode, DBIOpenMode eOpenMode = dbiREADONLY):TDatabaseFile(fn, indexName, indexTag, mode,eOpenMode){;}
    Last edited by diggity_dz; 07-15-09 at 19:10.

  8. #8
    Join Date
    Jul 2009
    Posts
    4
    I have found a FREE .mdb viewer called: “MDB Viewer Plus” and have got in the file and it is a table of the data and some stored procedures all having to do with the data I am working with. I am now pretty positive, he did some kind of data manapulition via these .mdb and .ndx files. There is also an .inf file witch only has this:
    [dbase]
    NDX=CODE.NDX

    witch is a refrence to the .ndx file in question.

  9. #9
    Join Date
    Nov 2004
    Location
    out on a limb
    Posts
    13,692
    ok so its confirmed that your application is talking to a JET MDB data file
    then you need to find where in your code you opne the connection to that mdb file
    somewhere in the morass of C++/Delphi files is/are calls to open that database. check how that call is made
    is it made to a sepcific path
    is it defined as a dsn
    is it defined as a file path
    .... if it works in one location but not another then its how the applciation establishes (or not) the connection to the database

    look up the documentation for Delphi to connect to ta db
    if its a gui designer look for the connectionm object in delphi
    somewhere in the application there is a settign that explicitly tells the app to talk to the MDB file.
    I'd rather be riding on the Tiger 800 or the Norton

  10. #10
    Join Date
    Jun 2004
    Location
    Arizona, USA
    Posts
    1,848
    To make things a bit more convoluted, indexes may be stored internally within the MDB file, or, (it appears) that bde may also create separate, local indexes to linked databases.
    Lou
    使大吃一惊
    "Lisa, in this house, we obey the laws of thermodynamics!" - Homer Simpson
    "I have my standards. They may be low, but I have them!" - Bette Middler
    "It's a book about a Spanish guy named Manual. You should read it." - Dilbert


Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •