- Local time
- Today, 01:16
- Joined
- Feb 28, 2001
- Messages
- 30,495
OK, two issues
1. Build a split database with Front End, Back End (FE/BE). Put the FE and BE in the same shared drive. Tell your users via e-mail or some other way when you update the FE. Let them copy the FE to their local machines.
2. Tracking users is BEST done by having a startup form that says, in effect, "Howdy, pardner!" and then appears to go away. BUT... in the startup form's OnLoad routine, you can update a hidden table in any way that you want.
What I do is use the Environment("Username") because that tells me who Windows thinks is logged in. You said things about "roaming profiles" that makes me think this would work for you, 'cause roaming profiles implies a domain-based login system.
Now, to REALLY get fancy, your startup can look at some arbitrary table in the database that shows the version number of the FE. Then have the startup form compare some constant in its own code to the FE version and tell folks, "You are running an out-of-date version of the FE, download the new one."
What I also did was rather than have the starup from exit, I made it minimize itself. Then when the user closed the DB, the form's OnClose routine gave me logout info.
Once you have that form hidden in the background, all sorts of useful things can happen. Like if you have a table of scheduled events, put an entry in it for a date and time of day. Run a timer in the form. It runs even in hidden forms. When an event comes due, have the form pop up a warning that you need to take the DB down for something like backup or maintenance. And if they don't log out by a certain time, the form can do it for you with a DoCmd.Quit in the form's timer code.
1. Build a split database with Front End, Back End (FE/BE). Put the FE and BE in the same shared drive. Tell your users via e-mail or some other way when you update the FE. Let them copy the FE to their local machines.
2. Tracking users is BEST done by having a startup form that says, in effect, "Howdy, pardner!" and then appears to go away. BUT... in the startup form's OnLoad routine, you can update a hidden table in any way that you want.
What I do is use the Environment("Username") because that tells me who Windows thinks is logged in. You said things about "roaming profiles" that makes me think this would work for you, 'cause roaming profiles implies a domain-based login system.
Now, to REALLY get fancy, your startup can look at some arbitrary table in the database that shows the version number of the FE. Then have the startup form compare some constant in its own code to the FE version and tell folks, "You are running an out-of-date version of the FE, download the new one."
What I also did was rather than have the starup from exit, I made it minimize itself. Then when the user closed the DB, the form's OnClose routine gave me logout info.
Once you have that form hidden in the background, all sorts of useful things can happen. Like if you have a table of scheduled events, put an entry in it for a date and time of day. Run a timer in the form. It runs even in hidden forms. When an event comes due, have the form pop up a warning that you need to take the DB down for something like backup or maintenance. And if they don't log out by a certain time, the form can do it for you with a DoCmd.Quit in the form's timer code.