SmartGwt – Filtrar un ListGrid en el cliente

abril 3, 2012

La forma de filtrar los datos de un ListGrid en el cliente dependerá de la fuente de datos, es decir, si utilizas un DataSource o no. Aquí explicare la primera opción, ya que en nuestro caso utilizamos un RestDataSource. Si quieres saber como filtrar un ListGrid que contiene datos locales puedes consultar esta pregunta y la documentación.

Supongamos que tenemos un servicio REST que regresa un listado de usuarios con los campos id y oficina. Para poder filtrar los datos en el cliente, configuramos el ListGrid de la siguiente manera:

ListGrid grdUsuarios=new ListGrid();
grdUsuarios.setDataSource(new RestDataSource(){
{
    setDataURL("api/rest/usuarios");
    setDataFormat(DSDataFormat.JSON);
    DataSourceField fldId=new DataSourceField("id", FieldType.TEXT);
    fldId.setPrimaryKey(true);
    DataSourceField fldOficina=new DataSourceField("oficina", FieldType.TEXT);
    setFields(fldId, fldOficina);
}
});
grdUsuarios.setAutoFetchData(true);
grdUsuarios.setDataProperties(new ResultSet(){
    {
        setFetchMode(FetchMode.LOCAL);
        setUseClientFiltering(true);
    }
});
grdUsuarios.setShowFilterEditor(true);
grdUsuarios.setFilterOnKeypress(true);

Fuentes:
http://forums.smartclient.com/showthread.php?p=84118#post84118 

Anuncios

Una respuesta to “SmartGwt – Filtrar un ListGrid en el cliente”

  1. Pedro3102 Says:

    muy bueno lo que hiciste, pero yo quisiera que el filtro filtre por String.startWith y no por substring.


Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: