- Code: Select all Expand view RUN
OWNER FUNCION PROMPT BITMAP FECHA TOOLTIP
AGB creamade() Procesar desc. descproc 2020-02-05 00:00:00 Procesar solicitud de descuento
AGB segcliegp() Seguimiento a alta SEGUICLIENTE 2020-02-05 00:00:00 Seguimiento a alta de cliente
AGC soli_panta() Solicitar conf. deposito solipanta 2019-04-24 00:00:00 Solicitar confirmación de deposito
AGC diario_inci() Registro diario de incidencias incinomi_regis 2019-04-24 00:00:00 Registro diario de incidencias
Ahora necesito que el usuario sea capaz de eliminar algunas opciones que están en esa barra y al mismo tiempo se eliminen de la base de datos para que en el siguiente inicio de sesión ya no aparezca la opción que fue eliminada.
Al darle click derecho a una de los iconos lo puedo eliminar de la misma, pero mi pregunta es, como puedo guardar en una variable el prompt o el Tooltip del botón pulsado, para que con ese dato pueda eliminar el registro correspondiente en la tabla de opciones del usuario.
Adicionalmente, me gustaría saber como puedo insertar una nueva opción el la barra Quickaccess, como lo hago ahora es, darle click derecho del mouse a una opción del Ribbonbar, al usuario le aparece una ventana donde le pide confirmación para agregar esta opción a la barra, en caso afirmativo se guarda esa opción en la tabla antes mencionada y se agrega a la barra Quickaccess, pero siempre la agrega al final.
Como puedo destruir la barra Quickaccess y regenerarla agregando el botón que se acaba de agregar, ya que como característica especial los últimos 6 íconos no dependen del usuario, ya que son comunes para todos ellos, por lo que el nuevo ícono debería insertarse antes de un icono especifico.
Espero que este código sirva para darles una mejor idea de como lo manejo:
- Code: Select all Expand view RUN
cCadsql1:="select funcion,prompt,bitmap,tooltip from menu_options where owner='&firma' order by prompt"
oRs1 := TOleAuto():New( "ADODB.Recordset" )
oRs1:CursorType := 1 // opendkeyset
oRs1:CursorLocation := 3 // local cache
oRs1:LockType := 3 // lockoportunistic
TRY
cursorwait()
oRS1:Open( cCadSql1,'Provider='+xPROVIDER+';Data Source='+xSOURCE+';Initial Catalog='+xCATALOGA+';User Id='+xUSERID+';Password='+xPASSWORD )
CATCH oErr
MsgInfo( "Error al consultar items para menú QuickAccess dínamico ")
RETURN(.F.)
END TRY
oRs1nr:=oRs1:RecordCount()
if oRs1nr>0
oRs1:MoveFirst()
for unreg:=1 to oRs1nr
cButt_tt:="oBtnqa"+alltrim(Str(unreg))
cFunc:=oRs1:Fields(0):Value()
cProm:=alltrim(oRs1:Fields(3):Value())
cBitm:=oRs1:Fields(2):Value()
add button &cButt_tt QUICKACCESS oQuicka bitmap cBitm action &cFunc
&cButt_tt:cTooltip := cProm
oRs1:MoveNext()
next
endif
add button oBtnenv QUICKACCESS oQuicka bitmap "cambiatema" action GradDlgs0()
oBtnenv:cTooltip:="Cambiar ambiente del sistema"
add button oBtnlib QUICKACCESS oQuicka bitmap "library" action library_view()
oBtnlib:cTooltip:="Biblioteca de recursos (manuales, guías, imagenes,etc)"
add button oBtnupd QUICKACCESS oQuicka bitmap "UPDATE" action updatever()
oBtnupd:cTooltip:="Actualizar versión manualmente"
add button oBtndirt QUICKACCESS oQuicka bitmap "DIRECTORIO" action directorio()
oBtndirt:cTooltip:="Ver el directorio telefónico"
add button oBtnace QUICKACCESS oQuicka bitmap "MEXICO" action acerca()
oBtnace:cTooltip:="Acerca del sistema"
add button oBtnexit QUICKACCESS oQuicka bitmap "exit" action salsys(oVentprinc)// tooltip "Finalizar y salir del sistema"
oBtnexit:CTooltip := "Finalizar y salir del sistema"
Mi ambiente FWH 19.12, Harbour 3.2, Borland 7.7