SmartGwt – Filtrar por un rango de fechas

marzo 9, 2012

Si utilizas un DataSource para enlazar los datos a un control de SmartGwt y tienes la necesidad de filtrar por un rango de fechas, lo puedes hacer de la siguiente manera:

AdvancedCriteria criteria=new AdvancedCriteria(OperatorId.AND, new Criterion[]{
new Criterion(“inicio”, OperatorId.GREATEROREQUAL, inicio),
new Criterion(“inicio”, OperatorId.LESS_THAN, fin)
});
calendario.fetchData(criteria);

Notesé que a pesar de que la clase Criterion hereda de Criteria, no podemos utilizarla directamente en el método fetchData, por ejemplo:

Criterion criteria=new Criterion();
criteria.addCriteria(“inicio”, OperatorId.GREATEROREQUAL, inicio);
criteria.addCriteria(“inicio”, OperatorId.LESS_THAN, fin);
calendario.fetchData(criteria);

arrojaría el siguiente error:

Caused by: java.lang.NullPointerException: null

    at com.smartgwt.client.data.Criterion.addCriteria(Criterion.java:218)

    at com.smartgwt.client.data.Criterion.addCriteria(Criterion.java:276)

Los objetos Criterion siempre deberán usarse como parte de un AdvancedCriteria dado que su definición es:

A criterion is part of the definition of an com.smartgwt.client.data.AdvancedCriteria object, which is used to filter records according to search criteria.

Anuncios

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: