private int filtrarFacturas() { bool cbFechaMarcada = checkBoxFecha.Checked; DateTime fini = dtPickerDesde.Value.Date.AddHours(0).AddMinutes(0).AddSeconds(0); DateTime ffin = dtPickerHasta.Value.Date.AddHours(23).AddMinutes(59).AddSeconds(59); if (!checkBoxPacientes_numero_pf.Checked && !checkBoxFecha.Checked && !checkBoxEstado.Checked && !checkBoxPacientes_nombre_cliente.Checked && !checkBoxPacientes_referencia.Checked && !checkBoxPacientes_sopnumbe.Checked) { cbFechaMarcada = true; fini = fechaIni; ffin = fechaFin; } listaDeFacturas = mainController.getFacturas( checkBoxPacientes_numero_pf.Checked, textBoxPacientes_numero_pf_desde.Text, textBoxPacientes_numero_pf_hasta.Text, cbFechaMarcada, fini, ffin, checkBoxEstado.Checked, cmbBEstado.SelectedItem.ToString(), checkBoxPacientes_nombre_cliente.Checked, textBoxPacientes_nombre_cliente.Text, checkBoxPacientes_referencia.Checked, textBoxPacientes_referencia.Text, checkBoxPacientes_sopnumbe.Checked, textBoxPacientes_sopnumbe_desde.Text, textBoxPacientes_sopnumbe_hasta.Text ); bindingSource1.DataSource = listaDeFacturas; dgvFacturas.AutoGenerateColumns = false; dgvFacturas.DataSource = bindingSource1; dgvFacturas.AutoResizeColumns(); //dgvFacturas.RowHeadersVisible = false; dgvFacturas.Refresh(); //Restituir las filas marcadas usando la lista de docs no seleccionados InicializaCheckBoxDelGrid(dgvFacturas, idxChkBox, LDocsNoSeleccionados); return(listaDeFacturas.Count); }
public void ProcesaActualizacionDeNumeroFiscalE(List <NFSe> listaFacturasNfse, string carpetaOrigen, string nombreArchivo, MainDB bdGP) { string rutaYNombreArchivo = string.Empty; int numRegistros = listaFacturasNfse.Count(); try { String msj = String.Empty; int errores = 0; int i = 0; OnProgreso(1, "INICIANDO ACTUALIZACION DE NFS-e..."); foreach (NFSe nfselectronica in listaFacturasNfse) { rutaYNombreArchivo = Path.Combine(carpetaOrigen.Trim(), nombreArchivo); msj = String.Empty; var docVenta = bdGP.getFacturas( false, string.Empty, string.Empty, false, DateTime.Today, DateTime.Today, false, string.Empty, false, string.Empty, false, string.Empty, true, nfselectronica.Sopnumbe, nfselectronica.Sopnumbe).FirstOrDefault(); try { if (docVenta != null) { string tipoMEstados = "DOCVENTA-" + docVenta.estadoContabilizado; nfselectronica.CicloDeVida = new Maquina(docVenta.estadoActual, docVenta.regimen, docVenta.voidstts, "emisor", tipoMEstados); if (nfselectronica.CicloDeVida.Transiciona(Maquina.eventoUploadTxtPrefectura, 1)) { bdGP.ActualizaNumeroFiscalElectronico(docVenta.soptype, nfselectronica.numNFSe, nfselectronica.Sopnumbe, out msj); bdGP.CreaLogFactura(docVenta.soptype, nfselectronica.Sopnumbe, string.Empty, nfselectronica.CicloDeVida.idxTargetSingleStatus.ToString(), _usuario, string.Empty, nfselectronica.CicloDeVida.targetSingleStatus, nfselectronica.CicloDeVida.targetBinStatus, nfselectronica.CicloDeVida.EstadoEnPalabras(nfselectronica.CicloDeVida.targetBinStatus)); bdGP.ActualizaOCreaLogFactura(docVenta.soptype, nfselectronica.Sopnumbe, rutaYNombreArchivo, nfselectronica.CicloDeVida.idxTargetSingleStatus.ToString(), _usuario, string.Empty, Maquina.estadoBaseEmisor, Maquina.estadoBaseEmisor, nfselectronica.CicloDeVida.targetBinStatus, nfselectronica.CicloDeVida.EstadoEnPalabras(nfselectronica.CicloDeVida.targetBinStatus)); } else { msj += nfselectronica.CicloDeVida.sMsj; } } else { msj += "La nota " + nfselectronica.Sopnumbe + " no existe en GP."; } } catch (Exception lo) { string imsj = lo.InnerException == null ? "" : lo.InnerException.ToString(); msj = lo.Message + " " + imsj + Environment.NewLine + lo.StackTrace; bdGP.CreaLogFactura(docVenta.soptype, nfselectronica.Sopnumbe, msj, "errDesconocido", _usuario, string.Empty, Maquina.estadoBaseError, nfselectronica.CicloDeVida.targetBinStatus, lo.Message); errores++; } finally { OnProgreso(i * 100 / numRegistros, "Doc:" + nfselectronica.Sopnumbe + " " + msj.Trim() + Environment.NewLine); //Notifica al suscriptor i++; } if (errores > 10) { break; } } } finally { OnProgreso(100, "-----------"); } OnProgreso(100, "Proceso finalizado!"); }