Формы контроля на основе информации для входа в систему

Я учил себя Microsoft VBA для приложений, и я достиг точки, где мне действительно нужна помощь, чтобы преодолеть препятствие. У меня есть форма входа, которая контролирует доступ, открывая определенную форму на основе назначенных ролей. Все работает, но позволяет видеть все записи участников. Я пытаюсь ограничить "Форму" для пользователя, который вошел в систему. Ниже приведен код, который у меня есть для входа в систему.

Private Sub Command1_Click()
Dim User As String
Dim UserLevel As Integer
Dim TempPass As String
Dim ID As Integer
Dim Username As String
Dim TempID As String

If IsNull(Me.txtUserName) Then
 MsgBox "Please enter UserName", vbInformation, "Username required"
 Me.txtUserName.SetFocus

ElseIf IsNull(Me.txtPassword) Then
 MsgBox "Please enter Password", vbInformation, "Password required"
 Me.txtPassword.SetFocus

Else

 If (IsNull(DLookup("UserLogin", "Users", "UserLogin = '" & Me.txtUserName.Value & "' And UserPassword = '" & Me.txtPassword.Value & "'"))) Then
 MsgBox "Invalid Username or Password!"

 Else

  TempID = Me.txtUername.Value

 Username = DLookup("[UserName]", "Users", "[UserLogin] = '" & Me.txtUserName.Value & "'")
 UserLevel = DLookup("[UserType]", "Users", "[UserLogin] = '" & Me.txtUserName.Value & "'")
 TempPass = DLookup("[UserPassword]", "Users", "[UserLogin] = '" & Me.txtUserName.Value & "'")
 UserLogin = DLookup("[UserLogin]", "Users", "[UserLogin] = '" & Me.txtUserName.Value & "'")
 
DoCmd.Close
 
If (TempPass = "password") Then
 MsgBox "Please change Password", vbInformation, "New password required"
 DoCmd.OpenForm "frmUserinfo", , , "[UserLogin] = " & UserLogin

Else
   'Open different form according to user level
   If userLevel = 1 Then 'For Admin
   DoCmd.OpenForm "Training"
Else
   'For Trainee
   DoCmd.OpenForm "Form", acNormal, , "ID = & TempID 'TempID finds the lastname from UserLogin and I need the number from UserName
   
 End If
 End If
End If
End Sub  

В открывшейся "форме" есть поле со списком, которое определяет, какие записи показывать. Как мне передать информацию о зарегистрированном пользователе в "Форму" на основе имени пользователя? если это вообще правильный путь! Заранее спасибо всем за помощь.

0 ответов

Другие вопросы по тегам