Track Users

jj72uk

Registered User.
Local time
Yesterday, 23:14
Joined
May 19, 2009
Messages
65
Ok Guys,

I have searched this forum and used google with not much luck...

I have a database shared on a network which works fine. I am looking to add the feature to be able to track when network users go into the db. I;m not to concerend about finding out the changes, more importantly who goes into it ( been to many occassions where someone breaks it. eg makes it corrupt)

I found a module which supposedly does this but I am lost at how to use it.

Is there a simple way to make a table that will log a user and time stamps it?

CHeers
 
you have a single database, not split on a network?

that is why it gets corrupted - its an unreliable scenario

split the data between front end and back end. and give every user there own front end.

loads of comments here about this
 
A good read about what Dave said.
 
Very intresting read, something that I never considered.

The idea of giving each user there own FE may not work as the users have a roaming profile, so if I were to give the users there own FE it will end up being on the same network drive which we all share.

I will deffintly consider this as it looks like a good thing.

Is there a viable option for my orginal question? Just a simple table that records the user and time stamps?
 
Is there a viable option for my orginal question? Just a simple table that records the user and time stamps?
Just make sure that the users are not using the SAME frontend over the network (good corruption ground there).

The use of their own FE over a network is not optimal but at least should give you some better protection than sharing the same file.

As for the date/time stamp, you can create a hidden form which is bound to a hidden table and has something like (with the default for the date/time field to =Now() )
Me.YourUserTextBox = Environ("username")
in the form's On Load event and then in the unload event of that hidden form, you can use

Me.YourLogOutTimeBox = Now()
 
when you open a database, a file is created with a .ldb extension, which contains details of the logged in users.

you can find tools to interrogate this.

Now, in a non-split database this is probably easier, but as already pointed out, this scenario is dangerous and is likely to be the cause of the corruptions - especially if users are connecting other than on your LAN. Its much more likely to be just a result of your dbs architecture, rather than the users doing anytrhing untoward.


In a split database, its not your .ldb you need to interrogate, its the .ldb of the split back end, ehich is much more complicated.

I think you will find the safest way for offsite users to connect is by remote desktop to a terminal server
 
No one has remote off site access to our network drives... none who would need the use of the DB.

I have attempted to split the DB but have found that the feature isnt currently installed, so I have tried to intall it but do not have the correct adminator privileges...(!)

So its going to have to be just 1 DB if it gets corrupted then I will just have to fix it.

I'm still not entirly sure how to track and time stamp a user...
 
I have attempted to split the DB but have found that the feature isnt currently installed, so I have tried to intall it but do not have the correct adminator privileges...(!).
Don't fret about that. All you need to do is to create a new mdb file, import (not link) all of your tables in to the database file. Then that will be your backend. Then you delete all of the tables from the other file (one with your forms and reports, etc. in it) and then use FILE > GET EXTERNAL DATA > LINK to link to the tables. There you go - you just have a split database - no need for the wizard to do it for you.
 
What i meant is that there own personal PC won't hold there profile, they're able to log onto another PC and there profile will follow them... we sometimes hot desk here....

I'll look into making 2 mdb's
 
Don't fret about that. All you need to do is to create a new mdb file, import (not link) all of your tables in to the database file. Then that will be your backend. Then you delete all of the tables from the other file (one with your forms and reports, etc. in it) and then use FILE > GET EXTERNAL DATA > LINK to link to the tables. There you go - you just have a split database - no need for the wizard to do it for you.


Mwhahah!!! Wonderful...

Can mutliple users still access the front end? Or should I create a front end for each person (please not that!!)
 
Can mutliple users still access the front end? Or should I create a front end for each person (please not that!!)
The way to go is that only one FE copy per user.

If you go with the shared file, be prepared for handling corruption FREQUENTLY (I know of one place that it happened at least 2 times a week until they finally got wise and gave each user a copy of the frontend and then they suffered no corruption since and that has been like 3 years now).
 
Ergh... I'm mean its not hard to set up...but knowing the users they will it complicated...oh well..

Anyway... if I could a simple clear direction in how to track users then that would be good.
 
How about a tracking sample. I just threw it together for you.
 

Attachments

I'll have to check it out when i get home from work. We only have access 2000 here... got 2007 at home
 
Thats fantastic.

Can i get rid of the start up form so my current form continues to startup and just import the table and log form?
 
The key is to use an autoexec macro to first kick off and open the hidden form so it will be the last shut down by Access if someone uses the X to close out. So in the AutoExcec macro you can also open your main form.

If you want to use the form as I have it, you will need

1. The table
2. The form
3. The module that has the code to get the username since I used that although you might be able to get by with replacing the fOSUsername function in the form's On Load event to Environ("username") instead.
 
Thats fine.

If I use the autoexcec that you provided then my current one will be overwritten meaning my current main form wont open?
 
Thats fine.

If I use the autoexcec that you provided then my current one will be overwritten meaning my current main form wont open?
Just add the Action/Arguments that I have in mine to yours as the very first line.
 

Users who are viewing this thread

Back
Top Bottom