Page 1 of 1

Busqueda Avanzada en un Browser o Listbox

Posted: Sun Sep 23, 2007 3:27 pm
by DiGregorio
Estimado Foro:

Estoy tratando de realizar una busqueda avanzada cuando tengo un browser y muestro un dialogo con gets para la busqueda.... el detalle esta en quiero buscar lo que escribe el usuario en cualquier parte del campo..

Me explico: si tengo un browser de clientes y el usuario en un gets escribe "duar", quiero que el busque no solo los que comienzan por duar sino cualquier parte del nombre. Ejm "eduardo" "Perez Duarte"

Gracias.

Posted: Sun Sep 23, 2007 5:39 pm
by Armando
DiGregorio:

Necesitas algo así

REDEFINE GET aGet[2] VAR cFilCli ID 102 OF oDlg UPDATE;
PICTURE "@!K" VALID FilCli(cFilCli,cCliente,oDlg,oLbx)


Y esta es la funcion FilCli()

FUNCTION FilCli(cFiltro,cFile,oDlg,oLbx)
cFiltro := ALLTRIM(cFiltro)
IF ! EMPTY(cFiltro)
(cFile)->(DBSETFILTER({|| AT(cFiltro, (cFile)->CLI_NOM) > 0 },"AT(cFiltro, (cFile)->CLI_NOM) > 0" ))
ELSE
(cFile)->(DBCLEARFILTER())
ENDIF
(cFile)->(DBGOTOP())
oLbx:Refresh()
oDlg:Update()
RETURN(.T.)

Saludos

Posted: Mon Sep 24, 2007 5:16 pm
by jacgsoft
simplemente en la funcion que hace la busqueda pones esto


Locate For 'duar'$Empleados->Nombre