By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
448,611 Members | 1,629 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 448,611 IT Pros & Developers. It's quick & easy.

How does Access table link at startup

P: n/a
I'm having a complicated linking problem. Before I get into the particulars,
I'd like to know how Access links to the back-end file at startup, AFTER I've
distributed my application to the client.

Here's the issue. While I'm working on my app, I'm linked to the backend on
my computer. When I distribute the app, the backend file is obviously in a
different location (on the client server).

But the first time my app is started up at the client location, the
connection strings for the backend will still be to my development computer
and these strings are obviously invalid.

Now I have a custom linking routine and use a launcher. The launcher passes
to my app via Command, the correct location of the backend files. This has
worked flawlessly over the past 6 months, but a recent update to the client
failed to work and generated a linking error. But, I'm having trouble
replicating the problem.

So, for now, I would just like to know what Access does when it encounters
the situation I mentioned. Is an error generated only if code or some action
attempts to extract data from a table link that is not valid. In other words,
Access will allow the invalid connection strings on startup and an error is
only generated when some action is taken to actually view or select data from
the linked table. I should mention that I use RWOP queries as well, so I
guess I'm wondering why there isn't an error generated at startup when the
RWOP query selects data from the linked table. I guess this must mean that
it doesn't actually select until an action of some type is taken (i.e. the
user opens the RWOP query or code tries to perform an action on the query).

Understanding how this works, I think will help me in solving my problem.

Thanks.

--
Message posted via http://www.accessmonster.com

Sep 29 '06 #1
Share this Question
Share on Google+
12 Replies


P: n/a
>In other words, Access will allow the invalid connection strings on
>startup and an error is only generated when some action is taken to
actually view or select data from the linked table.
Yes. Access does not notice that a table link is invalid until it tries
to actually use it for something. Then you get run-time error 3044
("... is not a valid path)

rdemyan via AccessMonster.com wrote:
I'm having a complicated linking problem. Before I get into the particulars,
I'd like to know how Access links to the back-end file at startup, AFTER I've
distributed my application to the client.

Here's the issue. While I'm working on my app, I'm linked to the backend on
my computer. When I distribute the app, the backend file is obviously in a
different location (on the client server).

But the first time my app is started up at the client location, the
connection strings for the backend will still be to my development computer
and these strings are obviously invalid.

Now I have a custom linking routine and use a launcher. The launcher passes
to my app via Command, the correct location of the backend files. This has
worked flawlessly over the past 6 months, but a recent update to the client
failed to work and generated a linking error. But, I'm having trouble
replicating the problem.

So, for now, I would just like to know what Access does when it encounters
the situation I mentioned. Is an error generated only if code or some action
attempts to extract data from a table link that is not valid. In other words,
Access will allow the invalid connection strings on startup and an error is
only generated when some action is taken to actually view or select data from
the linked table. I should mention that I use RWOP queries as well, so I
guess I'm wondering why there isn't an error generated at startup when the
RWOP query selects data from the linked table. I guess this must mean that
it doesn't actually select until an action of some type is taken (i.e. the
user opens the RWOP query or code tries to perform an action on the query).

Understanding how this works, I think will help me in solving my problem.

Thanks.

--
Message posted via http://www.accessmonster.com
Sep 29 '06 #2

P: n/a
I've been testing my code under a variety of conditions. Moving the folder
the back-end files are located in. Moving just the back-end files out of the
folder. Changing the name of the back-end files in a valid back-end folder.
In every case, my custom error messages are invoked and my custom linking
screen gets displayed. I have not yet been able to get run-time error 3044
to appear. When the client told me over the phone that he was getting this
error, I was puzzled and am now even more puzzled, since I just don't see how
this could happen.

Right now when my app launches, it deletes all linked tables during startup
and recreates them based on the location information passed in from the
launcher. So given that the app deletes the links at startup before any type
of action is done on the links (opening or code action), I don't see how this
error can even be generated given how my startup code works.

Also the error that my client got occurred in a module that is invoked in the
startup routine. In my client's case, if there was a problem during linking
an error should have been generated at that time, not in a subsequent module.

Gord wrote:
>>In other words, Access will allow the invalid connection strings on
startup and an error is only generated when some action is taken to
actually view or select data from the linked table.

