protected void BuscarButton_Click(object sender, EventArgs e) { if (Funciones.SessionTimeOut(Session)) { Response.Redirect("~/SessionTimeout.aspx"); } else { Entidades.Sesion sesion = (Entidades.Sesion)Session["Sesion"]; List <FeaEntidades.InterFacturas.Listado.emisor_comprobante_listado> lista = new List <FeaEntidades.InterFacturas.Listado.emisor_comprobante_listado>(); MensajeLabel.Text = String.Empty; Entidades.Persona persona = ((List <Entidades.Persona>)ViewState["Personas"])[ClienteDropDownList.SelectedIndex]; org.dyndns.cedweb.listado.cecl cecl = new org.dyndns.cedweb.listado.cecl(); cecl.cuit_canal = Convert.ToInt64("30690783521"); cecl.cuit_vendedor = Convert.ToInt64(sesion.Cuit.Nro); cecl.fecha_emision_desde = FechaDesdeTextBox.Text; cecl.fecha_emision_hasta = FechaHastaTextBox.Text; if (persona.DocumentoIdTipoDoc != null && persona.DocumentoIdTipoDoc != "") { cecl.tipo_doc_comprador = Convert.ToInt32(persona.DocumentoIdTipoDoc); cecl.tipo_doc_compradorSpecified = true; cecl.doc_comprador = Convert.ToInt64(persona.Documento.Nro); cecl.doc_compradorSpecified = true; } else { cecl.tipo_doc_compradorSpecified = false; cecl.doc_compradorSpecified = false; } cecl.limite = "SCHEMA"; string NroCertif = ((Entidades.Sesion)Session["Sesion"]).Cuit.NroSerieCertifITF; if (NroCertif.Equals(string.Empty)) { MensajeLabel.Text = "Aún no disponemos de su certificado digital"; return; } GrabarLogTexto("~/Listar.txt", "Consulta de Lote CUIT: " + sesion.Cuit.Nro + " Fecha Desde: " + FechaDesdeTextBox.Text + " Fecha Hasta: " + FechaHastaTextBox.Text); GrabarLogTexto("~/Listar.txt", "NroSerieCertifITF: " + NroCertif); if (NroCertif.Equals(string.Empty)) { MensajeLabel.Text = "Aún no disponemos de su certificado digital"; return; } string certificado = CaptchaDotNet2.Security.Cryptography.Encryptor.Encrypt(NroCertif, "srgerg$%^bg", Convert.FromBase64String("srfjuoxp")).ToString(); org.dyndns.cedweb.listado.ListadoIBK clcdyndns = new org.dyndns.cedweb.listado.ListadoIBK(); string ListadoIBKUtilizarServidorExterno = System.Configuration.ConfigurationManager.AppSettings["ListadoIBKUtilizarServidorExterno"]; GrabarLogTexto("~/Listar.txt", "Parametro ListadoIBKUtilizarServidorExterno: " + ListadoIBKUtilizarServidorExterno); if (ListadoIBKUtilizarServidorExterno == "SI") { clcdyndns.Url = System.Configuration.ConfigurationManager.AppSettings["ListadoIBKurl"]; GrabarLogTexto("~/Listar.txt", "Parametro ListadoIBKurl: " + System.Configuration.ConfigurationManager.AppSettings["ListadoIBKurl"]); } string resp = ""; try { resp = clcdyndns.ListarIBK(cecl, certificado); } catch (Exception ex) { MensajeLabel.Text = ex.Message; } try { //Deserializar FeaEntidades.InterFacturas.Listado.consulta_emisor_listado_response lr = new FeaEntidades.InterFacturas.Listado.consulta_emisor_listado_response(); string xml = resp; var serializer = new System.Xml.Serialization.XmlSerializer(typeof(FeaEntidades.InterFacturas.Listado.consulta_emisor_listado_response)); using (TextReader reader = new StringReader(xml)) { lr = (FeaEntidades.InterFacturas.Listado.consulta_emisor_listado_response)serializer.Deserialize(reader); } if (lr.emisor_comprobante_response != null && lr.emisor_comprobante_response.emisor_comprobante_listado != null && lr.emisor_comprobante_response.emisor_comprobante_listado.Length != 0) { lista = lr.emisor_comprobante_response.emisor_comprobante_listado.ToList <FeaEntidades.InterFacturas.Listado.emisor_comprobante_listado>(); } } catch { } if (lista.Count == 0) { ComprobantesGridView.DataSource = null; ComprobantesGridView.DataBind(); if (MensajeLabel.Text != "") { MensajeLabel.Text += "<br />"; } MensajeLabel.Text += "No se han encontrado Comprobantes que satisfagan la busqueda"; } else { ComprobantesGridView.DataSource = lista; ViewState["Comprobantes"] = lista; ComprobantesGridView.DataBind(); } } }
protected void BuscarButton_Click(object sender, EventArgs e) { if (Funciones.SessionTimeOut(Session)) { Response.Redirect("~/SessionTimeout.aspx"); } else { Entidades.Sesion sesion = (Entidades.Sesion)Session["Sesion"]; List<FeaEntidades.InterFacturas.Listado.emisor_comprobante_listado> lista = new List<FeaEntidades.InterFacturas.Listado.emisor_comprobante_listado>(); MensajeLabel.Text = String.Empty; Entidades.Persona persona = ((List<Entidades.Persona>)ViewState["Personas"])[ClienteDropDownList.SelectedIndex]; org.dyndns.cedweb.listado.cecl cecl = new org.dyndns.cedweb.listado.cecl(); cecl.cuit_canal = Convert.ToInt64("30690783521"); cecl.cuit_vendedor = Convert.ToInt64(sesion.Cuit.Nro); cecl.fecha_emision_desde = FechaDesdeTextBox.Text; cecl.fecha_emision_hasta = FechaHastaTextBox.Text; if (persona.DocumentoIdTipoDoc != null && persona.DocumentoIdTipoDoc != "") { cecl.tipo_doc_comprador = Convert.ToInt32(persona.DocumentoIdTipoDoc); cecl.tipo_doc_compradorSpecified = true; cecl.doc_comprador = persona.DocumentoNro; cecl.doc_compradorSpecified = true; } else { cecl.tipo_doc_compradorSpecified = false; cecl.doc_compradorSpecified = false; } cecl.limite = "SCHEMA"; string NroCertif = ((Entidades.Sesion)Session["Sesion"]).Cuit.NroSerieCertifITF; if (NroCertif.Equals(string.Empty)) { MensajeLabel.Text = "Aún no disponemos de su certificado digital"; return; } GrabarLogTexto("~/Listar.txt", "Consulta de Lote CUIT: " + sesion.Cuit.Nro + " Fecha Desde: " + FechaDesdeTextBox.Text + " Fecha Hasta: " + FechaHastaTextBox.Text); GrabarLogTexto("~/Listar.txt", "NroSerieCertifITF: " + NroCertif); if (NroCertif.Equals(string.Empty)) { MensajeLabel.Text = "Aún no disponemos de su certificado digital"; return; } string certificado = CaptchaDotNet2.Security.Cryptography.Encryptor.Encrypt(NroCertif, "srgerg$%^bg", Convert.FromBase64String("srfjuoxp")).ToString(); org.dyndns.cedweb.listado.ListadoIBK clcdyndns = new org.dyndns.cedweb.listado.ListadoIBK(); string ListadoIBKUtilizarServidorExterno = System.Configuration.ConfigurationManager.AppSettings["ListadoIBKUtilizarServidorExterno"]; GrabarLogTexto("~/Listar.txt", "Parametro ListadoIBKUtilizarServidorExterno: " + ListadoIBKUtilizarServidorExterno); if (ListadoIBKUtilizarServidorExterno == "SI") { clcdyndns.Url = System.Configuration.ConfigurationManager.AppSettings["ListadoIBKurl"]; GrabarLogTexto("~/Listar.txt", "Parametro ListadoIBKurl: " + System.Configuration.ConfigurationManager.AppSettings["ListadoIBKurl"]); } string resp = ""; try { resp = clcdyndns.ListarIBK(cecl, certificado); } catch (Exception ex) { MensajeLabel.Text = ex.Message; } try { //Deserializar FeaEntidades.InterFacturas.Listado.consulta_emisor_listado_response lr = new FeaEntidades.InterFacturas.Listado.consulta_emisor_listado_response(); string xml = resp; var serializer = new System.Xml.Serialization.XmlSerializer(typeof(FeaEntidades.InterFacturas.Listado.consulta_emisor_listado_response)); using (TextReader reader = new StringReader(xml)) { lr = (FeaEntidades.InterFacturas.Listado.consulta_emisor_listado_response)serializer.Deserialize(reader); } if (lr.emisor_comprobante_response != null && lr.emisor_comprobante_response.emisor_comprobante_listado != null && lr.emisor_comprobante_response.emisor_comprobante_listado.Length != 0) { lista = lr.emisor_comprobante_response.emisor_comprobante_listado.ToList<FeaEntidades.InterFacturas.Listado.emisor_comprobante_listado>(); } } catch { } if (lista.Count == 0) { ComprobantesGridView.DataSource = null; ComprobantesGridView.DataBind(); if (MensajeLabel.Text != "") { MensajeLabel.Text += "<br />"; } MensajeLabel.Text += "No se han encontrado Comprobantes que satisfagan la busqueda"; } else { ComprobantesGridView.DataSource = lista; ViewState["Comprobantes"] = lista; ComprobantesGridView.DataBind(); } } }
public static string ComprobantesListadoIBK(FeaEntidades.InterFacturas.Listado.consulta_emisor_comprobante_listado cecl, string certificado) { GrabarLogTexto("Listar.txt", "Paso1"); RN.IBKComprobantesListado.ReporteFacturaWebService objIBK = new RN.IBKComprobantesListado.ReporteFacturaWebService(); objIBK.Url = System.Configuration.ConfigurationManager.AppSettings["URLinterfacturasListado"]; if (System.Configuration.ConfigurationManager.AppSettings["Proxy"] != null && System.Configuration.ConfigurationManager.AppSettings["Proxy"] != "") { System.Net.WebProxy wp = new System.Net.WebProxy(System.Configuration.ConfigurationManager.AppSettings["Proxy"], false); string usuarioProxy = System.Configuration.ConfigurationManager.AppSettings["UsuarioProxy"]; string claveProxy = System.Configuration.ConfigurationManager.AppSettings["ClaveProxy"]; string dominioProxy = System.Configuration.ConfigurationManager.AppSettings["DominioProxy"]; System.Net.NetworkCredential networkCredential = new System.Net.NetworkCredential(usuarioProxy, claveProxy, dominioProxy); wp.Credentials = networkCredential; objIBK.Proxy = wp; } string storeLocation = System.Configuration.ConfigurationManager.AppSettings["StoreLocation"]; X509Store store; if (storeLocation == "CurrentUser") { store = new X509Store(StoreLocation.CurrentUser); } else { store = new X509Store(StoreLocation.LocalMachine); } store.Open(OpenFlags.ReadOnly); GrabarLogTexto("Listar.txt", "Paso2"); //Serializar ( pasar de FeaEntidades.InterFacturas.consulta_emisor_comprobante_listado a String XML ) MemoryStream ms = new MemoryStream(); XmlTextWriter writer = new XmlTextWriter(ms, System.Text.Encoding.GetEncoding("ISO-8859-1")); System.Xml.Serialization.XmlSerializer x = new System.Xml.Serialization.XmlSerializer(cecl.GetType()); x.Serialize(writer, cecl); ms = (MemoryStream)writer.BaseStream; string InputTexto = ByteArrayToString(ms.ToArray()); ms.Close(); ms = null; GrabarLogTexto("Listar.txt", "Paso3"); X509Certificate2Collection col = store.Certificates.Find(X509FindType.FindBySerialNumber, certificado, true); if (col.Count.Equals(1)) { objIBK.ClientCertificates.Add(col[0]); System.Threading.Thread.Sleep(1000); string resultado = string.Empty; resultado = objIBK.getComprobantesListado(InputTexto); GrabarLogTexto("Listar.txt", "Paso4"); resultado = resultado.Replace("\n", ""); resultado = resultado.Replace("<consulta_emisor_comprobante_listado_response xmlns=\"http://lote.schemas.cfe.ib.com.ar/\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\">", ""); resultado = resultado.Replace("</consulta_emisor_comprobante_listado_response>", ""); resultado = resultado.Replace(" xsi:nil=\"true\"", ""); //Deserializar FeaEntidades.InterFacturas.Listado.consulta_emisor_listado_response lr = new FeaEntidades.InterFacturas.Listado.consulta_emisor_listado_response(); string xml = resultado; var serializer = new System.Xml.Serialization.XmlSerializer(typeof(FeaEntidades.InterFacturas.Listado.consulta_emisor_listado_response)); using (TextReader reader = new StringReader(xml)) { lr = (FeaEntidades.InterFacturas.Listado.consulta_emisor_listado_response)serializer.Deserialize(reader); } //if (lcr.Item.GetType() == typeof(IBK.lote_comprobantes_responseErrores_response)) //{ // resultado = ((IBK.lote_comprobantes_responseErrores_response)lcr.Item).error[0].descripcion_error; //} //else if (!((IBK.lote_response)(lcr.Item)).estado.Equals("OK")) //{ // if (((IBK.lote_response)lcr.Item).errores_lote != null) // { // resultado = ((IBK.lote_response)lcr.Item).errores_lote[0].descripcion_error; // } // else // { // resultado = ((IBK.lote_response)lcr.Item).comprobante_response[0].errores_comprobante[0].descripcion_error; // } // throw new Exception(resultado); //} //else //{ // resultado = "Comprobante enviado satisfactoriamente a Interfacturas."; //} return resultado; } else { throw new Exception("Su certificado no está disponible en nuestro repositorio"); } }