Como Abrir Diferente menu de acuerdo al usuario

Bueno una pequeña explicación del problema:
He creado un window donde tengo los controles singlelineedit y dropdownlistbox y 2 picturebutton (pb_ingresar y pb_cancelar)
Lo que pasa es que quiero que cuando ingrese el usuario, tipo de usuario y su contraseña me ingrese al menu que le corresponde de acuerdo a su tipo de usuario
Este código estuve tratando de hacer pero no me funciona:
String ls_clave, ls_clave1
String ls_usuario
String ls_tipouser,ls_tipouser1
Integer li_n
ls_tipouser=trim(ddlb_tipouser.text)
ls_usuario=trim(sle_usuario.text)
ls_clave=trim(sle_pass.text)
li_n=DSUsuario.find("user_nombre='"+upper(ls_usuario)+"'",1,DSUsuario.rowcount())
if li_n=0 then
    messagebox('Acceso denegado','Usuario no Registrado',information!)
    return
else
    ls_tipouser1=DSUsuario.getitemstring(li_n,'user_tipo')
    if upper(ls_tipouser)=upper(ls_tipouser1) Then
        ls_clave1=DSUsuario.getitemstring(li_n,'user_contraseña')
        if upper(ls_clave)= upper(ls_clave1) then
            open(w_principal_jefe_proyectos)
            close(parent)
        else
            messagebox('Acceso denegado','Contraseña Incorrecta',information!)
        end if
    else
        ls_tipouser1=DSUsuario.getitemstring(li_n,'user_tipo')
        if upper(ls_tipouser)=upper(ls_tipouser1) then
            ls_clave1=DSUsuario.getitemstring(li_n,'user_contraseña')
            if upper(ls_clave)=upper(ls_clave1) then
                open(w_principal_asistente_jefe_proyectos)
                close(parent)
            else
                messagebox('Acceso denegado','Contraseña Incorrecta',information!)
            end if
        else
        end if
    end if
    messagebox('Acceso denegado','Datos Incorrectos',information!)
end if
en el evento open del window:
DSUsuario=Create DataStore
DSUsuario.dataobject='d_listado_usuario'
DSUsuario.settransobject(sqlca)
DSUsuario.retrieve()
aver quisiera que alguien me brinde una solucion.... Se lo agradesco de antemano a la persona que me ayude..

1 respuesta

Respuesta
1
Para definir que menús mostrar de acuerdo al usuario esto lo tienes que programar en tu ventana principal de tu sistema. En el evento open() defines que menus y submenus estaran con su propiedad enabled=true o enabled=false y su propiedad visible= true o visible=false. Es decir si ciertos menús o submenus estarán activos y visibles o inactivos e invisibles. Por ejemplo:
En el evento open() de tu ventana w_principal_jefe_proyectos podrias poner asi:
//gl_accesodelsuario --> viene de la ventana de login y es una variable global
if gl_accesodelsuario="A" then
m_principal.m_proceso.enabled=true
m_principal.m_proceso.visible=true
elseif gl_accesodelsuario="B" then
m_principal.m_proceso.enabled=false
m_principal.m_proceso.visible=false
end if
Ojo: tienes que escribir correctamente los menús y submenus.
Suerte

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas