• Jueves 28 de Marzo de 2024, 21:18

Autor Tema:  Acceso A Tablas En Access  (Leído 1963 veces)

Fernando_P

  • Miembro activo
  • **
  • Mensajes: 88
    • Ver Perfil
Acceso A Tablas En Access
« en: Viernes 18 de Junio de 2004, 12:50 »
0
Hola muchachos,
necesito que alguien me ayude en lo siguiente, es sobre como trabaja access ya que estoy desarrollando una app que hace uso de l.

1. Existe alguna forma de bloquear el acceso a alguna tabla en particular mediante passwd?, y que quien no ingrese ese passwd no pueda ver lo que tiene la tabla especifica, pero si toda las demas tablas de la BD?

2. Se pueden crear tablas temporales en acces o las fuerzo a desaparecer con drop table?


Desde ya gracias.

PD: Brroz, gracias por tu ayuda con ado y la creacion de tablas, resulto de maravillas!!!

Juanolo

  • Miembro MUY activo
  • ***
  • Mensajes: 202
    • Ver Perfil
Re: Acceso A Tablas En Access
« Respuesta #1 en: Viernes 18 de Junio de 2004, 17:18 »
0
Hola!
No entiendo mucho tu inquietud.
Alguna vez he utilizado las restricciones de usuario de una tabla acces (el archivo System.mdw) pero me da la impresión de que de restringir directamente las tablas lo que conseguirías sería errores al intentar acceder a ellas.
Yo enfoqué el tema desde otro punto de vista: Restrinjo los controles de mis formularios de acuerdo al Nivel de usuario que esté en el sistema. Cuando agrego un usuario, además del nombre que tendrá le asigno un nivel:

Por Ejemplo: tengo los siguientes niveles:
Administrador
Ejecutivo
Punto de Venta

Cuando quiero restringir un nivel determinado en un control (un botón, por ejemplo), simplemente agrego en su propiedad Tag las iniciales del nivel de usuario autorizado ("AE" indica que este control está restringido sólo a Administradores y Ejecutivos. Si tag="", no hay restricción)

En el evento form load de cada formulario con restricciones agrego la sentencia

RestringeUsuario Me

La que se maneja con el siguiente código insertado en un módulo:

Código: Text
  1. Public Sub RestringeUsuario(FormAbierto As Form)
  2.     Dim IniUser As String
  3.     Dim i As Integer
  4.    
  5.     IniUser = UCase(Mid(UsuaRio.Tipo, 1, 1))
  6.     'Las restricciones a los usuarios se guardan en
  7.     'la propiedad "Tag" de los controles. Si hay texto en esta
  8.     'propiedad, eso significa que el control es restringido,
  9.     'por lo que se debe verificar que el usuario actual esté
  10.     'autorizado.
  11.     For i = 0 To FormAbierto.Count - 1
  12.         If Len(FormAbierto(i).Tag) Then
  13.             If InStr(UCase(FormAbierto(i).Tag), IniUser) = 0 Then
  14.                 FormAbierto(i).Visible = False
  15.             End If
  16.         End If
  17.     Next i
  18. End Sub
  19.  

Con muy pocos cambios, puedes manipular la propiedad Locked, o Enabled, de acuerdo a lo que sea más adecuado para tu aplicación.
La luz que sólo se ilumina a sí misma, es oscuridad.