Esempio n. 1
0
 private static byte[] GetFile(string direccion)
 {
     byte[] response = new byte[0];
     try
     {
         response = File.ReadAllBytes(direccion);
     }
     catch (Exception)
     {
     }
     return(response);
 }
Esempio n. 2
0
 private static string EstatusCFDI(string rfcemisor, string rfcreceptor, string total, string uuid)
 {
     try
     {
         response = new Acuse();
         response = status.GetStatusCFDI(rfcemisor, rfcreceptor, total, uuid);
         MostrarMensajeConsola("El XML es " + response.Estado + " según el SAT");
         return("El XML es " + response.Estado + " según el SAT");
     }
     catch (Exception)
     {
         return("");
     }
 }
Esempio n. 3
0
        internal virtual Acuse RequestStatus(string rfcEmisor, string rfcReceptor, string total, string uuid)
        {
            var   consulta = "?re=" + rfcEmisor.ToUpper() + "&rr=" + rfcReceptor.ToUpper() + "&tt=" + total + "&id=" + uuid.ToUpper();
            Acuse acuse    = null;

            for (int i = 0; i < 3; i++)
            {
                acuse = ConsultaCFDIService(consulta);
                if (acuse != null)
                {
                    break;
                }
            }
            return(acuse);
        }
Esempio n. 4
0
        internal virtual Acuse RequestStatus(string rfcEmisor, string rfcReceptor, string total, string uuid)
        {
            var   consulta = $"?re={rfcEmisor.ToUpper()}&rr={rfcReceptor.ToUpper()}&tt={total}&id={uuid.ToUpper()}";
            Acuse acuse    = null;

            for (int i = 0; i < 3; i++)
            {
                acuse = ConsultaCFDIService(consulta);
                if (acuse != null)
                {
                    break;
                }
            }
            return(acuse);
        }
Esempio n. 5
0
        private void btnIniciar_Click(object sender, EventArgs e)
        {
            disable_UI();

            int cont = 0;

            try
            {
                ConsultaCFDIServiceClient consultar = new ConsultaCFDIServiceClient();
                consultar.Open();
                foreach (XMLRow row in ArchivosXML)
                {
                    cont++;
                    if (!(row.XML_Esquema_CFDI == "Esquema Invalido" || row.XML_Complemento_TFD == "Complemento Invalido"))
                    {
                        Acuse acuse = new Acuse();
                        lblStatus.Text = "Archivo " + cont.ToString() + " de " + ArchivosXML.Count().ToString() + " Comprobando " + row.XML_Nombre_Archivo + " con UUID :" + row.XML_UUID + "...";
                        statusStrip1.Refresh();
                        if (consultar.State == CommunicationState.Opened)
                        {
                            acuse          = consultar.Consulta("?re=" + row.XML_RFC_Emisor.Replace("&", "&amp;") + "&rr=" + row.XML_RFC_Receptor.Replace("&", "&amp;") + "&tt=" + row.XML_Total + "&id=" + row.XML_UUID);
                            row.XML_Status = acuse.CodigoEstatus;
                        }
                        if (consultar.State == CommunicationState.Closed)
                        {
                            row.XML_Status = "Comunicacion cerrada, error";
                        }
                        if (consultar.State == CommunicationState.Faulted)
                        {
                            row.XML_Status = "Comunicacion fallida, error. Reintente";
                        }
                        if (consultar.State == CommunicationState.Closed)
                        {
                            row.XML_Status = "Comunicacion cerrada, error. Reintente";
                        }
                    }
                }
                ActualizaGrid();
            }
            catch (Exception ex)
            {
                MessageBox.Show("Error:" + ex.Message);
            }
            lblStatus.Text = "";
            statusStrip1.Refresh();
            enable_UI();
        }
Esempio n. 6
0
        public Acuse CancelAck(string issuer, string uuid)
        {
            string xml_response = null;

            using (var ws = new TimbradoSoapClient(binding, address)) {
                var    response        = ws.CancelaCFDIAck(Username, issuer, uuid.ToUpper());
                string err_number      = response [1].ToString();
                string err_description = response [2].ToString();

                if (err_number != "0")
                {
                    throw new ProFactClientException(err_number, err_description);
                }

                xml_response = response [3].ToString();
            }

            return(Acuse.FromXml(xml_response));
        }
Esempio n. 7
0
        private void procesar()
        {
            int cont = 0;

            try
            {
                ConsultaCFDIServiceClient consultar = new ConsultaCFDIServiceClient();
                consultar.Open();
                foreach (XMLRow row in ArchivosXML)
                {
                    cont++;
                    if (!(row.XML_Esquema_CFDI == "Esquema Invalido" || row.XML_Complemento_TFD == "Complemento Invalido"))
                    {
                        Acuse acuse = new Acuse();
                        if (consultar.State == CommunicationState.Opened)
                        {
                            acuse          = consultar.Consulta("?re=" + row.XML_RFC_Emisor.Replace("&", "&amp;") + "&rr=" + row.XML_RFC_Receptor.Replace("&", "&amp;") + "&tt=" + row.XML_Total + "&id=" + row.XML_UUID);
                            row.XML_Status = acuse.CodigoEstatus;
                        }
                        if (consultar.State == CommunicationState.Closed)
                        {
                            row.XML_Status = "Comunicacion cerrada, error";
                        }
                        if (consultar.State == CommunicationState.Faulted)
                        {
                            row.XML_Status = "Comunicacion fallida, error. Reintente";
                        }
                        if (consultar.State == CommunicationState.Closed)
                        {
                            row.XML_Status = "Comunicacion cerrada, error. Reintente";
                        }
                    }
                }
                ActualizaGrid();
            }
            catch (Exception ex)
            {
            }
        }
Esempio n. 8
0
    protected void button_Click(object sender, EventArgs e)
    {
        dh.ConnectionType = Hzone.Api.Database.ConnectionType.Odbc;
        dh.ConnectionUrl  = ConfigurationManager.ConnectionStrings["Local"].ConnectionString;
        dh.Connect();
        if (this.TextBox.Text != "")
        {
            try
            {
                Status status = new Status("https://consultaqr.facturaelectronica.sat.gob.mx/ConsultaCFDIService.svc");
                string qrcont = TextBox.Text;
                //this.TextBox.Text = "";
                string[] data = qrcont.Split('&');

                for (int i = 0; i < data.Length; i++)
                {
                    if (data[i].Contains("id"))
                    {
                        uuid = data[i].Replace("https://verificacfdi.facturaelectronica.sat.gob.mx/default.aspx?id=", "").Replace("id=", "");
                        continue;
                    }
                    if (data[i].Contains("re"))
                    {
                        emisor = data[i].Replace("re=", "");
                        continue;
                    }
                    if (data[i].Contains("rr"))
                    {
                        receptor = data[i].Replace("rr=", "");
                        continue;
                    }
                    if (data[i].Contains("tt"))
                    {
                        total = data[i].Replace("tt=", "");
                        continue;
                    }
                }

                //Acuse response = status.GetStatusCFDI("CVA9904266T9", "ISO090626DD1", "323.23", "438032cd-dd81-4a24-b42b-5e48287cbc36");
                Acuse response = status.GetStatusCFDI(emisor, receptor, total, uuid);
                codStatus  = response.CodigoEstatus;
                estatus    = response.Estado.ToString();
                cancelable = response.EsCancelable;
                statusCanc = response.EstatusCancelacion;

                string totalst = "";
                try { totalst = Convert.ToDouble(total).ToString("c"); }
                catch { totalst = total; }
                resp += "<p>UUID: " + uuid;
                resp += "<p>Emisor: " + emisor;
                resp += "<p>Receptor: " + receptor;
                resp += "<p>Monto: " + totalst;
                resp += "<p>" + response.CodigoEstatus;
                resp += "<p>Estatus: " + response.Estado;
                resp += "<p>Cancelable: " + response.EsCancelable;
                resp += "<p>Estatus Cancelación: " + response.EstatusCancelacion;
                resp += "<p><button class=\"w3-btn w3-large w3-opacity w3-hover-opacity-off\" style=\"background-color:#5d78ff\" onclick=\"refresh();\" >Continuar</button>";
            }
            catch (Exception ex)
            {
                if (ex.Message.Contains("Input string"))
                {
                    resp = "<i class=\"w3-red\">El Formato de QR no corresponde con un código del SAT</i>";
                }
                else
                {
                    resp = "<i class=\"w3-red\">" + ex.ToString() + "</i>";
                }
                resp += "<button class=\"w3-btn w3-large w3-opacity w3-hover-opacity-off\" style=\"background-color:#5d78ff\" onclick=\"location=URL\" >Continuar</button>";
            }
        }
        else
        {
            resp += "<i class=\"w3-red\">Favor de seleccionar archivo</i>";
            resp += "<button class=\"w3-btn w3-large w3-opacity w3-hover-opacity-off\" style=\"background-color:#5d78ff\" onclick=\"location=URL\" >Continuar</button>";
        }
        dh.Update("INSERT INTO qr_log VALUES (nextval('sq_qr'),'" + uuid + "','" + emisor + "','" + receptor + "','" + total + "','" + codStatus + "','" + estatus + "','" + cancelable + "','" + statusCanc + "')");
        // resp += dh.exception;
        dh.Disconnect();
    }
