public void buscarProcedimientos() { String parametro = bandboxBusqueda.getValue().trim(); if (!parametro.isEmpty()) { List<Listitem> listado_items = listboxProcedimientos.getItems(); if (parametro.toUpperCase().equals(parametro_current)) { index_current++; if (index_current >= listado_resultados.size()) { index_current = 0; } } else { parametro_current = parametro.toUpperCase(); listado_resultados.clear(); for (int i = 0; i < listado_items.size(); i++) { Listitem listitem = listado_items.get(i); Map<String, Object> pcd = (Map<String, Object>) listitem.getValue(); String codigo_cups = (String) pcd.get("codigo_cups"); String nombre_procedimiento = (String) pcd.get("nombre_procedimiento"); if (codigo_cups.toUpperCase().contains(parametro.toUpperCase()) || nombre_procedimiento.toUpperCase().contains(parametro.toUpperCase())) { listado_resultados.add(i); } } if (!listado_resultados.isEmpty()) { index_current = 0; } else { index_current = -1; } } if (index_current != -1) { Listitem listitem = listado_items.get(listado_resultados.get(index_current)); listboxProcedimientos.setActivePage(listitem); Clients.scrollIntoView(listitem); MensajesUtil.notificarInformacion("Resultado encontrado", listitem); } else { MensajesUtil.notificarAlerta("No se encontraron resultado", bandboxBusqueda); } } }