Icon View Thread

The following is the text of the current message along with any replies.
Messages 1 to 3 of 3 total
Thread Error # 11010 Table does not exist when using CopyTable method
Fri, Jan 18 2013 10:10 AMPermanent Link

Bob Murdoch

I'm using DbIsam v3.30 in Delphi 5.  I create a temp table for use with my application, and pass that temp table to another unit which makes a copy of it in order to do what-if analysis.

I have a DbIsam session and DbIsam database component hooked up to the master temp table.  I am creating a unique file name for the new temp table, and simply calling:

FMasterTable.CopyTable(FMasterTable.DatabaseName, vTempTableName);

The error I receive is:
 DBISAM Engine Error # 11010 Table 'dbRoute\~658A.DAT' does not exist.

'dbRoute' is the DatabaseName.

The strange this is that this method works in another application that we just forked from.  So all methods are the same between the two applications, but it fails here.  

Thank you for your help.

Bob Murdoch
Fri, Jan 18 2013 10:32 AMPermanent Link

Bob Murdoch

A little more information -

In the application that works, FMasterTable.DatabaseName is a directory.  In the application that doesn't work, FMasterTable.DatabaseName is just the name of the component.

The TDBIsamDatabase is configured in the constructor of the datamodule in both applications:

  dbRoute.Connected := FALSE;
  dbRoute.Directory := gUser.PrivDir;
  dbRoute.Connected := TRUE;

  sesRoute.PrivateDir := gUser.PrivDir;  //for temporary tables

What would cause the DatabaseName to not be set to a directory?
Fri, Jan 18 2013 11:54 AMPermanent Link

Tim Young [Elevate Software]

Elevate Software, Inc.

Avatar

Email timyoung@elevatesoft.com

Bob,

<< In the application that works, FMasterTable.DatabaseName is a directory.
In the application that doesn't work, FMasterTable.DatabaseName is just the
name of the component.

The TDBIsamDatabase is configured in the constructor of the datamodule in
both applications:

  dbRoute.Connected := FALSE;
  dbRoute.Directory := gUser.PrivDir;
  dbRoute.Connected := TRUE;

  sesRoute.PrivateDir := gUser.PrivDir;  //for temporary tables

What would cause the DatabaseName to not be set to a directory? >>

The only thing that can do so is your code, so I would double-check it to
make sure that everything is being set properly.

Tim Young
Elevate Software
www.elevatesoft.com
Image