Supportnet / Forum / Datenbanken
Datensatzsperre über Tabelleneintrag - Access 2000
Frage
Hallo Zusammen,
eine für viele wahrscheinlich unkomplizierte Sache:
Ich möchte meine Datenbank für einige Personen nur das Recht geben, sie zu lesen. Diese Rechte werden in einer "Benutzertabelle" vergeben.
Datensätze für alle kann ich ja mit Me.AllowEdits sperren. Aber was muss ich eingeben, damit mein Datensatz sich mit der Tabelle abgleichen kann (Ja/Nein-Felder).
Wäre für Eure Hilfe sehr dankbar.
Gruß
Franz
Antwort 1 von piano
Hallo
Was verstehst du unter:
Gruß piano
Was verstehst du unter:
Zitat:
damit mein Datensatz sich mit der Tabelle abgleichen kann (Ja/Nein-Felder) ?
damit mein Datensatz sich mit der Tabelle abgleichen kann (Ja/Nein-Felder) ?
Gruß piano
Antwort 2 von RalfH
Hallo Nixweiß,
Wenn Du ein wenig VBA kannst, würd ich Dir ne Select Case Prozedur vorschlagen, in der Du z.B. Kennwörter an Personen vergibst, die dann durch die Select Case abfrage verschiedene Berechtigungen vergeben kannst.
Gruß Ralf
Wenn Du ein wenig VBA kannst, würd ich Dir ne Select Case Prozedur vorschlagen, in der Du z.B. Kennwörter an Personen vergibst, die dann durch die Select Case abfrage verschiedene Berechtigungen vergeben kannst.
Gruß Ralf
Antwort 3 von Nixweiß
Hallo Ralf,
ich habe ein Startdokument eingefügt, in dem der Nachname sowie ein dazugehöriges Passwort vergeben wird.
Könntest Du mir vielleicht das noch etwas erklären, was ich eingeben muss, wenn ich z.B. einen Datensatz vor Änderungen eines (Nicht)-Berechtigten - also, der darf zwar in die Datenbank aber eben nur lesen - schützen möchte.
Besten Dank schon mal.
Gruß
Franz
ich habe ein Startdokument eingefügt, in dem der Nachname sowie ein dazugehöriges Passwort vergeben wird.
Könntest Du mir vielleicht das noch etwas erklären, was ich eingeben muss, wenn ich z.B. einen Datensatz vor Änderungen eines (Nicht)-Berechtigten - also, der darf zwar in die Datenbank aber eben nur lesen - schützen möchte.
Besten Dank schon mal.
Gruß
Franz
Antwort 4 von RalfH
Hallo weisnix,
Habt das selbst zwar noch nicht gemacht, aber probieren geht über studieren, gelle?
Ich würde mir das so vorstellen das beim öffnen eines Formulars das Kennwort abgefragt wird, und dann eben die Daten-Eigenschaft des Formulars entsprechend gesteuert wird, z.B:
Dim a As String
Dim db As DAO.Database
Dim rst As DAO.Recordset
Set db = CurrentDb
a = InputBox("Bitte geben Sie das Kennwort ein")
If a = "Schattenparker" = True Then
Set rst = db.OpenRecordset("tblMitarbeiter", dbOpenDynaset)
Else
Set rst = db.OpenRecordset("tblMitarbeiter", dbOpenSnapshot)
End If
Gruß Ralf
Habt das selbst zwar noch nicht gemacht, aber probieren geht über studieren, gelle?
Ich würde mir das so vorstellen das beim öffnen eines Formulars das Kennwort abgefragt wird, und dann eben die Daten-Eigenschaft des Formulars entsprechend gesteuert wird, z.B:
Dim a As String
Dim db As DAO.Database
Dim rst As DAO.Recordset
Set db = CurrentDb
a = InputBox("Bitte geben Sie das Kennwort ein")
If a = "Schattenparker" = True Then
Set rst = db.OpenRecordset("tblMitarbeiter", dbOpenDynaset)
Else
Set rst = db.OpenRecordset("tblMitarbeiter", dbOpenSnapshot)
End If
Gruß Ralf
Antwort 5 von piano
Hallo
Etwas leichter und variabler zu verwalten wäre folgende zu AW 4 erweiterte Methode:
Beim Ereignis "Formular Öffnen" den Code z.Bsp.
Hier kannst du feldweise entscheiden, ob Bearbeitung erlaubt ist oder nicht.
Gruß piano
Es wäre nett, wenn Du ein Feedback abgeben könntest,
ob der Lösungsvorschlag Dein Problem gelöst hat.
- probieren geht über studieren -
Etwas leichter und variabler zu verwalten wäre folgende zu AW 4 erweiterte Methode:
Beim Ereignis "Formular Öffnen" den Code z.Bsp.
Private Sub Form_Open(Cancel As Integer)
If BenutzerName= "Schattenparker"
Me.GesperrtesFeld.Locked = True
Else
Me.GesperrtesFeld.Locked = False
End If
End Sub
Hier kannst du feldweise entscheiden, ob Bearbeitung erlaubt ist oder nicht.
Gruß piano
Es wäre nett, wenn Du ein Feedback abgeben könntest,
ob der Lösungsvorschlag Dein Problem gelöst hat.
- probieren geht über studieren -

