private void reportarCompraElectronica(object sender, DoWorkEventArgs e) { try { //envio la factura a hacienda compraGlobal = facturacionIns.CompraSimplificadaElectronica(compraGlobal); System.Threading.Thread.Sleep(3000); //consulto a hacienda el estado de la factura try { string mensaje = facturacionIns.consultarCompraSimplificada(compraGlobal); } catch (Exception) { MessageBox.Show("Error al consultar el estado del documento en Hacienda, valida el estado del documento", "Error al consultar el estado del documento", MessageBoxButtons.OK, MessageBoxIcon.Error); } } catch (FacturacionElectronicaException ex) { MessageBox.Show("Error al realizar la facturación electronica", "Factura Electrónica", MessageBoxButtons.OK, MessageBoxIcon.Error); } catch (EnvioCorreoException ex) { MessageBox.Show("Error al enviar la facturación por correo electrónico", "Correo electrónico", MessageBoxButtons.OK, MessageBoxIcon.Error); } catch (TokenException ex) { MessageBox.Show("Error al obtener el Token en Hacienda", "Facturación electrónica", MessageBoxButtons.OK, MessageBoxIcon.Error); } catch (ConsultaHaciendaExcpetion ex) { MessageBox.Show("Error al consultar hacienda la factura electrónica", "Facturación electrónica", MessageBoxButtons.OK, MessageBoxIcon.Error); } catch (generarXMLException ex) { MessageBox.Show("Error al generar el XML de la factura", "Facturación electrónica", MessageBoxButtons.OK, MessageBoxIcon.Error); } catch (Exception EX) { MessageBox.Show("Error general de facturación electrónica", "Facturación electrónica", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
private void dtgvDetalleFactura_CellContentClick(object sender, DataGridViewCellEventArgs e) { try { int id = int.Parse(dtgvDetalleFactura.Rows[e.RowIndex].Cells[0].Value.ToString()); string tipoDoc = dtgvDetalleFactura.Rows[e.RowIndex].Cells[1].Value.ToString(); int tipoDocumento = int.Parse(dtgvDetalleFactura.Rows[e.RowIndex].Cells[11].Value.ToString()); if (e.ColumnIndex == 8) { if (tipoDoc == Enum.GetName(typeof(Enums.TipoDocumento), Enums.TipoDocumento.Compras).ToUpper()) { frmDetalleMensaje msj = new frmDetalleMensaje(); foreach (var item in mensajesLista) { if (item.id == id) { msj.Reporte = item; break; } } msj.ShowDialog(); } 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 == tipoDocumento).SingleOrDefault(); if (doc != null) { doc = facturaIns.getEntity(doc); frmDocumentosDetalle form = new frmDocumentosDetalle(doc); form.ShowDialog(); } } } else if (e.ColumnIndex == 9) { if (tipoDoc == Enum.GetName(typeof(Enums.TipoDocumento), Enums.TipoDocumento.Compras).ToUpper()) { reportarMensajeElectronica(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()) { enviarCorreoCorreoDocumentoElectronico(id); } } else if (e.ColumnIndex == 10) { if (Utility.AccesoInternet()) { if (tipoDoc == Enum.GetName(typeof(Enums.TipoDocumento), Enums.TipoDocumento.Compras).ToUpper()) { facturaIns.consultarMensajePorIdFact(id); cargarDatos(); } 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 == tipoDocumento).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); } } else { MessageBox.Show("No hay acceso a internet, no se validarán los documentos", "Sin Internet", MessageBoxButtons.OK, MessageBoxIcon.Error); } } cargarDatos(); } catch (Exception ex) { clsEvento evento = new clsEvento(ex.Message, "1"); MessageBox.Show("Ocurrio un error, intente de nuevo", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } }