예제 #1
0
        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;
                }
            }));
        }
예제 #2
0
        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)
                {
                }
            }));
        }