Search

  • Usamos el Lookup{proyecto} donde definimos variables

  • Ejemplo formulario permiso en el proyecto seguridad.

  • usar componente <a:search/>

  • le pasamos el parametro al metodo searchBy()

  • para el idorden usamos # para que no se confunda con otra operacion de busqueda sobre el idorden

                  <b:row>
                    <b:column medium-screen="4">
                        <a:search label="#{msg['field.idorden']}"
                                  value="#{ordenController.lookupStoreejbServices.idorden}"
                                  renderedList="#{applicationMenu.orden.list}"  
                                  search="#{ordenController.searchBy('#')}"
                                  />
                    </b:column>
                    <b:column medium-screen="8">
                        <a:searchDate label="#{msg['field.fechainicio']}"
                                      renderedMove="true"
                                      pattern="dd/MM/yyyy"
                                      value="#{ordenController.lookupStoreejbServices.fecha}"                        
                                      renderedList="#{applicationMenu.orden.list}"  
                                      search="#{ordenController.searchBy('fecha')}"
                                      />
                    </b:column>
                </b:row>

                <b:row>
                    <b:column medium-screen="25" >



                <a:searchBetweenDate 
                    renderedMove="true"
                    labelDesde="#{msg['field.fechainicio']}"
                    valueDesde="#{orddenController.lookupSeguridadejbServices.fechaDesde}"
                    labelHasta="#{msg['field.fechafin']}"
                    valueHasta="#{ordenController.lookupSeguridadejbServices.fechaHasta}"
                    renderedList="#{applicationMenu.orden.list}"  
                    search="#{ordenController.searchBy('_betweendates')}"
                    />
                   </b:column>
                </b:row>
// <editor-fold defaultstate="collapsed" desc="searchBy(String string, Boolean... blns)">
    @Override
    public String searchBy(String string) {
        try {

            loginController.put("searchorden", string);

            writable = true;
            move();

        } catch (Exception e) {
            JsfUtil.errorMessage("searchBy()" + e.getLocalizedMessage());
        }
        return "";
    }// </editor-fold>

En el método move() validamos

// <editor-fold defaultstate="collapsed" desc="move">

    @Override
    public void move() {
        try {

            Document doc;
            switch (loginController.get("searchorden")) {
                case "_init":
                    //ordenList = ordenRepository.findPagination(page, rowPage);
                    ordenList = ordenRepository.findPagination(page, rowPage, new Document("idorden", -1));

                    break;
                case "_autocomplete":
                    //no se realiza ninguna accion 
                    break;

                case "idorden":
                    doc = new Document("idorden", orden.getIdorden());
                    ordenList = ordenRepository.findPagination(doc, page, rowPage, new Document("idorden", -1));
                    break;
                 case "#":
                    doc = new Document("idorden", lookupStoreejbServices.getIdorden());
                    ordenList = ordenRepository.findPagination(doc, page, rowPage, new Document("idorden", -1));
                    break;

                case "proveedor":
                    doc = new Document("idemisor",proveedorSelected.getIdproveedor()).append("tipoemisor", "proveedor");
                     ordenList = ordenRepository.findPagination(doc, page, rowPage, new Document("idorden", -1));
                    break;
                case "_betweendates":
                    ordenList = ordenRepository.filterBetweenDatePagination("activo", "si", "fecha", lookupStoreejbServices.getFechaDesde(), "fecha", lookupStoreejbServices.getFechaHasta(), page, rowPage, new Document("idorden", -1));
                    break;

                default:

                    ordenList = ordenRepository.findPagination(page, rowPage);
                    break;
            }

            ordenFiltered = ordenList;

            ordenDataModel = new OrdenDataModel(ordenList);

        } catch (Exception e) {
            JsfUtil.errorMessage("move() " + e.getLocalizedMessage());
        }
    }// </editor-fold>

Last updated