Foros del Web » Programando para Internet » ASPX (.net) »

Menus dinámicos.

Estas en el tema de Menus dinámicos. en el foro de ASPX (.net) en Foros del Web. Saludos, estoy empezando un nuevo proyecto (visual basic 2005 y sql server 2005) y el requerimiento principal es la creación de menus en forma dinámica ...
  #1 (permalink)  
Antiguo 23/07/2008, 08:02
 
Fecha de Ingreso: junio-2007
Mensajes: 253
Antigüedad: 16 años, 10 meses
Puntos: 0
Pregunta Menus dinámicos.

Saludos, estoy empezando un nuevo proyecto (visual basic 2005 y sql server 2005) y el requerimiento principal es la creación de menus en forma dinámica
dependiendo del rol de cada usuario, yo la verdad no tengo experiencia en esos tipos de menus, pero he empezado
haciendo la base de datos con la siguiente estructura de las tablas involucradas en esa cuestion:

menu

codMenu
Descripcion
codPadre


Rol
codRol
Descripcion

menuxrol
codMenu
codRod

persona
codPersona
codRol
Nombre
Apellidos
Estado

Esa es la estructura de cada tabla, ahora me toca la parte mas dificil que es la programacion de
los menus dinamicos dependiendo del rol del usuario, cuando el usuario inicie sesion como gerente
el pueda ver su menú, como administrador otro menú y asi sucesivamente...
y no se por donde comenzar hacer eso ni como hacerlo, si alguien tiene algun
manual o algun proyecto que haya hecho algo similar se lo agradeceria un millon.

Gracias por su ayuda.
  #2 (permalink)  
Antiguo 23/07/2008, 10:37
Avatar de ah_puch  
Fecha de Ingreso: agosto-2005
Ubicación: Ecatepec, México
Mensajes: 180
Antigüedad: 18 años, 8 meses
Puntos: 3
Respuesta: Menus dinámicos.

mira no se si entendi bien lo que quieres pero aqui te dejo 2 opciones para hacer menu sencillos y dinamicos
http://www.skmmenu.com/menu/

y este que es mas para efectos visuales con javascript pero de igual forma son muy sencillos de utilizar. ahi ha varias tipos de menu que puedes adecuar a tus nesecidades
http://demos111.mootools.net/

suerte
__________________
La programacion no es un trabajo, es un Arte
http://www.purodev.blogspot.com
  #3 (permalink)  
Antiguo 23/07/2008, 11:14
 
Fecha de Ingreso: junio-2007
Mensajes: 253
Antigüedad: 16 años, 10 meses
Puntos: 0
Respuesta: Menus dinámicos.

Gracias por tu respuesta, pero yo necesito un ejemplo de un sistema de login(ingreso) que al autentificar al usuario este determine el tipo de rol que tiene asignado, los cuales pueden ser (Administrador, Agente, Vendedor, entre otros.), suponiendo que el usuario=xyz y el password=xyz, tiene asignado en la base el rol Administrador, el segun mi base
tambien tiene asignados ciertas opciones del menu y solo debera ver un menu con esas opciones.
Como puedo lograr eso? en visual basic 2005 con sql server.

GRacias por su ayuda.
  #4 (permalink)  
Antiguo 24/07/2008, 13:54
Avatar de ah_puch  
Fecha de Ingreso: agosto-2005
Ubicación: Ecatepec, México
Mensajes: 180
Antigüedad: 18 años, 8 meses
Puntos: 3
Respuesta: Menus dinámicos.

Cita:
Iniciado por Rodro Ver Mensaje
Gracias por tu respuesta, pero yo necesito un ejemplo de un sistema de login(ingreso) que al autentificar al usuario este determine el tipo de rol que tiene asignado, los cuales pueden ser (Administrador, Agente, Vendedor, entre otros.), suponiendo que el usuario=xyz y el password=xyz, tiene asignado en la base el rol Administrador, el segun mi base
tambien tiene asignados ciertas opciones del menu y solo debera ver un menu con esas opciones.
Como puedo lograr eso? en visual basic 2005 con sql server.

GRacias por su ayuda.
OK. si mal no entiendo lo que nesesitas es validar a tus usuarios para esto puedes hacer lo siguiente

realizar una consuta a tu base de datos de donde comparas usuario contraseña y EXTRAES el rol
este lo almacenas en una cookie de la cual al cambiar de pagina vaz a extraer el dato de roll cuanto carge tu pagina.
en codigo seria algo asi:

Código:
dim cnx as new SqlConnection("tu string de conexion a la BD")
dim Adapter As new SqlDataAdapter
dim Ds As DataSet

Adapter = New SqlDataAdapter("SELECT roll " & _
                            "FROM  Users " & _
                            "WHERE (Password = 'xyz') AND " & _
                            "(User_Id = 'xyz')", cnx)
        Adapter.Fill(Ds, "Tabla")
        cnx.Close()
        Select Case Val(Ds.Tables("Tabla").Rows.Count)
                    MsgBox("Nombre de usuario o Contraseña Incorrecta")
            Case Else

                Dim Galleta As HttpCookie = New HttpCookie("Galleta")
                Galleta.Values.Add("User", Txt_User.Text)
                Galleta.Values.Add("Roll", Ds.Tables("Tabla").Rows(0).Item("Roll"))
                Galleta.Expires = DateTime.Now.AddMinutes(60)
                Response.AppendCookie(Galleta)
                Response.redirect("OtraPagina.Aspx")
        End Select
ya teniendo esto lo que vaz a hacer es recojer el valor de la cookie de la siguiente forma:

Código:
Function ChecaGalleta(ByVal Nombre, ByVal Valor) As String
        Dim Cookie As HttpCookie
        Dim Value As String
        Cookie = Request.Cookies(Nombre)
        If IsNothing(Cookie) Then
            Return ""
        Else
            Value = Cookie.Values.Get(Valor)
            Return Value
        End If
    End Function
cuando carge tu pagina lo que vaz a hacer es recuperar el valor del roll la instruccion es de la siguiente forma

dim roll as String = ChecaGalleta("Galleta","roll")


ya con esto puedes 1: redireccionar a otra pagina con los elementos para ese roll
2: con el control skmmenu que te mande pudes delimitar los elementos que se cargan o no dependiendo el roll

3: utiliza el control de menu que viene con el VS 2k5 para hacer exactamente lo mismo construir mientras se carga la pagina los elementos del menu que quieres que se visibles.


espero haber entendido esta vez tu pregunta y que esto se sea de ayuda....

FELICES CODIGOS.......
__________________
La programacion no es un trabajo, es un Arte
http://www.purodev.blogspot.com
  #5 (permalink)  
Antiguo 25/07/2008, 10:33
 
Fecha de Ingreso: marzo-2008
Ubicación: San Luis, Mexico
Mensajes: 52
Antigüedad: 16 años, 1 mes
Puntos: 0
Respuesta: Menus dinámicos.

hola Rodro te dejo esta pagina para que cheques es algo como lo que tu quieres hacer es completamente dinamico solo que la version del sql es distinta es SQL 2000, pero bueno eso es lo de menos http://www.netveloper.com/contenido2.aspx?IDC=145_0 yo tengo una funcion que hace lo que tu necesitas cuando mi usuario se firma detecta a que grupo o rol pertenece y le muestra su menu y esto lo hago agregandole al ejemplo que te pase una casilla de grupo asi cuando entra hace una seleccion de acuerdo al frupo al que pertenece
Espero te sirva y si necistas algo mas o no quedo muy claro me dices
A mi me funciona bien
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 12:59.