Como asignar la gestión de permisos de usuarios en los formularios de una base de datos

Tengo una base de datos en access con varios formularios, los mismos que tienen acceso todos los usuarios (administrador, sistema, operador, invitado) de mi sistema a la información que se ha generado, pero deseo que se les restrinja la modificación, eliminación, agregar, y exportar datos que se constituyen en botones de comando, y solo les permita visualizar a todos a excepción del operador quien es el responsable.

Es decir todos puedan ver la información, seleccionarla pero no modificarla, cambiarla, eliminarla o agregar a diferencia del "operador" quien si tenga todos estos permisos.

Eh desarrollado un código, y me funciona bien, pero me genera un error al momento que otro usuario distinto al "operador" requiere seleccionar un dato desde un cuadro de lista que le envía al dato filtrado en otra pestaña

Private Sub cmdO1_Click()

'Declaramos las variables

Dim vRol As String

'Cerramos el formulario actual

DoCmd.Close acForm, Me.Name

'Llamamos a la función para saber qué permisos tiene

vRol = tipoUser()

'Damos permisos en función del tipo de usuario

Select Case vRol

Case "Administrador"

'Si es administrador abrimos el formulario en sólo lectura

DoCmd.OpenForm "FDistribución1", , , , acFormReadOnly

Case "Operador"

'Si es operador abrimos el formulario con todos los permisos

DoCmd.OpenForm "FDistribución1"

Case "Invitado"

'Si es invitado abrimos el formulario en sólo lectura

DoCmd.OpenForm "FDistribución1", , , , acFormReadOnly

Case "Sistema"

'Si es sistema abrimos el formulario sólo para ser editado, pero no para añadir DoCmd.OpenForm "FDistribución1"

Forms!FDistribución1.AllowAdditions = False

End Select

End Sub

Añade tu respuesta

Haz clic para o