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

Shared Database question

P: 30
We have a shared database up that we need to make some changes to (on the forms). Obviously, we are unable to make these changes if someone is in the database. We have totally cut off access to the folder that the file is in, so new people can't open it, but it appears that someone still has the file open. Since it has been 3 hours or so, we're assuming someone just opened it up and is letting it sit there, open, on their computer, and is not actually using it. I have tried opening it in exclusive mode, but that doesn't change a thing.

Does anyone know of a way to either 1. find out which users currently have the file open, so I can call them, or 2. just straight up kick everybody currently using the database off?
Sep 20 '07 #1
Share this Question
Share on Google+
5 Replies


Denburt
Expert 100+
P: 1,356
Sure we can give them the boot it will take a little coding though how is your VBA? Does your Database have any security enabled for various users (not that it matters to much).

It sounds like your not using a frontend back end solution so I am not sure if this will be a viable solution for that scenario but you can try it.

I use a Front End and a Back End it speeds things up and simplifies things in a major way. Let me tell you how I managed this and we can see if your up to the task.

1 check box on the main form or switchboard tied to a controlsource to store the value in a local table on the Front End (if only using 1 db for both use the main db and we can see if it will still work as anticipated). 1 form to let them know they are about to get booted.

Main form on open event looks at the table in question if true then msgbox "Go away have a beer and come back later I am busy!" (probably other ways for this).

Main forms timer event set to roughly 5 min looking at the check box and at the main forms tag, if checkbox is true and not me.tag = True then popup a big red form telling them to "Get Out and Go Away you have roughly 5 min. to vacate or you will be evicted from this database." at the time you open the get out form you can set the tag on the main form to true. When the timer rolls around the next time and me.tag = true then docmd.quit and out they go.

I wrote this off the top of my head so everything I use may not be as exact as I have described it. But that is basically the way I resolved that issue.

I hope the humor wasn't to bad.
Good luck let me know how it turns out, or if you want to push forward and have any questions feel free to ask.
Sep 20 '07 #2

FishVal
Expert 2.5K+
P: 2,653
We have a shared database up that we need to make some changes to (on the forms). Obviously, we are unable to make these changes if someone is in the database. We have totally cut off access to the folder that the file is in, so new people can't open it, but it appears that someone still has the file open. Since it has been 3 hours or so, we're assuming someone just opened it up and is letting it sit there, open, on their computer, and is not actually using it. I have tried opening it in exclusive mode, but that doesn't change a thing.

Does anyone know of a way to either 1. find out which users currently have the file open, so I can call them, or 2. just straight up kick everybody currently using the database off?
Hi, Monroeski.
  • Your can monitor users with a table containing [User] and [IsLogged] fields. This worth a separate discussion.
  • You may force Access application to close when no user activity detected within a predefined time period. See Automatically Log off idle users
  • And the last but not the least. Some user may not has closed Access properly and ldb file is still present which doesn't allow you to make changes.
Sep 20 '07 #3

ADezii
Expert 5K+
P: 8,638
We have a shared database up that we need to make some changes to (on the forms). Obviously, we are unable to make these changes if someone is in the database. We have totally cut off access to the folder that the file is in, so new people can't open it, but it appears that someone still has the file open. Since it has been 3 hours or so, we're assuming someone just opened it up and is letting it sit there, open, on their computer, and is not actually using it. I have tried opening it in exclusive mode, but that doesn't change a thing.

Does anyone know of a way to either 1. find out which users currently have the file open, so I can call them, or 2. just straight up kick everybody currently using the database off?
What Users are Currently Logged on to my Database?
Sep 20 '07 #4

P: 65
Sure we can give them the boot it will take a little coding though how is your VBA? Does your Database have any security enabled for various users (not that it matters to much).

It sounds like your not using a frontend back end solution so I am not sure if this will be a viable solution for that scenario but you can try it.

I use a Front End and a Back End it speeds things up and simplifies things in a major way. Let me tell you how I managed this and we can see if your up to the task.

1 check box on the main form or switchboard tied to a controlsource to store the value in a local table on the Front End (if only using 1 db for both use the main db and we can see if it will still work as anticipated). 1 form to let them know they are about to get booted.

Main form on open event looks at the table in question if true then msgbox "Go away have a beer and come back later I am busy!" (probably other ways for this).

Main forms timer event set to roughly 5 min looking at the check box and at the main forms tag, if checkbox is true and not me.tag = True then popup a big red form telling them to "Get Out and Go Away you have roughly 5 min. to vacate or you will be evicted from this database." at the time you open the get out form you can set the tag on the main form to true. When the timer rolls around the next time and me.tag = true then docmd.quit and out they go.

I wrote this off the top of my head so everything I use may not be as exact as I have described it. But that is basically the way I resolved that issue.

I hope the humor wasn't to bad.
Good luck let me know how it turns out, or if you want to push forward and have any questions feel free to ask.
that is very clever, thanks for the post
Oct 11 '07 #5

Rabbit
Expert Mod 10K+
P: 12,366
The solutions provided are preventative. It sounds like you are stuck in a position where you can't implement any preventative measures because it is currently open. Here's what you do: reboot the server. If this is not a viable option. Look at the groups that have access to database and start making calls.

It may even be that they no longer have access running but the process is still running. In which case you'll have to end the process by finding it in the task manager.
Oct 11 '07 #6

Post your reply

Sign in to post your reply or Sign up for a free account.