TKSoft-Online

Willkommen, Gast
Benutzername: Passwort: Angemeldet bleiben:

Alle Online User einer Access DB anzeigen lassen
(1 Leser) (1) Gast
Alles rund um MS-Access
  • Seite:
  • 1

THEMA: Alle Online User einer Access DB anzeigen lassen

Alle Online User einer Access DB anzeigen lassen 2 Jahre, 11 Monate her #535

  • Franko08
  • OFFLINE
  • Fresh Boarder
  • Beiträge: 5
  • Karma: 1
Hallo Freunde von Access,

ich möchte gerne in meiner Access-DB auf dem Startformular alle temporären
Online-User mit Vor- und Nachnamen anzeigen lassen - wie hier bei TKSoft-Online.
Alle potenziellen User habe ich dabei in einer Tabelle eingetragen -
auf dem Startformular habe ich ein Kombinationsfeld zwecks Anzeige angelegt.
Nun bin ich mir nicht sicher wie ich dieses Feld mit den Namen \"füttern\" kann -
dabei immer den aktuellen Stand mit den derzeitig eingeloggten Usern.
Es sollen alle User, die momentan in der DB sind, angezeigt werden.

Könnt Ihr mir hier weiterhelfen ?
Das wäre klasse.

Gruß
Franko08

Re:Alle Online User einer Access DB anzeigen lassen 2 Jahre, 11 Monate her #536

  • TommyK
  • ONLINE
  • Administrator
  • Beiträge: 503
  • Karma: 4
Hallo Franko08,

das ginge nur mit einer Userverwaltung mit Anmeldung und Rechten.
Hast Du so etwas schon in Deiner DB?
Gruß TommyK

Re:Alle Online User einer Access DB anzeigen lassen 2 Jahre, 11 Monate her #537

  • Franco08
Hallo Tommy,

ja, die DB ist verschlüsselt und alle User haben individuelle Rechte bzw.
Berechtigungen von mir in der DB zugewiesen bekommen.
Hast Du hier einen Tipp über das weitere vorgehen ?

Gruß
Franco08

Re:Alle Online User einer Access DB anzeigen lassen 2 Jahre, 11 Monate her #538

  • TommyK
  • ONLINE
  • Administrator
  • Beiträge: 503
  • Karma: 4
Hallo Franco08,

benutzt Du das interne Rechtesystem von Access oder ein anderes?
Gruß TommyK

Re:Alle Online User einer Access DB anzeigen lassen 2 Jahre, 11 Monate her #554

  • Franko08
Hallo Tommy,

es ist das interne Access2000-Rechtesystem.

Gruß
Franko08

Re:Alle Online User einer Access DB anzeigen lassen 2 Jahre, 11 Monate her #555

  • TommyK
  • ONLINE
  • Administrator
  • Beiträge: 503
  • Karma: 4
Hallo Franko,

dafür kannst Du den LDB-Viewer nehmen.
Gruß TommyK

Re:Alle Online User einer Access DB anzeigen lassen 2 Jahre, 11 Monate her #561

  • Franko08
  • OFFLINE
  • Fresh Boarder
  • Beiträge: 5
  • Karma: 1
Hallo Tommy,

auch hilfreich, aber leider noch nicht ganz das was ich benötige.
Wenn ich mich an meinem Rechner mit 2 unterschiedlichen User-
Logins in der DB einlogge, dann tauchen im Viewer nicht die
beiden gesonderten User auf sondern nur ich selber 2x, da am
gleichen Rechner der Einstieg erfolgt ist.

