В моей базе данных MS-Access я получил LoginForm, которая проверяет, есть ли у пользователя доступ к определенной форме или нет.
Моя основная страница, называемая "NavigationsFormular", имеет 4 вкладки
Обычный пользователь может получить доступ к 1-й вкладке, называемой «Bautagesbericht».
A ControlingUser может получить доступ ко 2-й, 3-й, 4-й вкладкам, но не 1-й!
Форма входа - это всплывающее окно при запуске, я не хочу менять его также на вкладку, которая была бы уродливой и неоптимальной.После успешного входа в систему он загружает навигационную форму.
Для обычного пользователя это не проблема, но для управляющей части он всегда говорит: «Нет доступа», потому что он пытался открыть вкладку, к которой у него нет прав доступа.
То есть код между прочим:
If Globals.UserAccess(Me.Name) = False Then
MsgBox " No access!"
DoCmd.Close acForm, Me.Name
End If
Теперь моя идея состояла в том, чтобы форма входа в систему открыла форму, на которую пользователь получил разрешения, с помощью следующего кода:
If Globals.UserAccess("frm_Räumstellenerfassung") = False Then
DoCmd.BrowseTo ObjectType:=acBrowseToForm, _
ObjectName:="frm_Taetigkeitseingabe_Büro", _
PathToSubformControl:="Navigationsformular.NavigationsUnterformular>frm_Taetigkeitseingabe_Büro.NavigationsUnterformular"
DoCmd.Close acForm, Me.Name
Else
DoCmd.OpenForm "Navigationsformular"
DoCmd.Close acForm, Me.Name
End If
End Sub
Проблемаявляется то, что путь не является правильным ..
Hauptformular1 / MainFormular1 = "NavigationsFormular"
Unterformular1 / SubForm1 = "NavigationsUnterformular" (на немецком языке)
Formular1 = "frm_Taetigkeitseingabe_Büro"
Перепробовал все комбинации, ничего не помогло.
BTW: Кнопка в моей форме навигации с этим кодом работает.Видимо, не при попытке из другой формы.
DoCmd.BrowseTo acBrowseToForm, "frm_Taetigkeitseingabe_Büro","Navigationsformular.NavigationsUnterformular"