protected void TraerDatosDeAFIPLinkButton_Click(object sender, EventArgs e) { if (TipoDocDropDownList.SelectedValue == "80" || TipoDocDropDownList.SelectedValue == "86") //CUIT o CUIL { try { Entidades.Sesion sesion = ((Entidades.Sesion)Session["Sesion"]); //Entidades.Sesion sesionConsultaAFIP = new Entidades.Sesion(); //sesionConsultaAFIP.Cuit.UsaCertificadoAFIPPropio = true; //sesionConsultaAFIP.Cuit.Nro = RN.Configuracion.CuitConsultaAFIP(sesion); //sesionConsultaAFIP.CnnStr = sesion.CnnStr; if (NroDocTextBox.Text != string.Empty) { Entidades.PadronA13.persona persona = new Entidades.PadronA13.persona(); persona = RN.ServiciosAFIP.DatosFiscales(NroDocTextBox.Text, sesion); if (persona.razonSocial != null && persona.razonSocial != string.Empty || persona.apellido != null && persona.apellido != string.Empty) { //Vaciar datos de persona a completar RazonSocialTextBox.Text = ""; Domicilio.Calle = ""; Domicilio.Nro = ""; Domicilio.Piso = ""; Domicilio.Depto = ""; Domicilio.Sector = ""; Domicilio.Torre = ""; Domicilio.Manzana = ""; Domicilio.Localidad = ""; Domicilio.IdProvincia = "0"; Domicilio.CodPost = ""; //Completar datos de persona con info del padron AFIP if (persona.razonSocial != null && persona.razonSocial != string.Empty) { RazonSocialTextBox.Text = persona.razonSocial; } else { RazonSocialTextBox.Text = persona.apellido; if (persona.nombre != null && persona.nombre != string.Empty) { RazonSocialTextBox.Text += " " + persona.nombre; } } if (persona.fechaContratoSocialSpecified == true) { DatosImpositivos.FechaInicioActividades = persona.fechaContratoSocial; } if (persona.domicilio.Length > 0) { for (int i = 0; i < persona.domicilio.Length; i++) { if (persona.domicilio[i].tipoDomicilio.IndexOf("LEGAL") != -1 || i == (persona.domicilio.Length - 1)) { Domicilio.Calle = persona.domicilio[i].calle; Domicilio.Nro = persona.domicilio[i].numero.ToString(); Domicilio.Piso = persona.domicilio[i].piso; Domicilio.Depto = persona.domicilio[i].oficinaDptoLocal; Domicilio.Sector = persona.domicilio[i].sector; Domicilio.Torre = persona.domicilio[i].torre; Domicilio.Manzana = persona.domicilio[i].manzana; Domicilio.Localidad = persona.domicilio[i].localidad; Domicilio.IdProvincia = RN.ServiciosAFIP.IdProvincia(persona.domicilio[i].idProvincia.ToString()); Domicilio.CodPost = persona.domicilio[i].codigoPostal; break; } } } } else { MensajeLabel.Text = "No se encontraron datos para completar."; ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "Message", "alert('" + MensajeLabel.Text.ToString().Replace("'", "") + "');", true); } //string xmlString = RN.ServiciosAFIP.DatosFiscales(NroDocTextBox.Text, sesionConsultaAFIP); //System.Xml.Serialization.XmlSerializer serializer = new System.Xml.Serialization.XmlSerializer(typeof(Entidades.AFIP.Contribuyente)); //StringReader rdr = new StringReader(xmlString); //Entidades.AFIP.Contribuyente contribuyente = (Entidades.AFIP.Contribuyente)serializer.Deserialize(rdr); //RazonSocialTextBox.Text = contribuyente.Persona.DescripcionCorta; //if (contribuyente.Domicilios.Length > 0) //{ // Domicilio.Calle = contribuyente.Domicilios[0].Calle; // Domicilio.Nro = contribuyente.Domicilios[0].Numero; // Domicilio.Piso = contribuyente.Domicilios[0].Piso; // Domicilio.Depto = contribuyente.Domicilios[0].OficinaDeptoLocal; // Domicilio.Sector = string.Empty; // Domicilio.Torre = string.Empty; // Domicilio.Manzana = string.Empty; // Domicilio.Localidad = contribuyente.Domicilios[0].Localidad; // Domicilio.IdProvincia = RN.ServiciosAFIP.IdProvincia(contribuyente.Domicilios[0].IdProvincia); // Domicilio.CodPost = contribuyente.Domicilios[0].CodigoPostal; //} } else { MensajeLabel.Text = "Ingrese un número de documento."; ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "Message", "alert('" + MensajeLabel.Text.ToString().Replace("'", "") + "');", true); } } catch (Exception ex) { MensajeLabel.Text = ex.Message.Replace("\r\n", "\\n"); ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "Message", "alert('" + MensajeLabel.Text.ToString().Replace("'", "") + "');", true); } } else { MensajeLabel.Text = "Para obtener los datos de la AFIP hay que ingresar CUIT/CUIL"; ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "Message", "alert('" + MensajeLabel.Text.ToString().Replace("'", "") + "');", true); } }
public static Entidades.PadronA13.persona DatosFiscales(string Cuit, Entidades.Sesion Sesion) { //string resp = ""; Entidades.PadronA13.persona persona = new Entidades.PadronA13.persona(); try { //LoginTicket ticket = new LoginTicket(); //CrearTicket(Sesion, out ticket); //ar.gov.afip.padron_puc_ws.ContribuyenteNivel3SelectServiceImplService c = new ar.gov.afip.padron_puc_ws.ContribuyenteNivel3SelectServiceImplService(); //c.Url = System.Configuration.ConfigurationManager.AppSettings["ar_gov_afip_padron-puc-ws_Service"]; //string cuit = "<contribuyentePK><id>" + Cuit + "</id></contribuyentePK>"; //string token = "-----BEGIN SSOTOKENBASE64-----\n" + ticket.Token + " -----END SSOTOKENBASE64-----"; //string sign = "-----BEGIN SSOSIGNBASE64-----\n" + ticket.Sign + " -----END SSOSIGNBASE64-----"; //resp = c.get(cuit, token, sign); LoginTicket ticket = new LoginTicket(); CrearTicketPadronA13(Sesion, out ticket); ar.gov.afip.personaServiceA13.PersonaServiceA13 c = new ar.gov.afip.personaServiceA13.PersonaServiceA13(); c.Url = System.Configuration.ConfigurationManager.AppSettings["ar_gov_afip_personaServiceA13"]; string cuit = Cuit; string token = ticket.Token; string sign = ticket.Sign; string CuitCanalAFIP = System.Configuration.ConfigurationManager.AppSettings["CuitCanalAFIP"]; ar.gov.afip.personaServiceA13.personaReturn respPersona; if (Sesion.Cuit.UsaCertificadoAFIPPropio && Sesion.Cuit.Nro != CuitCanalAFIP) { respPersona = c.getPersona(token, sign, Convert.ToInt64(Sesion.Cuit.Nro), Convert.ToInt64(cuit)); } else { //Busco representante del CuitCanalAFIP string cuitServicioAFIP = RN.Configuracion.CuitConsultaAFIP(Sesion); respPersona = c.getPersona(token, sign, Convert.ToInt64(cuitServicioAFIP), Convert.ToInt64(cuit)); } persona.razonSocial = respPersona.persona.razonSocial; persona.apellido = respPersona.persona.apellido; persona.nombre = respPersona.persona.nombre; persona.claveInactivaAsociada = respPersona.persona.claveInactivaAsociada; persona.descripcionActividadPrincipal = respPersona.persona.descripcionActividadPrincipal; persona.estadoClave = respPersona.persona.estadoClave; persona.fechaContratoSocialSpecified = respPersona.persona.fechaContratoSocialSpecified; persona.fechaContratoSocial = respPersona.persona.fechaContratoSocial; persona.formaJuridica = respPersona.persona.formaJuridica; persona.idActividadPrincipal = respPersona.persona.idActividadPrincipal; persona.idActividadPrincipalSpecified = respPersona.persona.idActividadPrincipalSpecified; persona.idPersona = respPersona.persona.idPersona; persona.idPersonaSpecified = respPersona.persona.idPersonaSpecified; persona.mesCierre = respPersona.persona.mesCierre; persona.mesCierreSpecified = respPersona.persona.mesCierreSpecified; persona.numeroDocumento = respPersona.persona.numeroDocumento; persona.periodoActividadPrincipal = respPersona.persona.periodoActividadPrincipal; persona.periodoActividadPrincipalSpecified = respPersona.persona.periodoActividadPrincipalSpecified; persona.tipoClave = respPersona.persona.tipoClave; persona.tipoDocumento = respPersona.persona.tipoDocumento; persona.tipoPersona = respPersona.persona.tipoPersona; if (respPersona.persona.domicilio.Length > 0) { persona.domicilio = new Entidades.PadronA13.domicilio[respPersona.persona.domicilio.Length]; for (int i = 0; i < respPersona.persona.domicilio.Length; i++) { persona.domicilio[i] = new Entidades.PadronA13.domicilio(); persona.domicilio[i].calle = respPersona.persona.domicilio[i].calle; persona.domicilio[i].codigoPostal = respPersona.persona.domicilio[i].codigoPostal; persona.domicilio[i].datoAdicional = respPersona.persona.domicilio[i].datoAdicional; persona.domicilio[i].descripcionProvincia = respPersona.persona.domicilio[i].descripcionProvincia; persona.domicilio[i].direccion = respPersona.persona.domicilio[i].direccion; persona.domicilio[i].estadoDomicilio = respPersona.persona.domicilio[i].estadoDomicilio; persona.domicilio[i].idProvincia = respPersona.persona.domicilio[i].idProvincia; persona.domicilio[i].idProvinciaSpecified = respPersona.persona.domicilio[i].idProvinciaSpecified; persona.domicilio[i].localidad = respPersona.persona.domicilio[i].localidad; persona.domicilio[i].manzana = respPersona.persona.domicilio[i].manzana; persona.domicilio[i].numero = respPersona.persona.domicilio[i].numero; persona.domicilio[i].numeroSpecified = respPersona.persona.domicilio[i].numeroSpecified; persona.domicilio[i].oficinaDptoLocal = respPersona.persona.domicilio[i].oficinaDptoLocal; persona.domicilio[i].piso = respPersona.persona.domicilio[i].piso; persona.domicilio[i].sector = respPersona.persona.domicilio[i].sector; persona.domicilio[i].tipoDatoAdicional = respPersona.persona.domicilio[i].tipoDatoAdicional; persona.domicilio[i].tipoDomicilio = respPersona.persona.domicilio[i].tipoDomicilio; persona.domicilio[i].torre = respPersona.persona.domicilio[i].torre; } } } catch (Exception ex) { throw ex; } return(persona); }