Hola... Trabajo con power builder, pero quisiera ponerle filtros como en excel por ejemplo. Cuando ingrese un nombre 'a' me reporte todos los nombres que comiencen con 'a';pero si sigo aumentándole 'l' me valla saliendo todos que comienzan con esas características, y así sucesivamente. Ójala me haya entendido.
Para realizar esto debes crear un evento de usuario sobre un control Single Linea Edit (SLE). Por ejemplo: 1. Insertas un control Single Linea Edit llamado "sle_buscar" sobre tu ventana. 2. Sobre el control creas un nuevo evento de usuario llamado "ue_buscar". 3. En en la opcion [Event ID] de la lista eliges "pbm_enchange", es decir deberia quedar asi: [Event ID]=pbm_enchange. 4. En parte del script debes codificar lo necesario para llamar por que campo debes filtrar. Ejemplo: queremos filtrar los clientes por "Apellidos y Nombres", para ello nuestra ventana cliente debe tener un datawindow tipo grid que nos filtre todos los clientes existentes de la tabla cliente de nuestra base de datos, Entonces nuestro script del evento "ue_buscar" seria así: //Definimos variables string ls_buscar integer li_buscar if dw_cliente.rowcount( )<>0 then //Si el datawindow cliente contiene algun cliente dw_cliente.setfilter("") //filtramos todos los registros del datawindow cliente dw_cliente.filter() //Hacemos una comparación del campo "nombres_cliente" del datawindow con las letras introducidas en el sle_buscar. ls_buscar="nombres_cliente like '"+upper(sle_buscar.text)+"%'" //Buscamos los registros que coincidan con las letras introducidas en "sle_buscar" li_buscar=dw_cliente.find(ls_buscar,1,dw_cliente.rowcount()) if li_buscar=0 then messagebox("Verifique","¡Registro no Existe!",Exclamation!) sle_buscar.setfocus( ) return else dw_cliente.scrolltorow(li_buscar) //Mostramos los registros coincidentes dw_cliente.setfilter(ls_buscar) //Filtramos todos los registros que coinciden dw_cliente.filter() dw_cliente.setsort("Nombres_Cliente a") //Ordenamos de forma ascendente dw_cliente.sort( ) end if else //Si no contiene desplegamos el siguiente mensaje messagebox("Verifique","¡No Existen Registros!",Information!) end if /**********************************************/ Este ejemplo lo puedes adaptar a tu aplicación. Califica y Finaliza la Aplicación.