Página 1 de 1

Para Martin del Angel

Publicado: Sab Abr 09, 2011 2:58 am
por PEDRO DE LEON RODAS[3]
Gusto de saludarte.
Yo tengo hecho un sistema en el cual se cuenta con los permisos necesarios
para cada usuario.
Apenas te pase un ejemplo de como Pasar Tmenu:aItems a TreeView:aItems, ese
codigo lo utilzo en este sistema.
te pongo un codigo el cual lee el Tmenu y obtiene los nombres de los aitems
y busca en una tabla de mysql y conforme el estatus verdadero o falso
habilita o deshabilita la opcion del menu.
este es el codigo.
METHOD LEE_MENU()
Local Var_usuario,var_Nombre
Local
componente,Var_menu,Componente_sub,submenu,Submenu2,Componen te_sub2,NOMBRE_MENU,NOMBRE_SUBMENU,NOMBRE_SUBMENU2
Waiton("Procesando permisos para usuario")
Var_usuario=AppData:Usuario_sistema
Var_menu=::MenuT:aItems()
FOR Componente := 1 TO LEN(Var_menu)
submenu=Var_menu[Componente]:oSubMenu:aItems
NOMBRE_MENU=Var_menu[Componente]:cText
var_Nombre=Alltrim(NOMBRE_MENU)+Alltrim(Str(Componente))
::Dm:lOpen=.f.
::Dm:cSelect="Select estatus from resumen where
Opcion2='&var_Nombre' and Iniciales='&Var_usuario' and modulo='C'"
::Dm:lOpen=.t.
If ::Dm:Reccount()=0
Loop
Endif
Var_menu[Componente]:lEnabled=::Dm:Estatus
For Componente_sub=1 to Len(submenu)
NOMBRE_SUBMENU=Var_menu[Componente]:oSubMenu:aItems[Componen te_sub]:cText
var_Nombre=NOMBRE_SUBMENU+Alltrim(Str(Componente))+Alltrim(S tr(Componente_sub))
::Dm:lOpen=.f.
::Dm:cSelect="Select estatus from resumen where
Opcion2='&var_Nombre' and Iniciales='&Var_usuario' and modulo='C'"
::Dm:lOpen=.t.
If ::Dm:Reccount()=0
Loop
Endif
Var_menu[Componente]:oSubMenu:aItems[Componente_sub]:lEnable d=::Dm:Estatus
If Alltrim(NOMBRE_SUBMENU)="Con recibos"
::BDEPOSITOS:lEnabled=::Dm:Estatus
Endif
If Alltrim(NOMBRE_SUBMENU)="Poliza de Egresos"
::B_AYUDA:lEnabled=::Dm:Estatus
Endif
If
Var_menu[Componente]:oSubmenu:aItems[Componente_sub]:osubmen u <>nil
Submenu2=Var_menu[Componente]:oSubmenu:aItems[Componente_sub ]:osubmenu:aItems
For Componente_sub2=1 to Len(Submenu2)
NOMBRE_SUBMENU2=Var_menu[Componente]:oSubMenu:aItems[Compone nte_sub]:oSubMenu:aItems[Componente_sub2]:cText
var_Nombre=NOMBRE_SUBMENU2+Alltrim(Str(Componente))+Alltrim( Str(Componente_sub))+Alltrim(Str(Componente_sub2))
::Dm:lOpen=.f.
::Dm:cSelect="Select estatus from resumen where
Opcion2='&var_Nombre' and Iniciales='&Var_usuario' and modulo='C'"
::Dm:lOpen=.t.
If ::Dm:Reccount()=0
Loop
Endif
Var_menu[Componente]:oSubMenu:aItems[Componente_sub]:oSubMen u:aItems[Componente_sub2]:lEnabled=::Dm:Estatus
If Alltrim(NOMBRE_SUBMENU2)="Altas, Bajas, Modificar"
::BSOCIOS:lEnabled=::Dm:Estatus
Endif
Next
Endif
Next
next
WaitoFF()
Return Nil
ESPERO TE SIRVA.