Avatar billede spejder_leon Nybegynder
31. januar 2004 - 20:10 Der er 10 kommentarer og
2 løsninger

bruger må kun åbne een indstans af databasen

Sidder med en stor database med mange brugere, og vil sikre mod at en bruger kan åbne mere end een database.
Avatar billede trer Nybegynder
31. januar 2004 - 20:26 #1
Lav en funktion der skriver brugerens login ind i en tabel når databasen åbnes, og sletter det når den lukkes.

Ved opstart checker du så også for om login allerede findes, gør det det, så lukker du basen (uden at slette loginet).  Sørg for at en bestemt konto kan override det så "hængende" loginer kan fjernes.
Avatar billede spejder_leon Nybegynder
31. januar 2004 - 20:52 #2
du vil have at folk skal logge på?

eller kan du få access til at se på win login?

det er dog ikke godt nok, er nødt til at sikre det helt, der må være en indbygget funktion...
Avatar billede trer Nybegynder
31. januar 2004 - 21:02 #3
Du burde kunne få Access til at se windows logon - funktion GetUsername() eller noget i den stil.

Men nej - der er ikke svjv nogen indbyggede funktioner...
Avatar billede fdata Forsker
01. februar 2004 - 00:18 #4
spejder_leon>>
"du vil have at folk skal logge på?" - gør de ikke det allerede ?!?
(trer's forslag lyder da meget fornuftigt)
Avatar billede terry Ekspert
01. februar 2004 - 10:23 #5
When you say "mere end een database" do you meen the same database or are they allowed to open other databases?
If you want to stop them from opening the same dB more than once then trer's solution is a simple idea. You can use
Environ("UserName") to find how is logged on
Avatar billede trer Nybegynder
19. februar 2004 - 11:36 #6
spejder_leon>hvad sker ?
Avatar billede spejder_leon Nybegynder
19. februar 2004 - 13:09 #7
I am talking about the same database file. 10 Computers open it at the same time, and it gives problem when a user opens more then one.

Ok, but the problem is when their computer does not shot down correctly, then they cannot logon. Of curse some on schould be able to overide but if that person is not there....
Avatar billede trer Nybegynder
19. februar 2004 - 13:14 #8
You could either build an "free user" function that anybody may activate, or you could let the client write a timestamp to the database every 5 minutes.  If the timestamp is older than 5 minutes, you can ignore it on logon.
Avatar billede spejder_leon Nybegynder
19. februar 2004 - 13:32 #9
That were quit good, could you give a hint on the time stamp thingee...
Avatar billede trer Nybegynder
19. februar 2004 - 13:47 #10
Hmmm... lad os bare tage den på dansk; Jeg tænkte mig noget i denne stil

tabel brugere:
  id primær nøgle,
  brugernavn text(50),
  tidsstempel datetime

ved logon:
Check om bruger allerede har et tidsstempel der er mindre end 5 minutter fra aktuelle NOW
  SELECT tidsstempel from brugere where brugernavn = environ("username")
 
hvis ja - exit
hvis nej -
  UPDATE brugere SET tidsstempel = NOW where brugernavn = environ("username")

Så skal du lave en timerfunktion der blot hvert 5 minut udfører ovenstående UPDATE - så er det det.
Avatar billede spejder_leon Nybegynder
19. februar 2004 - 16:29 #11
ja, men eftersom der er 27 forskellige formulare der kan være aktive er (som jeg ser det) det nødvendigt at lægge opdateringsfunktionen i et ekstern modul?

Kan man andvende timer funktion der?
Avatar billede trer Nybegynder
19. februar 2004 - 17:07 #12
Beklager, Jeg har aldrig lavet noget i Access Frontend, og nu er du på et niveau i Access hvor jeg ikke kan være med - endsige svare...

Umiddelbart vil din "hovedform" vel stadig være aktiv - men jeg gætter...
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester