Esempio n. 1
0
        private void reportarFacturacionElectronica()
        {
            if (Utility.AccesoInternet())
            {
                try
                {
                    _doc = facturaIns.FacturarElectronicamente(_doc);

                    System.Threading.Thread.Sleep(3000);

                    facturaIns.consultarFacturaElectronicaPorClave(_doc.clave);

                    if (chkEnviar.Checked)
                    {
                        List <string> correos = new List <string>();


                        if (_doc.correo1 != null)
                        {
                            correos.Add(_doc.correo1);
                        }

                        if (_doc.correo2 != null)
                        {
                            correos.Add(_doc.correo2);
                        }


                        enviarCorreo(_doc, correos);
                    }
                }
                catch (Exception ex)
                {
                    MessageBox.Show("No se pudo emitir el documento NOTA CREDITO", "Error al procesar", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
            }
            else
            {
                MessageBox.Show("No hay acceso a internet, No se enviará el documento a Hacienda, validar en la pantalla de validación, para su envio correspodiente.", "Sin Internet", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
Esempio n. 2
0
        public void reportarFacturacionElectronica(object o, DoWorkEventArgs e)
        {
            tbDocumento doc = documentoGlo;

            try
            {
                //envio la factura a hacienda
                doc = facturaIns.FacturarElectronicamente(doc);

                System.Threading.Thread.Sleep(3000);
                //consulto a hacienda el estado de la factura
                try
                {
                    string mensaje = facturaIns.consultarFacturaElectronicaPorClave(doc.clave);
                }
                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);
                }

                bool enviado = false;
                //se solicita respuesta, y se confecciona el correo a enviar
                if ((bool)doc.notificarCorreo)
                {
                    List <string> correos = new List <string>();
                    if (doc.correo1 != null)
                    {
                        correos.Add(doc.correo1.Trim());
                    }
                    if (doc.correo2 != null)
                    {
                        correos.Add(doc.correo2.Trim());
                    }
                    CorreoElectronico correo = new CorreoElectronico(doc, correos, true);
                    enviado = correo.enviarCorreo();
                }
            }
            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);
            }
        }