Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Benutzerrechte in Access

Frage Entwicklung VB for Applications

Mitglied: cp-com

cp-com (Level 1) - Jetzt verbinden

18.10.2011 um 14:06 Uhr, 6087 Aufrufe, 2 Kommentare

Ich erstelle zurzeit eine Datenbank in Access 2010 und möchte dort mit Benutzergruppen arbeiten.

Sobald die Datenbank aufgerufen wird muss der User Benutzername und Passwort auswählen. Ist dieses erfolgreich soll der User je nachdem in welcher Benutzergruppe ein Formular, zum Bearbeiten der Datensätze angezeigt bekommen oder nur ein Bericht sehen dürfen. Ich hab das im Prinzip nach dieser Anleitung gelöst 2 (Man muss den Newsletter abonnieren um diesen komplett einsehen zu können, aber ich denke das ist in diesem Fall nicht notwendig).
Tabellen habe ich folgende:
  • tblDaten (beinhaltet die Daten für das Formular)
  • tblBenutzer (BenutzerID, Name, Vorname, Kennwort, BenutzergruppeID)
  • tblBenutzergruppe (BenutzergruppeID, Benutzergruppe)
Formulare:
  • frmLogin (Anmelde-Formular) Die Überprüfung ob Benutzername und Kennwort übereinstimmen erfolgt beim klicken auf den Button cmdLogin:
01.
Private Sub cmdLogin_Click() 
02.
    Dim lngBenutzerID As Long 
03.
    lngBenutzerID = Nz(DLookup("BenutzerID", "tblBenutzer", "Benutzername = '" & Me!cboBenutzername & "' AND Kennwort = '" & Me!txtKennwort & "'"), 0) 
04.
    If lngBenutzerID = 0 Then 
05.
        MsgBox "Benutzername und/oder Kennwort sind falsch." 
06.
        Me!txtKennwort.SetFocus 
07.
    Else 
08.
        MsgBox "Anmeldung erfolgreich!" 
09.
        DoCmd.Close acForm, Me.Name 
10.
        DoCmd.OpenForm "Formular" 
11.
    End If 
12.
End Sub
  • Formular
Bericht:
  • BerichtVonFormular

Was hier angezeigt wird funktioniert alles gut. Was muss ich nun an dem VBA?-Code ändern um die Benutzergruppen mit einzubeziehen?

Bin leider kein großer Access experte...Also bitte entschuldigt wenn ich fachlich mal daneben trete ;)
Mitglied: SlainteMhath
18.10.2011 um 15:50 Uhr
Moin,

evtl. sowas in der Art (auch wenn select...case nicht besonders elegant ist )

01.
lngGruppenID = Nz(DLookup("BenutzergruppeID", "tblBenutzer", "Benutzername = '" & Me!cboBenutzername & "'), 0)  
02.
select case lngGruppenID 
03.
  case is = 1 
04.
    docmd.openform "Formular 1" 
05.
  case is = 2 
06.
    docmd.openform "Formular 2" 
07.
  case else 
08.
    ... 
09.
end select
als Ersatz für deine Zeile 10.

Oder versteh ich die Frage falsch?

lg,
Slainte
Bitte warten ..
Mitglied: cp-com
19.10.2011 um 09:53 Uhr
Nein du verstehst mich genau richtig! Vielen dank.

LG
Bitte warten ..
Neuester Wissensbeitrag
Ähnliche Inhalte
Batch & Shell
CMD cURL Access Token parsen (2)

Frage von maddig zum Thema Batch & Shell ...

LAN, WAN, Wireless
Access Point: Ubiquiti UAP AC PRO Einschätzung Reichweite (4)

Frage von TimMayer zum Thema LAN, WAN, Wireless ...

LAN, WAN, Wireless
Freifunk über vorhandene Access Points ausstrahlen (4)

Frage von Uwoerl zum Thema LAN, WAN, Wireless ...

Windows Netzwerk
Direct Access mit VPN aufbau (6)

Frage von geocast zum Thema Windows Netzwerk ...

Heiß diskutierte Inhalte
Windows Userverwaltung
Ausgeschiedene Mitarbeiter im Unternehmen - was tun mit den AD Konten? (27)

Frage von patz223 zum Thema Windows Userverwaltung ...

Viren und Trojaner
Aufgepasst: Neue Ransomware Goldeneye verbreitet sich rasant (20)

Link von Penny.Cilin zum Thema Viren und Trojaner ...

LAN, WAN, Wireless
FritzBox, zwei Server, verschiedene Netze (20)

Frage von DavidGl zum Thema LAN, WAN, Wireless ...

Windows Netzwerk
Windows 10 RDP geht nicht (18)

Frage von Fiasko zum Thema Windows Netzwerk ...