private Task ProcessData(DataGridView dg, IProgress <ProgressReport> process) { int index = 1; int totalProcess = dg.Rows.Count; var ProgressReport = new ProgressReport(); return(Task.Run(() => { try { foreach (DataGridViewRow item in dtgvDetalleFactura.Rows) { ProgressReport.PorcentComplete = index * 100 / totalProcess; process.Report(ProgressReport); try { int id = int.Parse(item.Cells[0].Value.ToString()); string tipoDoc = item.Cells[1].Value.ToString(); if (tipoDoc == Enum.GetName(typeof(Enums.TipoDocumento), Enums.TipoDocumento.Compras).ToUpper()) { facturaIns.consultarMensajePorIdFact(id); } else if (tipoDoc == Enum.GetName(typeof(Enums.TipoDocumento), Enums.TipoDocumento.FacturaElectronica).ToUpper() || tipoDoc == Enum.GetName(typeof(Enums.TipoDocumento), Enums.TipoDocumento.NotaCreditoElectronica).ToUpper() || tipoDoc == Enum.GetName(typeof(Enums.TipoDocumento), Enums.TipoDocumento.NotaDebitoElectronica).ToUpper() || tipoDoc == Enum.GetName(typeof(Enums.TipoDocumento), Enums.TipoDocumento.TiqueteElectronico).ToUpper()) { tbDocumento doc = facturasLista.Where(x => x.id == id && x.tipoDocumento == (int)Enums.TipoDocumento.FacturaElectronica).SingleOrDefault(); facturaIns.consultarFacturaElectronicaPorIdFact(doc); } else if (tipoDoc == Enum.GetName(typeof(Enums.TipoDocumento), Enums.TipoDocumento.ComprasSimplificada).ToUpper()) { tbCompras doc = comprasLista.Where(x => x.id == id && x.tipoDoc == (int)Enums.TipoDocumento.ComprasSimplificada).SingleOrDefault(); facturaIns.consultarCompraSimplificada(doc); } } catch (Exception) { } index++; } } catch (Exception ex) { throw ex; } })); }
private Task ProcessData(DataGridView dg, IProgress <ProgressReport> process) { int index = 1; int totalProcess = dg.Rows.Count; var ProgressReport = new ProgressReport(); return(Task.Run(() => { try { foreach (DataGridViewRow item in dtgvDetalleFactura.Rows) { ProgressReport.PorcentComplete = index * 100 / totalProcess; process.Report(ProgressReport); try { string idFactura = item.Cells[1].Value.ToString(); string tipoDoc = item.Cells[0].Value.ToString(); if (idFactura != string.Empty && tipoDoc != string.Empty) { tbDocumento doc = new tbDocumento(); doc.id = int.Parse(idFactura); doc.tipoDocumento = int.Parse(tipoDoc); facturaIns.consultarFacturaElectronicaPorIdFact(doc); // cargarDatos(); } } catch (Exception) { } index++; } } catch (Exception) { } })); }