joseluisysturiz wrote:Francisco, aprovechando lo que publicas, por casualidad tendras la creacion del MENU pero dinamicamente, es decir, dependiendo del nivel del usuario, entonces se agreguen unas opciones y otras no, estas ya creadas en una TABLA o DBF..? gracias, saludos..
JoseLuis, mira si esto es a lo que te refieres:
En tabla usuarios estan los campos logicos: facturas,invent,etc
Despues de autorizar entrada al sistema, chequear a que modulos tiene acceso
Luego en los ItemMenus establecer la condicion
- Code: Select all Expand view RUN
if lAutoriza
aModulosAcc:={} //static
if Usuarios->facturas=.t.
aadd(aModulosAcc,"FACTURACION")
endif
if Usuarios->Invent=.t.
aadd(aModulosAcc,"INVENTARIO")
endif
endif
Return lAutoriza
//--------------------------//Controla si tiene acceso o no a determinado modulo
Function ModuloAcces(cModulo)
local lRet:=.f., n:=0
if empty(aModulosAcc)
Return .t.
endif
for n:=1 to len(aModulosAcc)
if aModulosAcc[n] = upper(cModulo)
lRet:=.t.
exit
endif
next
Return lRet
En la creacion del menu se puede hacer: (con esto apareceran, o no, los items del menu
Por supuesto faltaría profundizar mas por cada opcion de cada sub-item (lo he dejado por el momento)
- Code: Select all Expand view RUN
if ModuloAcces("Facturas")
MENUITEM "&Facturacion"
MENU
MENUITEM "Grabar &Facturas"
MENUITEM "etc"
ENDMENU
endif
if ModuloAcces("inventario")
MENUITEM "&Inventario"
MENU
MENUITEM "Grabar &Entradas (Compras y otros)"
MENUITEM "Grabar &Salidas (Salidas diversas)"
ENDMENU
endif
Saludos.
Francisco J. Alegría P.
Chinandega, Nicaragua.
Fwxh-MySql-TMySql