Amigos aca les dejo una busqueda secuencial en tablas dbf para buscar en cualquier posicion de un campo:
oLbx:bKeyDown := {|nKey| (Search(nKey,@cBusca,oLbx),oLbx:Refresh(),oSay:Refresh()) }
STATIC FUNCTION Search(nKey,cBusca,oLbx)
*--------------
If Nkey=8
cbusca:= SubStr(cbusca,1,Len(cbusca)-1)
DBSELECTAREA(cMa_Arti)
SET FILTER TO
SET FILTER TO AllTrim(cBusca) $ (cMa_Arti)->Ma_Desc
(cMa_Arti)->(DBGOTOP())
IF (cMa_Arti)->(EoF())
SET FILTER TO
Endif
Else
cbusca:= cbusca + Upper(chr(nkey))
* SET FILTER TO
DBSELECTAREA(cMa_Arti)
SET FILTER TO AllTrim(cBusca) $ (cMa_Arti)->Ma_Desc
(cMa_Arti)->(DBGOTOP())
IF (cMa_Arti)->(EoF())
cbusca:= SubStr(cbusca,1,Len(cbusca)-1)
SET FILTER TO
SET FILTER TO AllTrim(cBusca) $ (cMa_Arti)->Ma_Desc
(cMa_Arti)->(DBGOTOP())
Endif
Endif
oLbx:refresh()
oLbx:SetFocus()
return(.t.)
Saludos



