type sle_buscar from singlelineedit within w_art_lista
event ue_digitando pbm_keyup
integer x = 50
integer y = 104
integer width = 814
integer height = 92
integer taborder = 10
integer textsize = -10
integer weight = 400
fontcharset fontcharset = ansi!
fontpitch fontpitch = variable!
fontfamily fontfamily = swiss!
string facename = "Arial"
long textcolor = 33554432
textcase textcase = upper!
borderstyle borderstyle = stylelowered!
end type
event ue_digitando;string ls_busca, ls_columna
integer li_fila,li_largo
//tomamos el valor...
ls_busca = trim(sle_buscar.text)
li_largo=len(ls_busca)
/* Tomamos la segunda columna como la de busqueda o el campo donde se desea buscar lo que se digita... */
ls_columna = dw_arlis.Describe("#1.Name")
/* Aqui agregaremos a un string todo el argumento
de busqueda con los parametros... */
ls_busca = "Mid (" + ls_columna + ",1," + string(li_largo)+ " ) = '" + ls_busca + "'"
li_fila = dw_arlis.Find (ls_busca, 1, dw_arlis.rowcount())
IF li_fila > 0 THEN
//si encontro algo con ese argumento.. lo lleva a esa fila...
dw_arlis.setrow ( li_fila )
dw_arlis.ScrollToRow ( li_fila )
else
//sino encontro nada con ese argumento nos lleva a la fila 1
dw_arlis.setrow (1)
dw_arlis.ScrollToRow (1)
END IF
end event