Ich habe in der DB eine Tabelle angelegt mit den User-ID's, den
dazugehörigen Vor- und Zunamen.
Diese Vor-und Zunamen sollen für alle eingeloggten User im
Startfenster (Formular) angezeigt werden (Who's on ?).
Wir arbeiten in der Firma von verschiedenen Standorten aus, da
ist es hilfreich zu wissen wer aktuell Online ist.

Im Startfenster(Formular) habe ich derzeit einen Code hinterlegt,
der mir momentan nur die Anzahl der Online-User mitteilt und den
zuletzt eingelogten User - aber eben nicht alle namentlich.
Im Code habe ich noch etwas in Anführungszeichen gesetzt, was auch
eventuell in der Form laufen könnte aber \"noch nicht rund\" ist.
Unter \"DB_User\" sind in der Tabelle \"tab_DBUser\" die Vor-und Zunamen
eingetragen.Der \"TH-User\" ist dabei ein spezielles User-Kürzel.

Anbei mein derzeitiger Code für das Startfenster:

Private Sub Form_Load()
 
Dim rst As ADODB.Recordset
Dim AnzOnline As Byte
Dim Userlist As String
Dim strpath As String
 
Dim arrUserList As Variant
Dim n, i As Long
 
strpath = CurrentDb.Name
arrUserList = DBUsers(strpath)
 
i = -1
On Error Resume Next
i = UBound(arrUserList, 2)
On Error GoTo 0
If i > -1 Then
Me!AnzOnline = i + 1
For n = 0 To i
Me!Userlist = UCase(arrUserList(0, n))
'Set rst = CurrentProject.Connection.Execute( _
\"Select * FROM tab_DBUser WHERE TH_User = CurrentUser()\"«»)'

'Me!Userlist = UCase(rst(\"DB_User\"«»))'
Next n
End If
Me!txtMDB = CurrentDb.Name
End Sub

Hast Du hierzu eine Idee oder bin ich damit auf dem Holzweg ?

Vielen Dank.

Franko08
Letzte Änderung: 2 Jahre, 11 Monate her von TommyK.

Re:Alle Online User einer Access DB anzeigen lassen 2 Jahre, 11 Monate her #562

  • TommyK
  • ONLINE
  • Administrator
  • Beiträge: 503
  • Karma: 4
Hallo Franko08,

was sich mir bei der ganzen Sache verschließt ist die Verbindung des internen Rechtsystems mittels MDW-Datei und Deiner UserTabelle.
Das müsste ich genauer wissen oder habe ich es nicht richtig verstanden.
Gruß TommyK

Re:Alle Online User einer Access DB anzeigen lassen 2 Jahre, 11 Monate her #563

  • Franko08
  • OFFLINE
  • Fresh Boarder
  • Beiträge: 5
  • Karma: 1
Hallo Tommy,

Deine schnellen Reaktionen sind wirklich bemerkenswert - toll.

Es besteht im Prinzip keine Verbindung zwischen der MDW-Datei und der von mir
erstellten User-Tabelle.
Ich habe alle registrierten User in dieser Tabelle aufgeführt mit Ihrem individuellen Passwort, dem User-Login (TH-User), ihren Gruppenrechten und
Ihren Vor-und Nachnamen.
Nun möchte ich ereichen, daß beim Einloggen durch TH-User/Paßwort in die DB
mittels einer Abfrage oder eines Codes die Tabelle nach den jeweilgen Vor-
und Nachnamen durchsucht wird und die Online-User in einer Auflistung mit ihrem
Vor- und Nachnamen erscheinen.
Im Prinizp:
Meldet sich der TH-User \"TH89CP\" mit dem Passwort \"XYZ\" an, dann ist dies der User \"Gerd Flügge\" -> Gerd Flügge erscheint auf dem Startformular als Online-User.

Ist dies möglich ?

Gruß
Franco08

Re:Alle Online User einer Access DB anzeigen lassen 2 Jahre, 11 Monate her #564

  • TommyK
  • ONLINE
  • Administrator
  • Beiträge: 503
  • Karma: 4
Hallo Franko,

anbei eine kleine Bsp-DB wie es gehen könnte.

1. Tabelle \"tbl_User\" hat ein Ja/Nein-Feld \"Login\"
2. Das Form \"Formular1\" ist hier das Startform.
3. Beim Laden-Ereignis des Forms läuft dies ab:
 
Private Sub Form_Load()
Dim sCurrentUser As String, sSource As String
Dim cnn As New ADODB.Connection
Dim rst As New ADODB.Recordset
 
sCurrentUser = Application.CurrentUser
 
sSource = \"SELECT tbl_User.User, tbl_User.Login FROM tbl_User WHERE \" & _
\"(((tbl_User.User)='\" & sCurrentUser & \"'));\"
Set cnn = CurrentProject.Connection
rst.Open sSource, cnn, adOpenDynamic, adLockOptimistic
rst!Login = True
rst.Update
rst.Close
lst_User.Requery
End Sub
 

Nach dem öffnen wird der aktuelle User gelesen und in der Tabelle bei diesem User der Login auf True gesetzt.
Zuletzt wird das Listenfeld aktualisiert.

4. Der Timer ist im Form auf 10000 (10 Sek) gesetzt. Somit wird das Listemfeld aller 10 Sek aktualisiert.
 
Private Sub Form_Timer()
lst_User.Requery
End Sub
 

5. Damit niemand das Programm über das X Schliesen kann ist in dem Form eine unsichtbare Checkbox
Standardwert=0
 
Private Sub Form_Unload(Cancel As Integer)
If Me!chk_Close = False Then Cancel = True
End Sub
 

Somit kann das Programm nur über den Beenden-Button geschlossen werden.
Das ist wichtig damit der Login-Zustand beim Beenden geändert werden kann.
 
Private Sub cmd_Close_Click()
Dim sCurrentUser As String, sSource As String
Dim cnn As New ADODB.Connection
Dim rst As New ADODB.Recordset
 
sCurrentUser = Application.CurrentUser
sSource = \"SELECT tbl_User.User, tbl_User.Login FROM tbl_User WHERE \" & _
\"(((tbl_User.User)='\" & sCurrentUser & \"'));\"
Set cnn = CurrentProject.Connection
rst.Open sSource, cnn, adOpenDynamic, adLockOptimistic
rst!Login = False
rst.Update
rst.Close
 
Me!chk_Close = True
DoCmd.Quit
End Sub
 


Das Ganze funktioniert natürlich nur sollange das Startform dauerhaft geöffnet ist.

Dateianhang:

Dateiname: user.zip
Dateigröße: 12296
Gruß TommyK

Re:Alle Online User einer Access DB anzeigen lassen 2 Jahre, 11 Monate her #565

  • Franko08
  • OFFLINE
  • Fresh Boarder
  • Beiträge: 5
  • Karma: 1
Hallo Tommy,

das ist wirklich vielversprechend - ich werde dies so umsetzen und mich
dann melden.
Weltklasse.

Gruß
Franko08

Re:Alle Online User einer Access DB anzeigen lassen 2 Jahre, 11 Monate her #566

  • Franko08
  • OFFLINE
  • Fresh Boarder
  • Beiträge: 5
  • Karma: 1
Hallo Tommy,

es funktioniert !! - vielen Dank für Deinen Support.

Gruß
Franko08
  • Seite:
  • 1
Moderatoren: TommyK
Ladezeit der Seite: 5.44 Sekunden

Login

Latest Comments

Latest Forum Posts

Mehr »

Download Statistik

41 Kategorien
187 Dateien
173482 Downloads

JoomlaWatch 1.2.11 - Joomla Monitor and Live Stats by Matej Koval