Neuigkeiten:

Ist euer Problem gelöst, dann bitte den Knopf "Thema gelöst" drücken!

Mobiles Hauptmenü

Anmelde Aufforderung nach einer gewissen Zeit

Begonnen von Bernie110, Mai 07, 2012, 09:43:09

⏪ vorheriges - nächstes ⏩

Bernie110

Hallo Zusammen,

ich hab FE & BE.

Jeweils ein FE liegt auf 2 Rechnern, gesichert mittels Sicherungsassi.
Beide greifen auf ein BE auf dem Server zu.

Auf beiden Rechnern arbeiteten mehrere User.
Diese User melden sich derzeit mit dem gleichen Passwort und Login Namen an.

Nun möchte ich jedem User einen Login Namen und ein Passwort geben.
Allerdings soll sich der User dabei nicht immer ab und wieder anmelden müssen.

Ich stell mir das so vor.

Das Fe hat nur 2 Formulare.

Ein Tabellarisches  Name: Sendungs_Übersicht und eines mit dem Namen DT_Erfassung_Name
Sobald ein User das Formular DT_Erfassung_Name öffnet, sollte eine Login & Passwortabfrage erscheinen.
Erst nachdem der User sein Passwort eingegeben hat, öffnet sich dieses Formular.

Warum möchte ich das Ganze so ?

Ich möchte wissen, welcher User diesen DS bearbeitet hat.

Ist das möglich ? Wenn ja wie ? Hat jemand eine Idee ?

Gruss
Bernie



database

Hallo Bernie,

die einfachste Lösung wäre m.E. der Weg über die Benutzeranmeldung am Rechner - also den angemeldeten Benutzer zu ermitteln.
Wenn sich die Rechner nicht in einer Domänenumgebung befinden ist jedoch naturgemäß die
Benutzerverwaltung ein wenig aufwändiger, da jeder mögliche User an beiden Rechnern vorhanden sein muß.

Nach deinen Zeilen urteile ich aber, dass sich die Rechner als Arbeitsgruppenrechner in einem Netzwerk befinden.
Den Ansatz einer Benutzer- und Kennworteingabe beim Wechsel in ein Formular zu verlangen finde ich nicht ganz gut.

Ich würde da eher ein Startformular kreieren und den Benutzer dort einmalig anmelden lassen (so wie du es beim Formularwechsel angedacht hast)
ZitatIch möchte wissen, welcher User diesen DS bearbeitet hat.
Den Benutezrnamen KÖNNTEST du in einer glob. Variablen halten und zusammen mit Datum und Uhrzeit in einem geeigneten Tabellenfeld speichern.
Auch eine Unterscheidung wer den DS angelegt und wer ihn editiert hat ist so möglich.

Die Gültigkeit der Anmeldung bleibt dann solange erhalten bis ... z.B. über einen Button 'Beenden' ... wieder auf's Startformular zurückgegangen wird.

Bei der Authentifizierung durch Formarwechsel kann es sein, dass sich ein Benutzer mehrmalig anmelden muss - immer wieder wenn die Formulare abwechselnd geöffnet und geschlossen werden.
Kann sein, dass dieses für die Benutzer recht nervig werden kann.

Bernie110

Hallo Peter,

ZitatDen Benutezrnamen KÖNNTEST du in einer glob. Variablen halten und zusammen mit Datum und Uhrzeit in einem geeigneten Tabellenfeld speichern.
Auch eine Unterscheidung wer den DS angelegt und wer ihn editiert hat ist so möglich.

Ein eignes Tbl_feld für Angelegt & geändert hab ich.

Den Benutzer hierfür ermittel ich momentan über = AktuellerUser()

Aber wie bekomm ich dann nach deiner Variante den aktuellen User. Das ist mir noch nicht ganz klar.

Gruss
Bernie

database

Hallo Bernie,

ZitatDiese User melden sich derzeit mit dem gleichen Passwort und Login Namen an

für den Fall kannst du die  Benutzeranmeldung des Betriessystems nicht verwenden - sie würde ja immer den gleichen Benutzer melden.

Daher ist die Variante mit der Startseite eher geeignet.

Hier erstellst du 2 Textfelder welche Benutzernamen (den du vergibst) und das zugeordnete Kennwort aufnehmen.
Zur Prüfung der Authentifizierung kannst du in einer Stand-Allone Tabelle des BE diese Daten unterbringen.
Per Buttonklick (z.B. 'Start') holst du Benutzernamen und Kennsort aus den Feldern und vergleichst sie mit den Tabelleneinträgen.
Wurde richtig eingegeben, speicherst du den Benutzernamen in einer globalen Variablen, entleerst die beiden Textfelder und öffnest das erste der Formulare.
Wird eine Änderung an den Daten durchgeführt oder ein neuer Datensatz angelegt verfrachtest due den Benutzernamen aus der Variablen in die
ZitatEin eignes Tbl_feld für Angelegt & geändert hab ich.
entsprechend vorgesehenen Tabellenfelder.

Im Ereignis 'Beim Laden' des Startformulars setzt du dann einfach ... strDeineVariable = ""
Die beiden Formulare dürfen - um der Sache Sinn zu geben nur dann geöffnet werden können wenn die Variable <> "" ist - also ein Benutzer angemeldet ist.

Zur Demonstration habe ich ein kurzes SEHR einfaches Beispiel angehängt.

Bitte zu beachten, dass hierbei ausser der Sternchen im Feld txtKennwort keinerlei Sicherheitsnetze vorhanden sind!

HTH

[Anhang gelöscht durch Administrator]

Bernie110

Hallo Peter,

super, dass sollte mir helfen !

Danke
Gruss
bernie

Beaker s.a.

Hallo Bernie,
Habe Dir Peters Beispiel noch ein bißchen
erweitert um eine Klasse clsMitarbeiter.
Da bist Du noch flexibler und kannst sie
nach Deinen Vorstellungen/Anforderungen
erweitern.
Mit DoCmd.OpenForm  "frmStart"
kannst Du so an jeder Stelle Deines Codes das
Login erzwingen, und hast ansonsten zu jeder
Zeit Zugriff auf alle (eingerichteten) Eigenschaften
des angemeldeten Mitarbeiters (MA).
hth
gruss ekkehard

[Anhang gelöscht durch Administrator]
Alles, was geschieht, geschieht. - Alles, was während seines Geschehens etwas anderes geschehen lässt, lässt etwas anderes geschehen. - Alles, was sich selbst im Zuge seines Geschehens erneut geschehen lässt, geschieht erneut. - Allerdings tut es das nicht unbedingt in chronologischer Reihenfolge.
(Douglas Adams, Mostly Harmless)

Bernie110