Yes. Access does not notice that a table link is invalid until it tries
to actually use it for something. Then you get run-time error 3044
("... is not a valid path)
>I'm having a complicated linking problem. Before I get into the particulars,
I'd like to know how Access links to the back-end file at startup, AFTER I've
[quoted text clipped - 28 lines]
>>
Thanks.
--
Message posted via AccessMonster.com
http://www.accessmonster.com/Uwe/For...ccess/200609/1

Sep 29 '06 #3

P: n/a
I wish this forum had the ability to edit posts.

To be clear, the error the client got occurred after my code recreated the
links. Also, the file name listed by the 3044 error does in fact exist out
on the server. The only thing I can think of is that there was some kind of
hiccup at the server. But I had him logon at least 6 to 8 times to test a
few things and the error occurred each time in the same module. So based on
that, it is hard to believe that this could be a server hiccup.

rdemyan wrote:
>I've been testing my code under a variety of conditions. Moving the folder
the back-end files are located in. Moving just the back-end files out of the
folder. Changing the name of the back-end files in a valid back-end folder.
In every case, my custom error messages are invoked and my custom linking
screen gets displayed. I have not yet been able to get run-time error 3044
to appear. When the client told me over the phone that he was getting this
error, I was puzzled and am now even more puzzled, since I just don't see how
this could happen.

Right now when my app launches, it deletes all linked tables during startup
and recreates them based on the location information passed in from the
launcher. So given that the app deletes the links at startup before any type
of action is done on the links (opening or code action), I don't see how this
error can even be generated given how my startup code works.

Also the error that my client got occurred in a module that is invoked in the
startup routine. In my client's case, if there was a problem during linking
an error should have been generated at that time, not in a subsequent module.
>>>In other words, Access will allow the invalid connection strings on
startup and an error is only generated when some action is taken to
[quoted text clipped - 9 lines]
>>>
Thanks.
--
Message posted via AccessMonster.com
http://www.accessmonster.com/Uwe/For...ccess/200609/1

Sep 29 '06 #4

P: n/a
Sorry for all of these posts one after the other. Another idea occurred to
me and that was to corrupt the back-end files to see what happens (now that I
know how, it is really depressing to see how easy it is to corrupt an access
file, protected or not).

So, I corrupted my back-end file and tried to connect to it. I got the
following error message during startup of my application:

Error #3343
"Unrecognized database format '......'.

Still can't figure out to make error #3044 show up.
rdemyan wrote:
>I wish this forum had the ability to edit posts.

To be clear, the error the client got occurred after my code recreated the
links. Also, the file name listed by the 3044 error does in fact exist out
on the server. The only thing I can think of is that there was some kind of
hiccup at the server. But I had him logon at least 6 to 8 times to test a
few things and the error occurred each time in the same module. So based on
that, it is hard to believe that this could be a server hiccup.
>>I've been testing my code under a variety of conditions. Moving the folder
the back-end files are located in. Moving just the back-end files out of the
[quoted text clipped - 20 lines]
>>>>
Thanks.
--
Message posted via http://www.accessmonster.com

Sep 29 '06 #5

P: n/a
>To be clear, the error the client got occurred after my code
>recreated the links.
Is your client able to establish the links manually via

Tools Database Utilities Linked Table Manager

....?
rdemyan via AccessMonster.com wrote:
I wish this forum had the ability to edit posts.

To be clear, the error the client got occurred after my code recreated the
links. Also, the file name listed by the 3044 error does in fact exist out
on the server. The only thing I can think of is that there was some kind of
hiccup at the server. But I had him logon at least 6 to 8 times to test a
few things and the error occurred each time in the same module. So based on
that, it is hard to believe that this could be a server hiccup.

rdemyan wrote:
I've been testing my code under a variety of conditions. Moving the folder
the back-end files are located in. Moving just the back-end files out of the
folder. Changing the name of the back-end files in a valid back-end folder.
In every case, my custom error messages are invoked and my custom linking
screen gets displayed. I have not yet been able to get run-time error 3044
to appear. When the client told me over the phone that he was getting this
error, I was puzzled and am now even more puzzled, since I just don't see how
this could happen.

Right now when my app launches, it deletes all linked tables during startup
and recreates them based on the location information passed in from the
launcher. So given that the app deletes the links at startup before any type
of action is done on the links (opening or code action), I don't see how this
error can even be generated given how my startup code works.

Also the error that my client got occurred in a module that is invoked in the
startup routine. In my client's case, if there was a problem during linking
an error should have been generated at that time, not in a subsequent module.
>>In other words, Access will allow the invalid connection strings on
startup and an error is only generated when some action is taken to
[quoted text clipped - 9 lines]
>>
Thanks.

--
Message posted via AccessMonster.com
http://www.accessmonster.com/Uwe/For...ccess/200609/1
Sep 29 '06 #6

P: n/a
Gord:

Appreciate your sticking with me on this. I hide the default Access menu bar
and use custom menu bars which do not include the Linked Table Manager. So
by default the answer is no.

The fact that I can't recreate this problem in my office puzzles me..

He tried to logon to a test version of my app (we're checking new
functionality). I had to copy the files onto their server from about 1200
miles away. It is a very slow connection and took about an hour for the app
and back-end files to get copied from my location to their server. It's
possible that something went wrong with the copy process.

I forgot to mention that I actually did login with this new test app to the
updated back-end files from my remote location (took 15 minutes to login
whereas the normal login time is well under a minute). I did not get any
errors so I think that rules out the back-end files as somehow causing the
problem. However, my copy of the front end was not the exact same one that
he pulled off of their server and loaded onto his PC. It's supposed to be
exactly the same, but again I copied that front end from my remote location
to their server. Maybe something happened to the front end during the
copying process to their server. It's a .mde file and I always decompile
before creating a .mde to minimize corruption problems.

Perhaps it is his copy of the front end. I'll have to get him another copy
and try that before spending a lot of time exploring other problems.

Thanks for your help and I'll report back as I learn anything new.
Gord wrote:
>>To be clear, the error the client got occurred after my code
recreated the links.

Is your client able to establish the links manually via

Tools Database Utilities Linked Table Manager

...?
>I wish this forum had the ability to edit posts.
[quoted text clipped - 33 lines]
>Message posted via AccessMonster.com
http://www.accessmonster.com/Uwe/For...ccess/200609/1
--
Message posted via http://www.accessmonster.com

Sep 29 '06 #7

P: n/a
>>Is your client able to establish the links manually via
>>
Tools Database Utilities Linked Table Manager

...?
>I hide the default Access menu bar and use custom menu bars which do
not include the Linked Table Manager. So by default the answer is
no.
I was really just thinking of it as a diagnostic procedure, so it could
even be done from a separate .mdb file. It would catch things like
incorrect drive mappings, insufficient user permissions on the
files/folders, etc..

rdemyan via AccessMonster.com wrote:
Gord:

Appreciate your sticking with me on this. I hide the default Access menu bar
and use custom menu bars which do not include the Linked Table Manager. So
by default the answer is no.

The fact that I can't recreate this problem in my office puzzles me..

He tried to logon to a test version of my app (we're checking new
functionality). I had to copy the files onto their server from about 1200
miles away. It is a very slow connection and took about an hour for the app
and back-end files to get copied from my location to their server. It's
possible that something went wrong with the copy process.

I forgot to mention that I actually did login with this new test app to the
updated back-end files from my remote location (took 15 minutes to login
whereas the normal login time is well under a minute). I did not get any
errors so I think that rules out the back-end files as somehow causing the
problem. However, my copy of the front end was not the exact same one that
he pulled off of their server and loaded onto his PC. It's supposed to be
exactly the same, but again I copied that front end from my remote location
to their server. Maybe something happened to the front end during the
copying process to their server. It's a .mde file and I always decompile
before creating a .mde to minimize corruption problems.

Perhaps it is his copy of the front end. I'll have to get him another copy
and try that before spending a lot of time exploring other problems.

Thanks for your help and I'll report back as I learn anything new.
Gord wrote:
>To be clear, the error the client got occurred after my code
recreated the links.
Is your client able to establish the links manually via

Tools Database Utilities Linked Table Manager

...?
I wish this forum had the ability to edit posts.
[quoted text clipped - 33 lines]
Message posted via AccessMonster.com
http://www.accessmonster.com/Uwe/For...ccess/200609/1

--
Message posted via http://www.accessmonster.com
Sep 29 '06 #8

P: n/a
"rdemyan via AccessMonster.com" <u6836@uwewrote in
news:6708208e0f77b@uwe:
I wish this forum had the ability to edit posts.
I don't know where *you're* posting, but I'm reading your posts on
Usenet, which has never had any capability of editing posts. Even if
you're posting from a website, the forum where *I'm* seeing it would
always have to post a second message to register any corrections you
made.

--
David W. Fenton http://www.dfenton.com/
usenet at dfenton dot com http://www.dfenton.com/DFA/
Sep 29 '06 #9

P: n/a
>>Is your client able to establish the links manually via
>>
Tools Database Utilities Linked Table Manager

...?
>I hide the default Access menu bar and use custom menu bars which do
not include the Linked Table Manager. So by default the answer is
no.
I was really just thinking of it as a diagnostic procedure, so it could
even be done from a separate .mdb file. It would catch things like
incorrect drive mappings, insufficient user permissions on the
files/folders, etc..

rdemyan via AccessMonster.com wrote:
Gord:

Appreciate your sticking with me on this. I hide the default Access menu bar
and use custom menu bars which do not include the Linked Table Manager. So
by default the answer is no.

The fact that I can't recreate this problem in my office puzzles me..

He tried to logon to a test version of my app (we're checking new
functionality). I had to copy the files onto their server from about 1200
miles away. It is a very slow connection and took about an hour for the app
and back-end files to get copied from my location to their server. It's
possible that something went wrong with the copy process.

I forgot to mention that I actually did login with this new test app to the
updated back-end files from my remote location (took 15 minutes to login
whereas the normal login time is well under a minute). I did not get any
errors so I think that rules out the back-end files as somehow causing the
problem. However, my copy of the front end was not the exact same one that
he pulled off of their server and loaded onto his PC. It's supposed to be
exactly the same, but again I copied that front end from my remote location
to their server. Maybe something happened to the front end during the
copying process to their server. It's a .mde file and I always decompile
before creating a .mde to minimize corruption problems.

Perhaps it is his copy of the front end. I'll have to get him another copy
and try that before spending a lot of time exploring other problems.

Thanks for your help and I'll report back as I learn anything new.
Gord wrote:
>To be clear, the error the client got occurred after my code
recreated the links.
Is your client able to establish the links manually via

Tools Database Utilities Linked Table Manager

...?
I wish this forum had the ability to edit posts.
[quoted text clipped - 33 lines]
Message posted via AccessMonster.com
http://www.accessmonster.com/Uwe/For...ccess/200609/1

--
Message posted via http://www.accessmonster.com
Sep 29 '06 #10

P: n/a
The biggest problem you are having is that you are not using the right
tool for the right job. Desktop tools are not ideally suited for
enterprise operations. Access is a desktop tool, and your operation is
of the enterprise type.

Note: I am not knocking Access here - just pointing out the right tool
for the right job. A very good tool for enterprise operations like
yours would be VB2005 with Sql Server as the backend. For single user
operations, VB2005 would be overkill where Access would be ideal.

Use this philosophy for choosing a tool - whatever requires the least
amount of coding for a job - use that tool. For enterprise ops - Access
can do it - but not without much heartache and pain (been there) and
mountains of code. For quick storage and querying of local data like
from textfiles, Excel files, Word docs, Access is way easier to deal
with than VB2005

VB2005 has a real nice feature (of the many it has) for deploying
applications without having to run setup. It is called "Click Once
Deployment". You publish your app to the web (internet/intranet) and
anyone who has the proper authorization can download your app and
install it without running setup. And when you update the app, you just
publish the update, and users will get the updates seamlessly.

Don't be fooled that VB2005 is way harder to use than Access. Once you
get past the OOP part it is a breeze. You will end up writing a
boatload of code for your relinking routine for the Access App, where
there is no code involved at all in VB2005 deployment.

Rich

*** Sent via Developersdex http://www.developersdex.com ***
Sep 29 '06 #11

P: n/a
David:

I'm posting in Access Monster. The other big Access Help forum does allow
user's to edit their posts, I believe within one hour after the first post.

I mentioned it as a suggestion that maybe one of the
moderators/administrators might want to consider.

David W. Fenton wrote:
>I wish this forum had the ability to edit posts.

I don't know where *you're* posting, but I'm reading your posts on
Usenet, which has never had any capability of editing posts. Even if
you're posting from a website, the forum where *I'm* seeing it would
always have to post a second message to register any corrections you
made.
--
Message posted via http://www.accessmonster.com

Sep 29 '06 #12

P: n/a
"rdemyan via AccessMonster.com" <u6836@uwewrote in
news:6708d3fcac847@uwe:
David W. Fenton wrote:
>>I wish this forum had the ability to edit posts.

I don't know where *you're* posting, but I'm reading your posts on
Usenet, which has never had any capability of editing posts. Even
if you're posting from a website, the forum where *I'm* seeing it
would always have to post a second message to register any
corrections you made.

I'm posting in Access Monster. The other big Access Help forum
does allow user's to edit their posts, I believe within one hour
after the first post.

I mentioned it as a suggestion that maybe one of the
moderators/administrators might want to consider.
Do you need me to draw you a picture? This forum,
comp.databases.ms-access, is not an Access Monster forum. It is a
Usenet group that is mirrored on the Access Monster website.

It is not moderated.

Let me repeat that: there is no moderator/administrator.

Personally, I wish websites would not mirror CDMA because it causes
things I post here for this newsgroup alone to end up in Google.

--
David W. Fenton http://www.dfenton.com/
usenet at dfenton dot com http://www.dfenton.com/DFA/
Sep 30 '06 #13

This discussion thread is closed

Replies have been disabled for this discussion.