filtro

Hola atodos, describo el siguiente problema.
Tengo un datatable filter y estoy intentando hacer que filtre por fechas y no me funciona, este es mi codigo:

 <p:column headerText="Fecha Alta" sortBy="#{p.fechaAlta}" filterBy="#{p.fechaAlta}" filterMatchMode="equals">
                           <f:facet name="filter">
                               <p:calendar  pattern="MM/dd/yyyy">
                                 <p:ajax event="dateSelect" oncomplete="PF('tablaP').filter()" update="tablaP"/>
                             </p:calendar>
                           </f:facet>
                            <p:cellEditor>
                                <f:facet name="output"><h:outputText value="#{p.fechaAlta}"  >
                                          <f:convertDateTime pattern="MM/dd/yyyy" />
                               </h:outputText></f:facet>
</p:cellEditor>
</p:column>

ESPERO VUESTROS CONSEJOS.GRACIAS

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.

¿alguna idea, compañeros?

¿alguna idea, compañeros?

Re: filtrar date en PrimeFaces

 

Agrega el siguiente método en tu bean (por ejemplo):

public boolean filterByDate(Object value, Object filter, Locale locale) {
    return value != null && filter != null && value.equals(filter);
}

NOTA: Si las fechas que deseas filtrar incluyen hora, minutos, etc., necesitarás más código para hacer la comparación deseada. Regresas true para la fila que deseas mostrar o false en caso contrario.

Y en el JSF:

<p:column headerText="Fecha Alta" sortBy="#{p.fechaAlta}" filterBy="#{p.fechaAlta}" filterFunction="#{bean.filterByDate}">
    <f:facet name="filter">
    <p:calendar  pattern="MM/dd/yyyy">
        <p:ajax event="dateSelect" oncomplete="PF('tablaP').filter()" />
    </p:calendar>
    </f:facet>
    <p:cellEditor>
    <f:facet name="output">
        <h:outputText value="#{p.fechaAlta}">
            <f:convertDateTime pattern="MM/dd/yyyy" />
        </h:outputText>
    </f:facet>
    </p:cellEditor>
</p:column>

Mmm… Por lo que veo, estabas muy cerca. ¡Por si sirve de algo!

~~~

Hola ,de nuevo He puesto el

Hola ,de nuevo

He puesto el metodo filterByDate tal cual en mi bean ,y al elegir una fecha que existe en la base de datos ,me dice que no hay elementos con esa fecha.Y ademas he observado que deja de filtrar en las otras columnas que si lo hacia bien.

¿alguna idea? En el paquete

¿alguna idea? En el paquete modelo fechaAlta es date y el tomcat no genera ningun error.gracias

Ya he conseguido que filtre.

Ya he conseguido que filtre. En cambio, cuando borro la fecha introducida en el calendar, no me actualiza el datatable y se queda tal cual.¿alguna idea?gracias