protected override bool buscar(int numeroRegistros, bool esBusquedaInicial) { if (cboPv.Items.Count == 0) { Cargador.cargarPuntosVta(cboPv, Tipo); if (Tipo == "factura" || Tipo.Substring(0, 4) == "nota") { cboPv.SelectedIndex = cboPv.FindStringExact("3"); } } if (Cliente != null) { txtNomCliente.Text = Cliente.razonSocial; } // Obtenemos los datos de búsqueda string codPlanta = txtCodPlanta.Text.Trim(); string nomPlanta = txtNomPlanta.Text.Trim(); string nomCliente = txtNomCliente.Text.Trim(); long numComp = 0; if (txtNroComp.Text != "") { numComp = long.Parse(txtNroComp.Text); } //Si en la apertura del frm no existen entidades para mostrar, //no debe mostrarse el frm. if (esBusquedaInicial && !existenEntidades()) { Mensaje mensaje = new Mensaje("No existen datos cargados para la entidad.", Mensaje.TipoMensaje.Informacion, Mensaje.Botones.OK); mensaje.ShowDialog(); return(false); } try { // Obtenemos el resultado List <Comprobante> resultado = Global.Servicio.BuscarComprobantes(codPlanta, nomPlanta, numComp, Tipo, int.Parse(cboPv.Text), nomCliente, numeroRegistros); // Listamos los clientes foreach (Comprobante comp in resultado) { long numero; string tipoF; switch (Tipo) { case "factura": numero = ((Comprobante_Factura)comp).numero; tipoF = ((Comprobante_Factura)comp).tipo; break; case "remito": numero = ((Comprobante_Remito)comp).numero; tipoF = "R"; break; case "recibo": numero = ((Comprobante_Recibo)comp).numero; tipoF = "X"; break; case "notaCredito": numero = ((Comprobante_Devolucion)comp).numero; tipoF = ((Comprobante_Devolucion)comp).tipo; break; default: numero = ((Comprobante_Recargo)comp).numero; tipoF = ((Comprobante_Recargo)comp).tipo; break; } string[] datos = new string[] { comp.fechaIngreso.ToString("dd/MM/yyyy"), numero.ToString(), comp.Planta.Cliente.razonSocial, comp.importe.ToString("0.00"), tipoF, comp.CE_MiPyme ? "SI" : "NO", ((bool)comp.anulado) ? "Anulado" : "Vigente" }; ListViewItem item = new ListViewItem(datos); item.Tag = comp; ltvBusqueda.Items.Add(item); } if (resultado.Count <= 0 && !esBusquedaInicial) { Mensaje mensaje = new Mensaje("Sin resultados.", Mensaje.TipoMensaje.Informacion, Mensaje.Botones.OK); mensaje.ShowDialog(); } } catch (Exception ex) { Mensaje unMensaje = new Mensaje(ex.Message, Mensaje.TipoMensaje.Error, Mensaje.Botones.OK); unMensaje.ShowDialog(); } return(true); }