DXE5, ADS 11.1.10

From the ADS 11.1 help file for AdsCopyTable (TDataSet):

The copy will be done on the server if the following conditions are met:

· Both tables are on the same server and both tables are of the same type (e.g., both are opened with ADS_CDX) · Neither table is opened exclusively · The destination table does not have a file lock

I've read the other posts concerning AdsCopyTable, but none of the suggestions seems to help. For example, all of the tables have AdsServerTypes of [stADS_REMOTE,stADS_LOCAL], and all tables are of the same type (ttAdsVFP). On my development computer, where both the source and target paths are on the same drive, no problems. When deployed in the operating environment, though, I need the application to copy the table from the network server to a working folder on the clients where the copy can be opened exclusively. This always leads to a 6420 error. I've even resorted to creating a copy of the table on the server, and immediately using a TFile.Copy operation to copy that file to the client. Unfortunately, when the application then tries to open the client-side copy, it does succeed, but it takes so long that the users believe the application has hung. Lastly, I use ADS.INI with LAN_IP and LAN_PORT specified which I've thought eliminated the discovery issues.

Any ideas or suggestions on how to remedy/improve on this? TIA!

asked 05 Jun '14, 05:13

HFox's gravatar image

HFox
231131423
accept rate: 33%

Why do you need a local copy of the table in the first place?

(05 Jun '14, 05:47) Jens Mühlenhoff

Are you deploying the Local Server DLL (adsloc32.dll) with your application?

(10 Jun '14, 14:09) Edgar Sherman

Yes. The local server is deployed on client computers with the application(s). I have several applications that make use of a combination of both local and remote tables primarily for the purpose of isolating certain operations for individual users where tables can be opened exclusively without disrupting shared access to the remote tables.

(18 Jun '14, 17:26) HFox

Jens,

Oddly enough, this is an issue that arose as a result of another problem. Originally, my application created a unique copy of the necessary table(s) on the remote server and everything worked fine. Unfortunately, I ran into a problem when attempting to delete the temporary files after they were no longer needed. I have no idea why, but I have not found a Delphi function that can successfully delete these files on the server. There's no problem, however, using them and deleting them on client computers other than the operations being ridiculously slow.

(18 Jun '14, 17:31) HFox
Be the first one to answer this question!
toggle preview

Follow this question

By Email:

Once you sign in you will be able to subscribe for any updates here

By RSS:

Answers

Answers and Comments

Markdown Basics

  • *italic* or _italic_
  • **bold** or __bold__
  • link:[text](http://url.com/ "Title")
  • image?![alt text](/path/img.jpg "Title")
  • numbered list: 1. Foo 2. Bar
  • to add a line break simply add two spaces to where you would like the new line to be.
  • basic HTML tags are also supported

Tags:

×271
×154
×79

Asked: 05 Jun '14, 05:13

Seen: 1,670 times

Last updated: 18 Jun '14, 17:31

Advantage Developer Zone Contact Us Privacy Policy Copyright Info


Powered by Advantage Database Server and OSQA
Disclaimer: Opinions expressed here are those of the poster and do not necessarily reflect the views of the company.