Esempio n. 9
0
        private void btnIniciar_Click(object sender, EventArgs e)
        {
            disable_UI();

            int cont = 0;
            try
            {
                ConsultaCFDIServiceClient consultar = new ConsultaCFDIServiceClient();
                consultar.Open();
                foreach (XMLRow row in ArchivosXML)
                {
                    cont++;
                    if (!(row.XML_Esquema_CFDI == "Esquema Invalido" || row.XML_Complemento_TFD == "Complemento Invalido"))
                    {
                        Acuse acuse = new Acuse();
                        lblStatus.Text = "Archivo " + cont.ToString() + " de " + ArchivosXML.Count().ToString() + " Comprobando "+row.XML_Nombre_Archivo+" con UUID :" + row.XML_UUID + "...";
                        statusStrip1.Refresh();
                        if (consultar.State == CommunicationState.Opened)
                        {
                            acuse = consultar.Consulta("?re=" + row.XML_RFC_Emisor.Replace("&", "&amp;") + "&rr=" + row.XML_RFC_Receptor.Replace("&", "&amp;") + "&tt=" + row.XML_Total + "&id=" + row.XML_UUID);
                            row.XML_Status = acuse.CodigoEstatus;
                        }
                        if (consultar.State == CommunicationState.Closed)
                        {
                            row.XML_Status = "Comunicacion cerrada, error";
                        }
                        if (consultar.State == CommunicationState.Faulted)
                        {
                            row.XML_Status = "Comunicacion fallida, error. Reintente";
                        }
                        if (consultar.State == CommunicationState.Closed)
                        {
                            row.XML_Status = "Comunicacion cerrada, error. Reintente";
                        }
                    }
                }
                ActualizaGrid();

            }
            catch(Exception ex)
            {
                MessageBox.Show("Error:" + ex.Message);
            }
            lblStatus.Text = "";
            statusStrip1.Refresh();
            enable_UI();
        }
Esempio n. 10
0
        private void procesar()
        {
            int cont = 0;
            try
            {
                ConsultaCFDIServiceClient consultar = new ConsultaCFDIServiceClient();
                consultar.Open();
                foreach (XMLRow row in ArchivosXML)
                {
                    cont++;
                    if (!(row.XML_Esquema_CFDI == "Esquema Invalido" || row.XML_Complemento_TFD == "Complemento Invalido"))
                    {
                        Acuse acuse = new Acuse();
                        if (consultar.State == CommunicationState.Opened)
                        {
                            acuse = consultar.Consulta("?re=" + row.XML_RFC_Emisor.Replace("&", "&amp;") + "&rr=" + row.XML_RFC_Receptor.Replace("&", "&amp;") + "&tt=" + row.XML_Total + "&id=" + row.XML_UUID);
                            row.XML_Status = acuse.CodigoEstatus;
                        }
                        if (consultar.State == CommunicationState.Closed)
                        {
                            row.XML_Status = "Comunicacion cerrada, error";
                        }
                        if (consultar.State == CommunicationState.Faulted)
                        {
                            row.XML_Status = "Comunicacion fallida, error. Reintente";
                        }
                        if (consultar.State == CommunicationState.Closed)
                        {
                            row.XML_Status = "Comunicacion cerrada, error. Reintente";
                        }
                    }
                }
                ActualizaGrid();

            }
            catch (Exception ex)
            {

            }
        }
Esempio n. 11
0
        private void GuardarInformacion(TimbreWs33 comprobante, int idErrorSat, string strLAcuseReciboSat, Acuse acuseReciboSAT)
        {
            try
            {
                NtLinkTimbrado t = new NtLinkTimbrado();

                //si por falta de conexión no actualizo//
                if (idErrorSat == 103)
                {
                    return;
                }

                comprobante.Acuse      = strLAcuseReciboSat;
                comprobante.FechaEnvio = acuseReciboSAT.Fecha;

                if (idErrorSat != 0)
                {
                    comprobante.Error    = idErrorSat;
                    comprobante.StrError = acuseReciboSAT.Incidencia[0].MensajeIncidencia;
                }
                else
                {
                    comprobante.Status = 1;
                }

                t.GuardarTimbre(comprobante);
            }
            catch (Exception ex)
            {
                Log.Error("Error al intentar salvar la información, Err:" + ex.ToString());
            }
        }