Antes que nada un saludo a los participantes de este foro.
 
¿Quería saber si existe alguna forma de proteger el diseño de las consultas en una aplicación de Access a fin de evitar que los usuarios puedan  modificarlas? En principio tengo las siguientes alternativas, pero ninguna es lo suficientemente segura: 
 
1.- Asignar la propiedad “oculta” a las consultas. Su inconveniente es que cualquier usuario puede ir a Herramientas >> Opciones >>  Mostrar objetos ocultos.
 
2.- Puedo desactivar la opción “Presentar la Ventana Base de Datos” en Herramientas >> Inicio. Su desventaja es que si el usuario mantiene presionada la tecla Shift al abrir la aplicación, se muestra la Ventana Base de Datos con todas sus tablas, consultas, etc. 
 
3.- Convertir la aplicación en un archivo MDE, sólo protege los formularios, informes, páginas de acceso a datos y módulos, pero las tablas,  consultas y macros quedan desprotegidas y se pueden modificar.
 
En este mismo foro encontré una función  que permite ocultar las tablas sin la posibilidad de mostrarlas nuevamente utilizando  Herramientas >> Opciones >> Mostrar objetos ocultos. Me pregunto si existe alguna función similar que se pueda aplicar a todas las consultas u otra alternativa para proteger su diseño. 
 
Estas son las funciones que encontré, pero que se aplican a las tablas:
 
Public Function OcultaTodasTablas()
    Dim Tb As TableDef
 
 
 
    For Each Tb In CurrentDb.TableDefs
        Tb.Attributes = 1
 
    Next
 
 
End Function
 
 
Public Function MuestraTodasTablas()
Dim Tb As TableDef
 
    For Each Tb In CurrentDb.TableDefs
        If Mid(Tb.Name, 1, 4) = "Msys" Then
        Else
           Tb.Attributes = 0
        End If
 
    Next
End Function
 
 
De antemano, gracias por su colaboración. 
   
 



 Este tema le ha gustado a 1 personas
Este tema le ha gustado a 1 personas