Visual Basic Foro
Programación => Visual Basic 6 => Mensaje iniciado por: mariano en Enero 26, 2016, 08:56:47 am
-
Hola Necesito ayuda
tengo una base de datos en acces con una tabla llamada "clave" la misma tiene los campos
id usuario permiso1, permiso2, permiso3, etc
en VB 6.0 tengo un formulario que es cargar usuario, cual cargo el nombre y la clave, después me voy a otro formulario que modifico y ahí tengo varios CHEKC que cada uno corresponde a los permisos que debería tener cada usuario
lo que no se es como hago los if para decir programar los permisos
me podrían ayudar
Gracias
-
los campos permiso deben ser de tipo boolean, así poder hacer una comparación rápida
suponiendo que usas DAO
if tabla!permiso1 = true then
''código si tiene los permisos
end if
Si el problema es de asignación seria algo así como:
tabla.addnew
tabla!id = txtid.text
tabla!usuario = txtusr.text
...
if check1.value = 1 then ''validación del permiso 1
tabla!permiso1 = true
else
tabla!permiso1 = false
end if
if check2.value = 1 then ''validación del permiso 2
tabla!permiso2 = true
else
tabla!permiso2 = false
end if
...
tabla.update
Aun así es un poco inseguro, ya que con cualquier editor de bd se le puede asignar permisos al usuario, te recomendaría que lo hicieras en un solo campo donde cada cantidad de caracteres sea un permiso habilitado o inhabilitado
Suerte y saludos :)
-
Hola mariano, lo que haría yo sería:
1)hacer un modulos Definir 1 variables globales
Global Vid As Integer
2) Luego un procedimiento que abre un form
Public Sub Cargarpermiso()
With Rs_10
If .State Then .Close
.Open "SELECT * From USUARIO Where ID=" & Vid & " AND PERMOISO=" & "1" & ", Base, 1,1
If .RecordCount Then
Else
MsgBox "El usuario actual " & VNombre & " no tiene acceso a esta opción"
Unload Me
End If
End With
End Sub
En el form principal
Private Sub Form_Load()
Call Cargarpermiso
End Sub
si eso te interesa contestame y te pongo el ejemplo: