Foros del Web » Programación para mayores de 30 ;) » Programación General » Visual Basic clásico »

Bloquear Menus

Estas en el tema de Bloquear Menus en el foro de Visual Basic clásico en Foros del Web. Que tal como estan, pues de nuevo aqui con una consulta, tengo un formulario mdi el cual acceso por medio de usuarios y contarseñas, lo ...
  #1 (permalink)  
Antiguo 05/03/2009, 09:44
 
Fecha de Ingreso: abril-2008
Mensajes: 281
Antigüedad: 16 años
Puntos: 1
De acuerdo Bloquear Menus

Que tal como estan, pues de nuevo aqui con una consulta, tengo un formulario mdi el cual acceso por medio de usuarios y contarseñas, lo q trato de hacer es si hay alguna manera con la cual pueda dar permisos, solo tendre dos tipos de usuarios el q puede accesar a todos los menus y el q solo pueda accesar a ciertos menus, ya encontre una manera que al momento de darle click al menu me pida el nombre de usuario y contraseña para accesar, pero no se si habra alguna otra forma, de antemano muchas gracias por las respuestas


saludos
  #2 (permalink)  
Antiguo 05/03/2009, 10:47
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: Bloquear Menus

Puedes bloquearlo con Enabled = False, u ocultarlo con Visible = True .
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #3 (permalink)  
Antiguo 05/03/2009, 14:06
Avatar de totigo  
Fecha de Ingreso: marzo-2007
Ubicación: America
Mensajes: 103
Antigüedad: 17 años, 2 meses
Puntos: 3
De acuerdo Respuesta: Bloquear Menus

Yo tengo una manera de manejar lo que necesitas. De hecho funciona en la compañia!

Manejamos una Base de Datos de Perfiles, Usuarios y Aplicativos

En la base identificamos los Controles Claves por Aplicativo, ya sean botones, menus, ventanas, etc... Asignamos estos Controles Claves a perfiles como por ejemplo Perfil Ejecutivo, Perfil Operador, Perfil Consultor.

Cuando el usuario se logea en uno de los aplicativo corre una rutina que identifica el Perfil del Usuario en ese aplicativo y seguidamente se corre una rutina que recorre los controles de Menu Principal del MDI para Habilitar y Deshabilitar segun el perfil. Asi mismo se coloca una rutina en el load de cada ventana.

Para mas informacion envia un private!!
  #4 (permalink)  
Antiguo 06/03/2009, 09:20
 
Fecha de Ingreso: abril-2008
Mensajes: 281
Antigüedad: 16 años
Puntos: 1
Respuesta: Bloquear Menus

Cita:
Iniciado por totigo Ver Mensaje
Yo tengo una manera de manejar lo que necesitas. De hecho funciona en la compañia!

Manejamos una Base de Datos de Perfiles, Usuarios y Aplicativos

En la base identificamos los Controles Claves por Aplicativo, ya sean botones, menus, ventanas, etc... Asignamos estos Controles Claves a perfiles como por ejemplo Perfil Ejecutivo, Perfil Operador, Perfil Consultor.

Cuando el usuario se logea en uno de los aplicativo corre una rutina que identifica el Perfil del Usuario en ese aplicativo y seguidamente se corre una rutina que recorre los controles de Menu Principal del MDI para Habilitar y Deshabilitar segun el perfil. Asi mismo se coloca una rutina en el load de cada ventana.

Para mas informacion envia un private!!
Que tal asi efectivamente es algo asi lo q quiero hacer, ojala si puedas brindarme mas informacion para darme una idea mas exacta

saludos y gracias por la ayuda
  #5 (permalink)  
Antiguo 06/03/2009, 20:01
Avatar de seba123neo  
Fecha de Ingreso: febrero-2007
Ubicación: Esperanza, Santa Fe
Mensajes: 1.046
Antigüedad: 17 años, 2 meses
Puntos: 19
Respuesta: Bloquear Menus

Hola, otro forma que vi en sistemas es crear una tabla en la base de datos con parametros ..o sea de que menu puede usar cada usuario...y de ahi podes sacar cual activar y cual no..

saludos.
__________________
" Todos Somos Ignorantes; lo que pasa es que no todos ignoramos las mismas cosas " - Albert Einstein
  #6 (permalink)  
Antiguo 06/03/2009, 20:15
 
Fecha de Ingreso: enero-2008
Ubicación: Lima - Perú
Mensajes: 1.127
Antigüedad: 16 años, 3 meses
Puntos: 10
Respuesta: Bloquear Menus

Con un ejemplo
Suponiendo que tienes 3 opciones en tu menu mnuCompras,mnuVentas,mnuConsultas
Tienes tu tabla usuario


Las opciones del menu se bloquean dependiendo de los permisos de cada usuario
Código:
Dim bd As ADODB.Connection
Dim rg_usuarios As ADODB.Recordset

Private Sub Form_Load()
Set bd = New ADODB.Connection
Set rg_usuarios = New ADODB.Recordset
bd.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\SEGURIDAD.mdb;Persist Security Info=False"
rg_usuarios.Open "select*from usuarios", bd, adOpenStatic, adLockOptimistic
End Sub

Private Sub Command1_Click()
With rg_usuarios
.MoveFirst
.Find "clave = '" & Text2 & "'"
If .EOF = False Then
  frmMenu.Caption = !usuario
  frmMenu.mnuCompras.Enabled = !compras
  frmMenu.mnuVentas.Enabled = !ventas
  frmMenu.mnuConsultas.Enabled = !consultas
  frmMenu.Show
Else
  MsgBox "Error", , "Datos incorrectos"
End If
End With
End Sub
ejemplo
  #7 (permalink)  
Antiguo 09/03/2009, 13:36
 
Fecha de Ingreso: abril-2008
Mensajes: 281
Antigüedad: 16 años
Puntos: 1
De acuerdo Respuesta: Bloquear Menus

Cita:
Iniciado por franko1809 Ver Mensaje
Con un ejemplo
Suponiendo que tienes 3 opciones en tu menu mnuCompras,mnuVentas,mnuConsultas
Tienes tu tabla usuario


Las opciones del menu se bloquean dependiendo de los permisos de cada usuario
Código:
Dim bd As ADODB.Connection
Dim rg_usuarios As ADODB.Recordset

Private Sub Form_Load()
Set bd = New ADODB.Connection
Set rg_usuarios = New ADODB.Recordset
bd.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\SEGURIDAD.mdb;Persist Security Info=False"
rg_usuarios.Open "select*from usuarios", bd, adOpenStatic, adLockOptimistic
End Sub

Private Sub Command1_Click()
With rg_usuarios
.MoveFirst
.Find "clave = '" & Text2 & "'"
If .EOF = False Then
  frmMenu.Caption = !usuario
  frmMenu.mnuCompras.Enabled = !compras
  frmMenu.mnuVentas.Enabled = !ventas
  frmMenu.mnuConsultas.Enabled = !consultas
  frmMenu.Show
Else
  MsgBox "Error", , "Datos incorrectos"
End If
End With
End Sub
Muchas gracias por la ayuda y el jemplo, ya lo adecue y ya logre bloquear mis menus dependiendo el usuario

saludos


ejemplo
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 06:15.