public void GenerarImpuestos(FeaEntidades.InterFacturas.comprobante comp, string monedaComprobante, string tipoDeCambio) { System.Collections.Generic.List <FeaEntidades.InterFacturas.resumenImpuestos> listadeimpuestos = ((System.Collections.Generic.List <FeaEntidades.InterFacturas.resumenImpuestos>)ViewState["impuestos"]); comp.resumen.impuestos = new FeaEntidades.InterFacturas.resumenImpuestos[listadeimpuestos.Count]; for (int i = 0; i < listadeimpuestos.Count; i++) { if (!listadeimpuestos[i].codigo_impuesto.Equals(0)) { comp.resumen.impuestos[i] = new FeaEntidades.InterFacturas.resumenImpuestos(); comp.resumen.impuestos[i].codigo_impuesto = listadeimpuestos[i].codigo_impuesto; comp.resumen.impuestos[i].codigo_jurisdiccion = listadeimpuestos[i].codigo_jurisdiccion; comp.resumen.impuestos[i].codigo_jurisdiccionSpecified = listadeimpuestos[i].codigo_jurisdiccionSpecified; comp.resumen.impuestos[i].descripcion = listadeimpuestos[i].descripcion; comp.resumen.impuestos[i].porcentaje_impuesto = listadeimpuestos[i].porcentaje_impuesto; comp.resumen.impuestos[i].porcentaje_impuestoSpecified = listadeimpuestos[i].porcentaje_impuestoSpecified; if (monedaComprobante.Equals(FeaEntidades.CodigosMoneda.CodigoMoneda.Local)) { comp.resumen.impuestos[i].importe_impuesto = listadeimpuestos[i].importe_impuesto; } else { comp.resumen.impuestos[i].importe_impuesto = Math.Round(listadeimpuestos[i].importe_impuesto * Convert.ToDouble(tipoDeCambio), 2); comp.resumen.impuestos[i].importe_impuesto_moneda_origen = listadeimpuestos[i].importe_impuesto; comp.resumen.impuestos[i].importe_impuesto_moneda_origenSpecified = true; } } } }
private void LeerFormatoDetalleIBK(EventArgs e, FeaEntidades.InterFacturas.lote_comprobantes lc, System.IO.MemoryStream ms) { //Formato detalle_factura IBK ms.Seek(0, System.IO.SeekOrigin.Begin); FeaEntidades.InterFacturas.comprobante c = new FeaEntidades.InterFacturas.comprobante(); System.Xml.Serialization.XmlSerializer x = new System.Xml.Serialization.XmlSerializer(c.GetType()); c = (FeaEntidades.InterFacturas.comprobante)x.Deserialize(ms); FeaEntidades.InterFacturas.comprobante[] cArray = new FeaEntidades.InterFacturas.comprobante[1]; cArray[0] = c; lc.comprobante = cArray; Session["ComprobanteAConsultar"] = lc; Entidades.Comprobante comprobante = new Entidades.Comprobante(); string XML = ""; RN.Comprobante.SerializarLc(out XML, lc); comprobante.Request = XML; Session["ComprobanteATratar"] = new Entidades.ComprobanteATratar(Entidades.Enum.TratamientoComprobante.Consulta, comprobante); string script = "window.open('/ComprobanteConsulta.aspx', '');"; ScriptManager.RegisterStartupScript(this, typeof(Page), "popup", script, true); }
public void GenerarResumen(FeaEntidades.InterFacturas.comprobante comp, string monedaComprobante, string tipoDeCambio) { System.Collections.Generic.List <FeaEntidades.InterFacturas.resumenDescuentos> listadedescuentos = (System.Collections.Generic.List <FeaEntidades.InterFacturas.resumenDescuentos>)ViewState["descuentos"]; comp.resumen.descuentos = new FeaEntidades.InterFacturas.resumenDescuentos[listadedescuentos.Count]; for (int i = 0; i < listadedescuentos.Count; i++) { if (listadedescuentos[i].descripcion_descuento != null && !listadedescuentos[i].descripcion_descuento.Equals(string.Empty)) { comp.resumen.descuentos[i] = new FeaEntidades.InterFacturas.resumenDescuentos(); comp.resumen.descuentos[i].alicuota_iva_descuento = listadedescuentos[i].alicuota_iva_descuento; comp.resumen.descuentos[i].alicuota_iva_descuentoSpecified = listadedescuentos[i].alicuota_iva_descuentoSpecified; comp.resumen.descuentos[i].descripcion_descuento = listadedescuentos[i].descripcion_descuento; comp.resumen.descuentos[i].importe_iva_descuento = listadedescuentos[i].importe_iva_descuento; comp.resumen.descuentos[i].importe_iva_descuentoSpecified = listadedescuentos[i].importe_iva_descuentoSpecified; comp.resumen.descuentos[i].porcentaje_descuento = listadedescuentos[i].porcentaje_descuento; comp.resumen.descuentos[i].porcentaje_descuentoSpecified = listadedescuentos[i].porcentaje_descuentoSpecified; comp.resumen.descuentos[i].indicacion_exento_gravado_descuento = listadedescuentos[i].indicacion_exento_gravado_descuento; if (monedaComprobante.Equals(FeaEntidades.CodigosMoneda.CodigoMoneda.Local)) { comp.resumen.descuentos[i].importe_descuento = listadedescuentos[i].importe_descuento; } else { comp.resumen.descuentos[i].importe_descuento = Math.Round(listadedescuentos[i].importe_descuento * Convert.ToDouble(tipoDeCambio), 2); comp.resumen.descuentos[i].importe_descuento_moneda_origen = listadedescuentos[i].importe_descuento; comp.resumen.descuentos[i].importe_descuento_moneda_origenSpecified = true; if (!comp.resumen.descuentos[i].importe_iva_descuento.Equals(0)) { comp.resumen.descuentos[i].importe_iva_descuento = Math.Round(listadedescuentos[i].importe_iva_descuento * Convert.ToDouble(tipoDeCambio), 2); comp.resumen.descuentos[i].importe_iva_descuento_moneda_origen = listadedescuentos[i].importe_iva_descuento; comp.resumen.descuentos[i].importe_iva_descuento_moneda_origenSpecified = true; } } } } }
private void LeerXmlComprobante(out FeaEntidades.InterFacturas.lote_comprobantes lc, System.IO.MemoryStream ms) { lc = new FeaEntidades.InterFacturas.lote_comprobantes(); ms.Seek(0, System.IO.SeekOrigin.Begin); FeaEntidades.InterFacturas.comprobante c = new FeaEntidades.InterFacturas.comprobante(); System.Xml.Serialization.XmlSerializer x = new System.Xml.Serialization.XmlSerializer(c.GetType()); c = (FeaEntidades.InterFacturas.comprobante)x.Deserialize(ms); FeaEntidades.InterFacturas.comprobante[] cArray = new FeaEntidades.InterFacturas.comprobante[1]; cArray[0] = c; lc.comprobante = cArray; }
private FeaEntidades.InterFacturas.lote_comprobantes GenerarLote(bool EsParaImprimirPDF) { FeaEntidades.InterFacturas.lote_comprobantes lote = new FeaEntidades.InterFacturas.lote_comprobantes(); FeaEntidades.InterFacturas.comprobante comp = new FeaEntidades.InterFacturas.comprobante(); FeaEntidades.InterFacturas.cabecera_lote cab = new FeaEntidades.InterFacturas.cabecera_lote(); cab.cantidad_reg = 1; cab.cuit_canal = Convert.ToInt64(Entidades.Const.CuitInterfacturas); cab.cuit_vendedor = Convert.ToInt64(Cuit_VendedorTextBox.Text); cab.id_lote = Convert.ToInt64(Id_LoteTextbox.Text); GenerarPrestaServicio(cab); if (IdNaturalezaComprobanteTextBox.Text != "Compra") { cab.punto_de_venta = Convert.ToInt32(PuntoVtaDropDownList.SelectedValue); } else { cab.punto_de_venta = Convert.ToInt32(PuntoVtaTextBox.Text); } lote.cabecera_lote = cab; FeaEntidades.InterFacturas.cabecera compcab = new FeaEntidades.InterFacturas.cabecera(); FeaEntidades.InterFacturas.informacion_comprador infcompra = new FeaEntidades.InterFacturas.informacion_comprador(); if (!MonedaComprobanteDropDownList.SelectedValue.Equals(FeaEntidades.CodigosMoneda.CodigoMoneda.Local)) { Tipo_de_cambioLabel.Visible = true; Tipo_de_cambioTextBox.Visible = true; } else { Tipo_de_cambioLabel.Visible = false; Tipo_de_cambioTextBox.Visible = false; Tipo_de_cambioTextBox.Text = null; } GenerarInfoComprador(compcab, infcompra); FeaEntidades.InterFacturas.informacion_comprobante infcomprob = GenerarInfoComprobante(); GenerarReferencias(infcomprob); GenerarInfoExportacion(comp, infcomprob); GenerarInfoExtensionesComerciales(comp); GenerarInfoExtensionesCamaraFacturas(comp); GenerarInfoExtensionesDestinatarios(comp); compcab.informacion_comprobante = infcomprob; GenerarInfoVendedor(compcab); comp.cabecera = compcab; string idtipo = "Comun"; if (IdNaturalezaComprobanteTextBox.Text != "Compra") { int auxPV = Convert.ToInt32(((DropDownList)PuntoVtaDropDownList).SelectedValue); try { if (Funciones.SessionTimeOut(Session)) { Response.Redirect("~/SessionTimeout.aspx"); } else { idtipo = ((Entidades.Sesion)Session["Sesion"]).UN.PuntosVta.Find(delegate(Entidades.PuntoVta pv) { return pv.Nro == auxPV; }).IdTipoPuntoVta; } } catch (NullReferenceException) { } } FeaEntidades.InterFacturas.detalle det = DetalleLinea.GenerarDetalles(MonedaComprobanteDropDownList.SelectedValue, Tipo_de_cambioTextBox.Text, idtipo, Tipo_De_ComprobanteDropDownList.SelectedValue, EsParaImprimirPDF); det.comentarios = ComentariosTextBox.Text; comp.detalle = det; FeaEntidades.InterFacturas.resumen r = new FeaEntidades.InterFacturas.resumen(); if (Tipo_de_cambioTextBox.Text != string.Empty) { r.tipo_de_cambio = Convert.ToDouble(Tipo_de_cambioTextBox.Text); } else { r.tipo_de_cambio = 1; } r.codigo_moneda = MonedaComprobanteDropDownList.SelectedValue; if (MonedaComprobanteDropDownList.SelectedValue.Equals(FeaEntidades.CodigosMoneda.CodigoMoneda.Local)) { //Moneda local GenerarImportesMonedaLocal(r); } else { //Moneda extranjera GenerarImportesMonedaExtranjera(r); } r.observaciones = Observaciones_ResumenTextBox.Text; comp.resumen = r; System.Collections.Generic.List<FeaEntidades.InterFacturas.resumenImpuestos> listadeimpuestos = ImpuestosGlobales.Lista; if (IdNaturalezaComprobanteTextBox.Text != "Compra") { int auxPV = Convert.ToInt32(((DropDownList)PuntoVtaDropDownList).SelectedValue); try { if (Funciones.SessionTimeOut(Session)) { Response.Redirect("~/SessionTimeout.aspx"); } else { idtipo = ((Entidades.Sesion)Session["Sesion"]).UN.PuntosVta.Find(delegate(Entidades.PuntoVta pv) { return pv.Nro == auxPV; }).IdTipoPuntoVta; if (idtipo.Equals("Exportacion")) { if (listadeimpuestos[0].importe_impuesto != 0 || listadeimpuestos.Count > 1) { ImpuestosGlobales.Focus(); throw new Exception("Los impuestos globales no se deben informar para exportación"); } } else { ImpuestosGlobales.GenerarImpuestos(comp, MonedaComprobanteDropDownList.SelectedValue, Tipo_de_cambioTextBox.Text); } } } catch (System.NullReferenceException) { ImpuestosGlobales.GenerarImpuestos(comp, MonedaComprobanteDropDownList.SelectedValue, Tipo_de_cambioTextBox.Text); } } else { ImpuestosGlobales.GenerarImpuestos(comp, MonedaComprobanteDropDownList.SelectedValue, Tipo_de_cambioTextBox.Text); } DescuentosGlobales.GenerarResumen(comp, MonedaComprobanteDropDownList.SelectedValue, Tipo_de_cambioTextBox.Text); lote.comprobante[0] = comp; return lote; }
public static FeaEntidades.InterFacturas.lote_comprobantes Ws2Fea(org.dyndns.cedweb.consulta.ConsultarResult lcIBK) { FeaEntidades.InterFacturas.lote_comprobantes lcFEA = new FeaEntidades.InterFacturas.lote_comprobantes(); lcFEA.cabecera_lote = new FeaEntidades.InterFacturas.cabecera_lote(); lcFEA.cabecera_lote.cantidad_reg = lcIBK.cabecera_lote.cantidad_reg; lcFEA.cabecera_lote.cod_interno_canal = lcIBK.cabecera_lote.cod_interno_canal; lcFEA.cabecera_lote.cuit_canal = lcIBK.cabecera_lote.cuit_canal; lcFEA.cabecera_lote.cuit_vendedor = lcIBK.cabecera_lote.cuit_vendedor; lcFEA.cabecera_lote.fecha_envio_lote = lcIBK.cabecera_lote.fecha_envio_lote; lcFEA.cabecera_lote.id_lote = lcIBK.cabecera_lote.id_lote; lcFEA.cabecera_lote.motivo = lcIBK.cabecera_lote.motivo; lcFEA.cabecera_lote.presta_serv = lcIBK.cabecera_lote.presta_serv; lcFEA.cabecera_lote.presta_servSpecified = lcIBK.cabecera_lote.presta_servSpecified; lcFEA.cabecera_lote.punto_de_venta = lcIBK.cabecera_lote.punto_de_venta; lcFEA.cabecera_lote.resultado = lcIBK.cabecera_lote.resultado; lcFEA.comprobante = new FeaEntidades.InterFacturas.comprobante[lcIBK.comprobante.Length]; for (int i = 0; i < lcIBK.comprobante.Length; i++) { FeaEntidades.InterFacturas.comprobante cIBK = new FeaEntidades.InterFacturas.comprobante(); cIBK.cabecera = new FeaEntidades.InterFacturas.cabecera(); //Comprador cIBK.cabecera.informacion_comprador = new FeaEntidades.InterFacturas.informacion_comprador(); cIBK.cabecera.informacion_comprador.codigo_doc_identificatorio = lcIBK.comprobante[i].cabecera.informacion_comprador.codigo_doc_identificatorio; cIBK.cabecera.informacion_comprador.codigo_interno = lcIBK.comprobante[i].cabecera.informacion_comprador.codigo_interno; cIBK.cabecera.informacion_comprador.condicion_ingresos_brutos = lcIBK.comprobante[i].cabecera.informacion_comprador.condicion_ingresos_brutos; cIBK.cabecera.informacion_comprador.condicion_ingresos_brutosSpecified = lcIBK.comprobante[i].cabecera.informacion_comprador.condicion_ingresos_brutosSpecified; cIBK.cabecera.informacion_comprador.condicion_IVA = lcIBK.comprobante[i].cabecera.informacion_comprador.condicion_IVA; cIBK.cabecera.informacion_comprador.condicion_IVASpecified = lcIBK.comprobante[i].cabecera.informacion_comprador.condicion_IVASpecified; cIBK.cabecera.informacion_comprador.contacto = lcIBK.comprobante[i].cabecera.informacion_comprador.contacto; cIBK.cabecera.informacion_comprador.cp = lcIBK.comprobante[i].cabecera.informacion_comprador.cp; cIBK.cabecera.informacion_comprador.denominacion = lcIBK.comprobante[i].cabecera.informacion_comprador.denominacion; cIBK.cabecera.informacion_comprador.domicilio_calle = lcIBK.comprobante[i].cabecera.informacion_comprador.domicilio_calle; cIBK.cabecera.informacion_comprador.domicilio_depto = lcIBK.comprobante[i].cabecera.informacion_comprador.domicilio_depto; cIBK.cabecera.informacion_comprador.domicilio_manzana = lcIBK.comprobante[i].cabecera.informacion_comprador.domicilio_manzana; cIBK.cabecera.informacion_comprador.domicilio_numero = lcIBK.comprobante[i].cabecera.informacion_comprador.domicilio_numero; cIBK.cabecera.informacion_comprador.domicilio_piso = lcIBK.comprobante[i].cabecera.informacion_comprador.domicilio_piso; cIBK.cabecera.informacion_comprador.domicilio_sector = lcIBK.comprobante[i].cabecera.informacion_comprador.domicilio_sector; cIBK.cabecera.informacion_comprador.domicilio_torre = lcIBK.comprobante[i].cabecera.informacion_comprador.domicilio_torre; cIBK.cabecera.informacion_comprador.email = lcIBK.comprobante[i].cabecera.informacion_comprador.email; cIBK.cabecera.informacion_comprador.GLN = lcIBK.comprobante[i].cabecera.informacion_comprador.GLN; cIBK.cabecera.informacion_comprador.GLNSpecified = lcIBK.comprobante[i].cabecera.informacion_comprador.GLNSpecified; cIBK.cabecera.informacion_comprador.inicio_de_actividades = lcIBK.comprobante[i].cabecera.informacion_comprador.inicio_de_actividades; cIBK.cabecera.informacion_comprador.localidad = lcIBK.comprobante[i].cabecera.informacion_comprador.localidad; cIBK.cabecera.informacion_comprador.nro_doc_identificatorio = lcIBK.comprobante[i].cabecera.informacion_comprador.nro_doc_identificatorio; cIBK.cabecera.informacion_comprador.nro_ingresos_brutos = lcIBK.comprobante[i].cabecera.informacion_comprador.nro_ingresos_brutos; cIBK.cabecera.informacion_comprador.provincia = lcIBK.comprobante[i].cabecera.informacion_comprador.provincia; cIBK.cabecera.informacion_comprador.telefono = lcIBK.comprobante[i].cabecera.informacion_comprador.telefono; //Info Comprobante cIBK.cabecera.informacion_comprobante = new FeaEntidades.InterFacturas.informacion_comprobante(); cIBK.cabecera.informacion_comprobante.cae = lcIBK.comprobante[i].cabecera.informacion_comprobante.cae; cIBK.cabecera.informacion_comprobante.caeSpecified = false; if (cIBK.cabecera.informacion_comprobante.cae != null && cIBK.cabecera.informacion_comprobante.cae != "") { cIBK.cabecera.informacion_comprobante.caeSpecified = true; } cIBK.cabecera.informacion_comprobante.codigo_operacion = lcIBK.comprobante[i].cabecera.informacion_comprobante.codigo_operacion; cIBK.cabecera.informacion_comprobante.condicion_de_pago = lcIBK.comprobante[i].cabecera.informacion_comprobante.condicion_de_pago; cIBK.cabecera.informacion_comprobante.condicion_de_pagoSpecified = true; cIBK.cabecera.informacion_comprobante.es_detalle_encriptado = lcIBK.comprobante[i].cabecera.informacion_comprobante.es_detalle_encriptado; cIBK.cabecera.informacion_comprobante.fecha_emision = lcIBK.comprobante[i].cabecera.informacion_comprobante.fecha_emision; cIBK.cabecera.informacion_comprobante.fecha_obtencion_cae = lcIBK.comprobante[i].cabecera.informacion_comprobante.fecha_obtencion_cae; cIBK.cabecera.informacion_comprobante.fecha_obtencion_caeSpecified = false; if (cIBK.cabecera.informacion_comprobante.fecha_obtencion_cae != null && cIBK.cabecera.informacion_comprobante.fecha_obtencion_cae != "") { cIBK.cabecera.informacion_comprobante.fecha_obtencion_caeSpecified = true; } cIBK.cabecera.informacion_comprobante.fecha_serv_desde = lcIBK.comprobante[i].cabecera.informacion_comprobante.fecha_serv_desde; cIBK.cabecera.informacion_comprobante.fecha_serv_hasta = lcIBK.comprobante[i].cabecera.informacion_comprobante.fecha_serv_hasta; cIBK.cabecera.informacion_comprobante.fecha_vencimiento = lcIBK.comprobante[i].cabecera.informacion_comprobante.fecha_vencimiento; cIBK.cabecera.informacion_comprobante.fecha_vencimiento_cae = lcIBK.comprobante[i].cabecera.informacion_comprobante.fecha_vencimiento_cae; cIBK.cabecera.informacion_comprobante.fecha_vencimiento_caeSpecified = false; if (cIBK.cabecera.informacion_comprobante.fecha_vencimiento_cae != null && cIBK.cabecera.informacion_comprobante.fecha_vencimiento_cae != "") { cIBK.cabecera.informacion_comprobante.fecha_vencimiento_caeSpecified = true; } cIBK.cabecera.informacion_comprobante.iva_computable = lcIBK.comprobante[i].cabecera.informacion_comprobante.iva_computable; cIBK.cabecera.informacion_comprobante.motivo = lcIBK.comprobante[i].cabecera.informacion_comprobante.motivo; cIBK.cabecera.informacion_comprobante.numero_comprobante = lcIBK.comprobante[i].cabecera.informacion_comprobante.numero_comprobante; cIBK.cabecera.informacion_comprobante.punto_de_venta = lcIBK.comprobante[i].cabecera.informacion_comprobante.punto_de_venta; cIBK.cabecera.informacion_comprobante.resultado = lcIBK.comprobante[i].cabecera.informacion_comprobante.resultado; cIBK.cabecera.informacion_comprobante.tipo_de_comprobante = lcIBK.comprobante[i].cabecera.informacion_comprobante.tipo_de_comprobante; cIBK.cabecera.informacion_comprobante.codigo_concepto = lcIBK.comprobante[i].cabecera.informacion_comprobante.codigo_concepto; cIBK.cabecera.informacion_comprobante.codigo_conceptoSpecified = lcIBK.comprobante[i].cabecera.informacion_comprobante.codigo_conceptoSpecified; //Info Vendedor cIBK.cabecera.informacion_vendedor = new FeaEntidades.InterFacturas.informacion_vendedor(); cIBK.cabecera.informacion_vendedor.codigo_interno = lcIBK.comprobante[i].cabecera.informacion_vendedor.codigo_interno; cIBK.cabecera.informacion_vendedor.razon_social = lcIBK.comprobante[i].cabecera.informacion_vendedor.razon_social; cIBK.cabecera.informacion_vendedor.condicion_ingresos_brutos = lcIBK.comprobante[i].cabecera.informacion_vendedor.condicion_ingresos_brutos; cIBK.cabecera.informacion_vendedor.condicion_ingresos_brutosSpecified = lcIBK.comprobante[i].cabecera.informacion_vendedor.condicion_ingresos_brutosSpecified; cIBK.cabecera.informacion_vendedor.condicion_IVA = lcIBK.comprobante[i].cabecera.informacion_vendedor.condicion_IVA; cIBK.cabecera.informacion_vendedor.condicion_IVASpecified = lcIBK.comprobante[i].cabecera.informacion_vendedor.condicion_IVASpecified; cIBK.cabecera.informacion_vendedor.contacto = lcIBK.comprobante[i].cabecera.informacion_vendedor.contacto; cIBK.cabecera.informacion_vendedor.cp = lcIBK.comprobante[i].cabecera.informacion_vendedor.cp; cIBK.cabecera.informacion_vendedor.cuit = lcIBK.comprobante[i].cabecera.informacion_vendedor.cuit; cIBK.cabecera.informacion_vendedor.domicilio_calle = lcIBK.comprobante[i].cabecera.informacion_vendedor.domicilio_calle; cIBK.cabecera.informacion_vendedor.domicilio_depto = lcIBK.comprobante[i].cabecera.informacion_vendedor.domicilio_depto; cIBK.cabecera.informacion_vendedor.domicilio_manzana = lcIBK.comprobante[i].cabecera.informacion_vendedor.domicilio_manzana; cIBK.cabecera.informacion_vendedor.domicilio_numero = lcIBK.comprobante[i].cabecera.informacion_vendedor.domicilio_numero; cIBK.cabecera.informacion_vendedor.domicilio_piso = lcIBK.comprobante[i].cabecera.informacion_vendedor.domicilio_piso; cIBK.cabecera.informacion_vendedor.domicilio_sector = lcIBK.comprobante[i].cabecera.informacion_vendedor.domicilio_sector; cIBK.cabecera.informacion_vendedor.domicilio_torre = lcIBK.comprobante[i].cabecera.informacion_vendedor.domicilio_torre; cIBK.cabecera.informacion_vendedor.email = lcIBK.comprobante[i].cabecera.informacion_vendedor.email; cIBK.cabecera.informacion_vendedor.GLN = lcIBK.comprobante[i].cabecera.informacion_vendedor.GLN; cIBK.cabecera.informacion_vendedor.GLNSpecified = lcIBK.comprobante[i].cabecera.informacion_vendedor.GLNSpecified; cIBK.cabecera.informacion_vendedor.inicio_de_actividades = lcIBK.comprobante[i].cabecera.informacion_vendedor.inicio_de_actividades; cIBK.cabecera.informacion_vendedor.localidad = lcIBK.comprobante[i].cabecera.informacion_vendedor.localidad; cIBK.cabecera.informacion_vendedor.nro_ingresos_brutos = lcIBK.comprobante[i].cabecera.informacion_vendedor.nro_ingresos_brutos; cIBK.cabecera.informacion_vendedor.provincia = lcIBK.comprobante[i].cabecera.informacion_vendedor.provincia; cIBK.cabecera.informacion_vendedor.telefono = lcIBK.comprobante[i].cabecera.informacion_vendedor.telefono; //Info Comprobantes de Referencia if (lcIBK.comprobante[i].cabecera.informacion_comprobante.referencias != null) { cIBK.cabecera.informacion_comprobante.referencias = new FeaEntidades.InterFacturas.informacion_comprobanteReferencias[lcIBK.comprobante[i].cabecera.informacion_comprobante.referencias.Length]; for (int j = 0; j < lcIBK.comprobante[i].cabecera.informacion_comprobante.referencias.Length; j++) { if (lcIBK.comprobante[i].cabecera.informacion_comprobante.referencias[j] != null) { cIBK.cabecera.informacion_comprobante.referencias[j] = new FeaEntidades.InterFacturas.informacion_comprobanteReferencias(); if (lcIBK.comprobante[i].cabecera.informacion_comprobante.referencias[j].tipo_comprobante_afip == RN.IBK.informacion_comprobanteReferenciasTipo_comprobante_afip.S.ToString()) { cIBK.cabecera.informacion_comprobante.referencias[j].tipo_comprobante_afip = "S"; } else if (lcIBK.comprobante[i].cabecera.informacion_comprobante.referencias[j].tipo_comprobante_afip == RN.IBK.informacion_comprobanteReferenciasTipo_comprobante_afip.N.ToString()) { cIBK.cabecera.informacion_comprobante.referencias[j].tipo_comprobante_afip = "N"; } cIBK.cabecera.informacion_comprobante.referencias[j].codigo_de_referencia = lcIBK.comprobante[i].cabecera.informacion_comprobante.referencias[j].codigo_de_referencia; cIBK.cabecera.informacion_comprobante.referencias[j].dato_de_referencia = lcIBK.comprobante[i].cabecera.informacion_comprobante.referencias[j].dato_de_referencia; } } } //Info Informacion Adicional Comprobante if (lcIBK.comprobante[i].cabecera.informacion_comprobante.informacion_adicional_comprobante != null) { cIBK.cabecera.informacion_comprobante.informacion_adicional_comprobante = new FeaEntidades.InterFacturas.informacion_adicional_comprobante[lcIBK.comprobante[i].cabecera.informacion_comprobante.informacion_adicional_comprobante.Length]; for (int j = 0; j < lcIBK.comprobante[i].cabecera.informacion_comprobante.informacion_adicional_comprobante.Length; j++) { cIBK.cabecera.informacion_comprobante.informacion_adicional_comprobante[j] = new FeaEntidades.InterFacturas.informacion_adicional_comprobante(); cIBK.cabecera.informacion_comprobante.informacion_adicional_comprobante[j].tipo = lcIBK.comprobante[i].cabecera.informacion_comprobante.informacion_adicional_comprobante[j].tipo; cIBK.cabecera.informacion_comprobante.informacion_adicional_comprobante[j].valor = lcIBK.comprobante[i].cabecera.informacion_comprobante.informacion_adicional_comprobante[j].valor; } } //Info Exportación if (lcIBK.comprobante[i].cabecera.informacion_comprobante.informacion_exportacion != null) { cIBK.cabecera.informacion_comprobante.informacion_exportacion = new FeaEntidades.InterFacturas.informacion_exportacion(); cIBK.cabecera.informacion_comprobante.informacion_exportacion.destino_comprobante = lcIBK.comprobante[i].cabecera.informacion_comprobante.informacion_exportacion.destino_comprobante; cIBK.cabecera.informacion_comprobante.informacion_exportacion.tipo_exportacion = lcIBK.comprobante[i].cabecera.informacion_comprobante.informacion_exportacion.tipo_exportacion; cIBK.cabecera.informacion_comprobante.informacion_exportacion.id_impositivo = lcIBK.comprobante[i].cabecera.informacion_comprobante.informacion_exportacion.id_impositivo; cIBK.cabecera.informacion_comprobante.informacion_exportacion.incoterms = lcIBK.comprobante[i].cabecera.informacion_comprobante.informacion_exportacion.incoterms; cIBK.cabecera.informacion_comprobante.informacion_exportacion.descripcion_incoterms = lcIBK.comprobante[i].cabecera.informacion_comprobante.informacion_exportacion.descripcion_incoterms; if (lcIBK.comprobante[i].cabecera.informacion_comprobante.informacion_exportacion.permiso_existente != null && lcIBK.comprobante[i].cabecera.informacion_comprobante.informacion_exportacion.permiso_existente != "") { cIBK.cabecera.informacion_comprobante.informacion_exportacion.permiso_existente = lcIBK.comprobante[i].cabecera.informacion_comprobante.informacion_exportacion.permiso_existente; } if (lcIBK.comprobante[i].cabecera.informacion_comprobante.informacion_exportacion.permisos != null) { cIBK.cabecera.informacion_comprobante.informacion_exportacion.permisos = new FeaEntidades.InterFacturas.permisos[lcIBK.comprobante[i].cabecera.informacion_comprobante.informacion_exportacion.permisos.Length]; for (int j = 0; j < lcIBK.comprobante[i].cabecera.informacion_comprobante.informacion_exportacion.permisos.Length; j++) { if (lcIBK.comprobante[i].cabecera.informacion_comprobante.informacion_exportacion.permisos[j] != null) { cIBK.cabecera.informacion_comprobante.informacion_exportacion.permisos[j] = new FeaEntidades.InterFacturas.permisos(); cIBK.cabecera.informacion_comprobante.informacion_exportacion.permisos[j].id_permiso = lcIBK.comprobante[i].cabecera.informacion_comprobante.informacion_exportacion.permisos[j].id_permiso; cIBK.cabecera.informacion_comprobante.informacion_exportacion.permisos[j].destino_mercaderia = lcIBK.comprobante[i].cabecera.informacion_comprobante.informacion_exportacion.permisos[j].destino_mercaderia; } } } } //Detalle y Lineas FeaEntidades.InterFacturas.detalle d = new FeaEntidades.InterFacturas.detalle(); org.dyndns.cedweb.consulta.ConsultarResultComprobanteDetalle detalle = lcIBK.comprobante[i].detalle; d.linea = new FeaEntidades.InterFacturas.linea[detalle.linea.Length]; d.comentarios = detalle.comentarios; for (int j = 0; j < detalle.linea.Length; j++) { if (detalle.linea[j] != null) { d.linea[j] = new FeaEntidades.InterFacturas.linea(); d.linea[j].alicuota_iva = detalle.linea[j].alicuota_iva; d.linea[j].alicuota_ivaSpecified = detalle.linea[j].alicuota_ivaSpecified; d.linea[j].cantidad = detalle.linea[j].cantidad; d.linea[j].cantidadSpecified = detalle.linea[j].cantidadSpecified; d.linea[j].codigo_producto_comprador = detalle.linea[j].codigo_producto_comprador; d.linea[j].codigo_producto_vendedor = detalle.linea[j].codigo_producto_vendedor; d.linea[j].descripcion = detalle.linea[j].descripcion; d.linea[j].GTIN = detalle.linea[j].GTIN; d.linea[j].GTINSpecified = detalle.linea[j].GTINSpecified; d.linea[j].importe_iva = detalle.linea[j].importe_iva; d.linea[j].importe_ivaSpecified = detalle.linea[j].importe_ivaSpecified; d.linea[j].importe_total_articulo = detalle.linea[j].importe_total_articulo; d.linea[j].importe_total_descuentos = detalle.linea[j].importe_total_descuentos; d.linea[j].importe_total_descuentosSpecified = detalle.linea[j].importe_total_descuentosSpecified; d.linea[j].importe_total_impuestos = detalle.linea[j].importe_total_impuestos; d.linea[j].importe_total_impuestosSpecified = detalle.linea[j].importe_total_impuestosSpecified; if (detalle.linea[j].importes_moneda_origen != null) { d.linea[j].importes_moneda_origen = new FeaEntidades.InterFacturas.lineaImportes_moneda_origen(); d.linea[j].importes_moneda_origen.importe_iva = detalle.linea[j].importes_moneda_origen.importe_iva; d.linea[j].importes_moneda_origen.importe_ivaSpecified = detalle.linea[j].importes_moneda_origen.importe_ivaSpecified; d.linea[j].importes_moneda_origen.importe_total_articulo = detalle.linea[j].importes_moneda_origen.importe_total_articulo; d.linea[j].importes_moneda_origen.importe_total_articuloSpecified = detalle.linea[j].importes_moneda_origen.importe_total_articuloSpecified; d.linea[j].importes_moneda_origen.importe_total_descuentos = detalle.linea[j].importes_moneda_origen.importe_total_descuentos; d.linea[j].importes_moneda_origen.importe_total_descuentosSpecified = detalle.linea[j].importes_moneda_origen.importe_total_descuentosSpecified; d.linea[j].importes_moneda_origen.importe_total_impuestos = detalle.linea[j].importes_moneda_origen.importe_total_impuestos; d.linea[j].importes_moneda_origen.importe_total_impuestosSpecified = detalle.linea[j].importes_moneda_origen.importe_total_impuestosSpecified; d.linea[j].importes_moneda_origen.precio_unitario = detalle.linea[j].importes_moneda_origen.precio_unitario; d.linea[j].importes_moneda_origen.precio_unitarioSpecified = detalle.linea[j].importes_moneda_origen.precio_unitarioSpecified; } if (detalle.linea[j].impuestos != null) { d.linea[j].impuestos = new FeaEntidades.InterFacturas.lineaImpuestos[detalle.linea[j].impuestos.Length]; for (int k = 0; k < d.linea[j].impuestos.Length; k++) { d.linea[j].impuestos[k] = new FeaEntidades.InterFacturas.lineaImpuestos(); d.linea[j].impuestos[k].codigo_impuesto = detalle.linea[j].impuestos[k].codigo_impuesto; d.linea[j].impuestos[k].descripcion_impuesto = detalle.linea[j].impuestos[k].descripcion_impuesto; d.linea[j].impuestos[k].importe_impuesto = detalle.linea[j].impuestos[k].importe_impuesto; d.linea[j].impuestos[k].importe_impuesto_moneda_origen = detalle.linea[j].impuestos[k].importe_impuesto_moneda_origen; d.linea[j].impuestos[k].importe_impuesto_moneda_origenSpecified = detalle.linea[j].impuestos[k].importe_impuesto_moneda_origenSpecified; d.linea[j].impuestos[k].porcentaje_impuesto = detalle.linea[j].impuestos[k].porcentaje_impuesto; d.linea[j].impuestos[k].porcentaje_impuestoSpecified = detalle.linea[j].impuestos[k].porcentaje_impuestoSpecified; } } if (detalle.linea[j].descuentos != null) { d.linea[j].lineaDescuentos = new FeaEntidades.InterFacturas.lineaDescuentos[detalle.linea[j].descuentos.Length]; for (int k = 0; k < d.linea[j].lineaDescuentos.Length; k++) { d.linea[j].lineaDescuentos[k] = new FeaEntidades.InterFacturas.lineaDescuentos(); d.linea[j].lineaDescuentos[k].descripcion_descuento = detalle.linea[j].descuentos[k].descripcion_descuento; d.linea[j].lineaDescuentos[k].importe_descuento = detalle.linea[j].descuentos[k].importe_descuento; d.linea[j].lineaDescuentos[k].importe_descuento_moneda_origen = detalle.linea[j].descuentos[k].importe_descuento_moneda_origen; d.linea[j].lineaDescuentos[k].importe_descuento_moneda_origenSpecified = detalle.linea[j].descuentos[k].importe_descuento_moneda_origenSpecified; d.linea[j].lineaDescuentos[k].porcentaje_descuento = detalle.linea[j].descuentos[k].porcentaje_descuento; d.linea[j].lineaDescuentos[k].porcentaje_descuentoSpecified = detalle.linea[j].descuentos[k].porcentaje_descuentoSpecified; } } if (detalle.linea[j].informacion_adicional != null) { d.linea[j].informacion_adicional = new FeaEntidades.InterFacturas.lineaInformacion_adicional[detalle.linea[j].informacion_adicional.Length]; for (int k = 0; k < d.linea[j].informacion_adicional.Length; k++) { d.linea[j].informacion_adicional[k] = new FeaEntidades.InterFacturas.lineaInformacion_adicional(); d.linea[j].informacion_adicional[k].tipo = detalle.linea[j].informacion_adicional[k].tipo; d.linea[j].informacion_adicional[k].valor = detalle.linea[j].informacion_adicional[k].valor; } } d.linea[j].indicacion_exento_gravado = detalle.linea[j].indicacion_exento_gravado; d.linea[j].numeroLinea = detalle.linea[j].numeroLinea; d.linea[j].precio_unitario = detalle.linea[j].precio_unitario; d.linea[j].precio_unitarioSpecified = detalle.linea[j].precio_unitarioSpecified; d.linea[j].unidad = detalle.linea[j].unidad; } else { break; } } cIBK.detalle = d; //Info Extensiones cIBK.extensiones = new FeaEntidades.InterFacturas.extensiones(); cIBK.extensionesSpecified = false; if (lcIBK.comprobante[i].extensiones != null) { cIBK.extensiones = new FeaEntidades.InterFacturas.extensiones(); cIBK.extensionesSpecified = true; if (lcIBK.comprobante[i].extensiones.extensiones_camara_facturas != null) { cIBK.extensiones.extensiones_camara_facturasSpecified = true; cIBK.extensiones.extensiones_camara_facturas = new FeaEntidades.InterFacturas.extensionesExtensiones_camara_facturas(); cIBK.extensiones.extensiones_camara_facturas.clave_de_vinculacion = lcIBK.comprobante[i].extensiones.extensiones_camara_facturas.clave_de_vinculacion; cIBK.extensiones.extensiones_camara_facturas.id_idioma = lcIBK.comprobante[i].extensiones.extensiones_camara_facturas.id_idioma; cIBK.extensiones.extensiones_camara_facturas.id_template = lcIBK.comprobante[i].extensiones.extensiones_camara_facturas.id_template; } if (lcIBK.comprobante[i].extensiones.extensiones_datos_comerciales != null) { if (!lcIBK.comprobante[i].extensiones.extensiones_datos_comerciales.Equals(string.Empty)) { string aux = lcIBK.comprobante[i].extensiones.extensiones_datos_comerciales.ToString(); if (aux.Length > 0 && aux.Substring(0, 1) == "%") { aux = RN.Funciones.HexToString(aux); } cIBK.extensiones.extensiones_datos_comerciales = aux; } } if (lcIBK.comprobante[i].extensiones.extensiones_datos_marketing != null) { if (!lcIBK.comprobante[i].extensiones.extensiones_datos_marketing.Equals(string.Empty)) { string aux = lcIBK.comprobante[i].extensiones.extensiones_datos_marketing.ToString(); if (aux.Length > 0 && aux.Substring(0, 1) == "%") { aux = RN.Funciones.HexToString(aux); } cIBK.extensiones.extensiones_datos_marketing = aux; } } if (lcIBK.comprobante[i].extensiones.extensiones_destinatarios != null) { cIBK.extensiones.extensiones_destinatarios = new FeaEntidades.InterFacturas.extensionesExtensiones_destinatarios(); cIBK.extensiones.extensiones_destinatarios.email = lcIBK.comprobante[i].extensiones.extensiones_destinatarios.email; } } cIBK.resumen = new FeaEntidades.InterFacturas.resumen(); cIBK.resumen.cant_alicuotas_iva = lcIBK.comprobante[i].resumen.cant_alicuotas_iva; cIBK.resumen.cant_alicuotas_ivaSpecified = lcIBK.comprobante[i].resumen.cant_alicuotas_ivaSpecified; cIBK.resumen.codigo_moneda = lcIBK.comprobante[i].resumen.codigo_moneda; cIBK.resumen.descuentos = new FeaEntidades.InterFacturas.resumenDescuentos[0]; cIBK.resumen.cant_alicuotas_iva = lcIBK.comprobante[i].resumen.cant_alicuotas_iva; cIBK.resumen.cant_alicuotas_ivaSpecified = lcIBK.comprobante[i].resumen.cant_alicuotas_ivaSpecified; cIBK.resumen.codigo_moneda = lcIBK.comprobante[i].resumen.codigo_moneda; cIBK.resumen.importe_operaciones_exentas = lcIBK.comprobante[i].resumen.importe_operaciones_exentas; cIBK.resumen.importe_total_concepto_no_gravado = lcIBK.comprobante[i].resumen.importe_total_concepto_no_gravado; cIBK.resumen.importe_total_factura = lcIBK.comprobante[i].resumen.importe_total_factura; cIBK.resumen.importe_total_impuestos_internos = lcIBK.comprobante[i].resumen.importe_total_impuestos_internos; cIBK.resumen.importe_total_impuestos_internosSpecified = lcIBK.comprobante[i].resumen.importe_total_impuestos_internosSpecified; cIBK.resumen.importe_total_impuestos_municipales = lcIBK.comprobante[i].resumen.importe_total_impuestos_municipales; cIBK.resumen.importe_total_impuestos_municipalesSpecified = lcIBK.comprobante[i].resumen.importe_total_impuestos_municipalesSpecified; cIBK.resumen.importe_total_impuestos_nacionales = lcIBK.comprobante[i].resumen.importe_total_impuestos_nacionales; cIBK.resumen.importe_total_impuestos_nacionalesSpecified = lcIBK.comprobante[i].resumen.importe_total_impuestos_nacionalesSpecified; cIBK.resumen.importe_total_ingresos_brutos = lcIBK.comprobante[i].resumen.importe_total_ingresos_brutos; cIBK.resumen.importe_total_ingresos_brutosSpecified = lcIBK.comprobante[i].resumen.importe_total_ingresos_brutosSpecified; cIBK.resumen.importe_total_neto_gravado = lcIBK.comprobante[i].resumen.importe_total_neto_gravado; if (lcIBK.comprobante[i].resumen.importes_moneda_origen != null) { cIBK.resumen.importes_moneda_origen = new FeaEntidades.InterFacturas.resumenImportes_moneda_origen(); cIBK.resumen.importes_moneda_origen.importe_operaciones_exentas = lcIBK.comprobante[i].resumen.importes_moneda_origen.importe_operaciones_exentas; cIBK.resumen.importes_moneda_origen.importe_total_concepto_no_gravado = lcIBK.comprobante[i].resumen.importes_moneda_origen.importe_total_concepto_no_gravado; cIBK.resumen.importes_moneda_origen.importe_total_factura = lcIBK.comprobante[i].resumen.importes_moneda_origen.importe_total_factura; cIBK.resumen.importes_moneda_origen.importe_total_impuestos_internos = lcIBK.comprobante[i].resumen.importes_moneda_origen.importe_total_impuestos_internos; cIBK.resumen.importes_moneda_origen.importe_total_impuestos_internosSpecified = lcIBK.comprobante[i].resumen.importes_moneda_origen.importe_total_impuestos_internosSpecified; cIBK.resumen.importes_moneda_origen.importe_total_impuestos_municipales = lcIBK.comprobante[i].resumen.importes_moneda_origen.importe_total_impuestos_municipales; cIBK.resumen.importes_moneda_origen.importe_total_impuestos_municipalesSpecified = lcIBK.comprobante[i].resumen.importes_moneda_origen.importe_total_impuestos_municipalesSpecified; cIBK.resumen.importes_moneda_origen.importe_total_impuestos_nacionales = lcIBK.comprobante[i].resumen.importes_moneda_origen.importe_total_impuestos_nacionales; cIBK.resumen.importes_moneda_origen.importe_total_impuestos_nacionalesSpecified = lcIBK.comprobante[i].resumen.importes_moneda_origen.importe_total_impuestos_nacionalesSpecified; cIBK.resumen.importes_moneda_origen.importe_total_ingresos_brutos = lcIBK.comprobante[i].resumen.importes_moneda_origen.importe_total_ingresos_brutos; cIBK.resumen.importes_moneda_origen.importe_total_ingresos_brutosSpecified = lcIBK.comprobante[i].resumen.importes_moneda_origen.importe_total_ingresos_brutosSpecified; cIBK.resumen.importes_moneda_origen.importe_total_neto_gravado = lcIBK.comprobante[i].resumen.importes_moneda_origen.importe_total_neto_gravado; cIBK.resumen.importes_moneda_origen.impuesto_liq = lcIBK.comprobante[i].resumen.importes_moneda_origen.impuesto_liq; cIBK.resumen.importes_moneda_origen.impuesto_liq_rni = lcIBK.comprobante[i].resumen.importes_moneda_origen.impuesto_liq_rni; } cIBK.resumen.impuesto_liq = lcIBK.comprobante[i].resumen.impuesto_liq; cIBK.resumen.impuesto_liq_rni = lcIBK.comprobante[i].resumen.impuesto_liq_rni; if (lcIBK.comprobante[i].resumen.descuentos != null) { cIBK.resumen.descuentos = new FeaEntidades.InterFacturas.resumenDescuentos[lcIBK.comprobante[i].resumen.descuentos.Length]; for (int l = 0; l < lcIBK.comprobante[i].resumen.descuentos.Length; l++) { if (lcIBK.comprobante[i].resumen.descuentos[l] != null) { cIBK.resumen.descuentos[l] = new FeaEntidades.InterFacturas.resumenDescuentos(); cIBK.resumen.descuentos[l].alicuota_iva_descuento = lcIBK.comprobante[i].resumen.descuentos[l].alicuota_iva_descuento; cIBK.resumen.descuentos[l].alicuota_iva_descuentoSpecified = lcIBK.comprobante[i].resumen.descuentos[l].alicuota_iva_descuentoSpecified; cIBK.resumen.descuentos[l].descripcion_descuento = lcIBK.comprobante[i].resumen.descuentos[l].descripcion_descuento; cIBK.resumen.descuentos[l].importe_descuento = lcIBK.comprobante[i].resumen.descuentos[l].importe_descuento; cIBK.resumen.descuentos[l].importe_descuento_moneda_origen = lcIBK.comprobante[i].resumen.descuentos[l].importe_descuento_moneda_origen; cIBK.resumen.descuentos[l].importe_descuento_moneda_origenSpecified = lcIBK.comprobante[i].resumen.descuentos[l].importe_descuento_moneda_origenSpecified; cIBK.resumen.descuentos[l].importe_iva_descuento = lcIBK.comprobante[i].resumen.descuentos[l].importe_iva_descuento; cIBK.resumen.descuentos[l].importe_iva_descuento_moneda_origen = lcIBK.comprobante[i].resumen.descuentos[l].importe_iva_descuento_moneda_origen; cIBK.resumen.descuentos[l].importe_iva_descuento_moneda_origenSpecified = lcIBK.comprobante[i].resumen.descuentos[l].importe_iva_descuento_moneda_origenSpecified; cIBK.resumen.descuentos[l].importe_iva_descuentoSpecified = lcIBK.comprobante[i].resumen.descuentos[l].importe_iva_descuentoSpecified; cIBK.resumen.descuentos[l].porcentaje_descuento = lcIBK.comprobante[i].resumen.descuentos[l].porcentaje_descuento; cIBK.resumen.descuentos[l].porcentaje_descuentoSpecified = lcIBK.comprobante[i].resumen.descuentos[l].porcentaje_descuentoSpecified; cIBK.resumen.descuentos[l].indicacion_exento_gravado_descuento = lcIBK.comprobante[i].resumen.descuentos[l].indicacion_exento_gravado_descuento; } } } if (lcIBK.comprobante[i].resumen.impuestos != null) { cIBK.resumen.impuestos = new FeaEntidades.InterFacturas.resumenImpuestos[lcIBK.comprobante[i].resumen.impuestos.Length]; for (int l = 0; l < lcIBK.comprobante[i].resumen.impuestos.Length; l++) { if (lcIBK.comprobante[i].resumen.impuestos[l] != null) { cIBK.resumen.impuestos[l] = new FeaEntidades.InterFacturas.resumenImpuestos(); cIBK.resumen.impuestos[l].codigo_impuesto = lcIBK.comprobante[i].resumen.impuestos[l].codigo_impuesto; cIBK.resumen.impuestos[l].codigo_jurisdiccion = lcIBK.comprobante[i].resumen.impuestos[l].codigo_jurisdiccion; cIBK.resumen.impuestos[l].codigo_jurisdiccionSpecified = lcIBK.comprobante[i].resumen.impuestos[l].codigo_jurisdiccionSpecified; cIBK.resumen.impuestos[l].descripcion = lcIBK.comprobante[i].resumen.impuestos[l].descripcion; cIBK.resumen.impuestos[l].importe_impuesto = lcIBK.comprobante[i].resumen.impuestos[l].importe_impuesto; cIBK.resumen.impuestos[l].importe_impuesto_moneda_origen = lcIBK.comprobante[i].resumen.impuestos[l].importe_impuesto_moneda_origen; cIBK.resumen.impuestos[l].importe_impuesto_moneda_origenSpecified = lcIBK.comprobante[i].resumen.impuestos[l].importe_impuesto_moneda_origenSpecified; cIBK.resumen.impuestos[l].jurisdiccion_municipal = lcIBK.comprobante[i].resumen.impuestos[l].jurisdiccion_municipal; cIBK.resumen.impuestos[l].porcentaje_impuesto = lcIBK.comprobante[i].resumen.impuestos[l].porcentaje_impuesto; cIBK.resumen.impuestos[l].porcentaje_impuestoSpecified = lcIBK.comprobante[i].resumen.impuestos[l].porcentaje_impuestoSpecified; } } } cIBK.resumen.observaciones = lcIBK.comprobante[i].resumen.observaciones; cIBK.resumen.tipo_de_cambio = lcIBK.comprobante[i].resumen.tipo_de_cambio; lcFEA.comprobante[i] = cIBK; } return lcFEA; }
public void ConsultarN(List<eFact_I_Bj.Entidades.ComprobanteBj> Comprobantes, FeaEntidades.InterFacturas.lote_comprobantes Lc, eFact_I_Bj.RN.TableroBj.TipoConsulta TipoConsulta, DateTime FechaDsd, DateTime FechaHst, string IdTipoComprobante, string PuntoVenta, string NumeroComprobante, bool VerificarExistenciaCAE) { StringBuilder commandText = new StringBuilder(); commandText.Append("DECLARE @FechaDsd as Datetime DECLARE @FechaHst as Datetime DECLARE @NroComp as Varchar(250) "); commandText.Append("SET @FechaDsd='" + FechaDsd.ToString("yyyyMMdd") + "' "); commandText.Append("SET @FechaHst='" + FechaHst.ToString("yyyyMMdd") + "' "); if (NumeroComprobante != string.Empty) { commandText.Append("SET @NroComp='" + NumeroComprobante + "' "); } commandText.Append("select gva12.id_gva12, gva12.cod_client, gva12.cat_iva, gva12.fecha_emis, gva12.n_comp, gva12.t_comp, gva12.cotiz, gva12.importe_iv, round(gva12.importe_iv * gva12.cotiz, 6) as importe_iv_pesos, gva12.unidades, gva12.importe, round((gva12.unidades - gva12.importe_iv) * gva12.cotiz, 6) as ImpTotalNetoGravado, gva12.pto_vta, gva12.leyenda_1, gva12.leyenda_2, gva12.leyenda_3, gva12.leyenda_4, gva12.leyenda_5, gva12.MON_CTE, "); commandText.Append("gva14.c_postal, gva14.cod_provin, gva14.cuit, gva14.domicilio, gva14.localidad, gva14.nom_com, gva14.tipo_doc "); commandText.Append("from GVA12 "); commandText.Append("inner join gva14 on gva12.cod_client=gva14.cod_client "); if (NumeroComprobante != string.Empty) { commandText.Append("and gva12.n_comp like '%'+@NroComp+'%' "); } else { commandText.Append("where fecha_emis >= @FechaDsd and fecha_emis < Dateadd (Day, 1, @FechaHst) "); } commandText.Append("select gva12.id_gva12, gva12.cod_client, gva12.cat_iva, gva12.fecha_emis, gva12.n_comp, gva12.t_comp, gva12.cotiz, gva12.importe_iv, gva12.unidades, gva12.importe, "); commandText.Append("gva14.id_gva14, gva14.c_postal, gva14.cod_provin, gva14.cuit, gva14.domicilio, gva14.localidad, gva14.nom_com, gva14.tipo_doc, "); commandText.Append("gva53.cantidad, gva53.id_medida_ventas, GVA53.PRECIO_NET, round(GVA53.PRECIO_NET * gva12.cotiz, 7) as PRECIO_NET_pesos, gva53.IMP_NETO_P, round(GVA53.IMP_NETO_P * gva12.cotiz, 6) as IMP_NETO_P_pesos, GVA53.PORC_IVA, "); commandText.Append("sta11.descripcio, "); commandText.Append("medida.cod_medida "); commandText.Append("from GVA12 "); commandText.Append("inner join gva14 on gva12.cod_client=gva14.cod_client "); commandText.Append("inner join gva53 on gva53.N_comp=gva12.n_comp and gva53.t_comp=gva12.t_comp "); commandText.Append("inner join sta11 on gva53.COD_ARTICU=sta11.cod_articu "); commandText.Append("inner join medida on gva53.ID_MEDIDA_VENTAS=medida.id_medida "); if (NumeroComprobante != string.Empty) { commandText.Append("and gva12.n_comp like '%'+@NroComp+'%' "); } else { commandText.Append("where fecha_emis >= @FechaDsd and fecha_emis < Dateadd (Day, 1, @FechaHst) "); } DataSet ds = new DataSet(); ds = (DataSet)Ejecutar(commandText.ToString(), TipoRetorno.DS, Transaccion.Acepta, sesion.CnnStrAplicExterna); commandText = commandText.Remove(0, commandText.Length); commandText.Append("select * from vendedores where cuitvendedor='33709728119' "); DataTable dsTable = new DataTable(); dsTable = ((DataTable)Ejecutar(commandText.ToString(), TipoRetorno.TB, Transaccion.Acepta, sesion.CnnStr)).Copy(); dsTable.TableName = "Vendedor"; ds.Tables.Add(dsTable); ds.AcceptChanges(); commandText = commandText.Remove(0, commandText.Length); commandText.Append("select * from GVA15 "); DataTable dsTable1 = new DataTable(); dsTable1 = ((DataTable)Ejecutar(commandText.ToString(), TipoRetorno.TB, Transaccion.Acepta, sesion.CnnStrAplicExterna)).Copy(); dsTable1.TableName = "TComprobantes"; ds.Tables.Add(dsTable1); ds.AcceptChanges(); if (ds.Tables.Count == 0) { throw new Microsoft.ApplicationBlocks.ExceptionManagement.Validaciones.NoHayDatos(); } else { try { DataTable dt = ds.Tables[0]; DataTable dt2 = ds.Tables[2]; DataTable dtTComprobantes = ds.Tables[3]; //Crear "cabecera" del lote de comprobantes Lc.cabecera_lote = new FeaEntidades.InterFacturas.cabecera_lote(); Lc.cabecera_lote.cuit_canal = Convert.ToInt64(@System.Configuration.ConfigurationManager.AppSettings["CuitCanal"].ToString()); Lc.cabecera_lote.cuit_vendedor = Convert.ToInt64(dt2.Rows[0]["CuitVendedor"]); Lc.cabecera_lote.cantidad_reg = dt.Rows.Count; Lc.cabecera_lote.id_lote = Convert.ToInt64(DateTime.Now.ToString("yyyyMMddHHmmss")); Lc.cabecera_lote.fecha_envio_lote = DateTime.Now.ToString("yyyyMMdd") + " " + DateTime.Now.ToString("HHmmss"); for (int i = 0; i < dt.Rows.Count; i++) { eFact_I_Bj.Entidades.ComprobanteBj Comprobante = new eFact_I_Bj.Entidades.ComprobanteBj(); //Crear "lote_comprobantes" //FeaEntidades.InterFacturas.lote_comprobantes lc = new FeaEntidades.InterFacturas.lote_comprobantes(); //Crear "comprobante" del lote de comprobantes FeaEntidades.InterFacturas.comprobante c = new FeaEntidades.InterFacturas.comprobante(); //Crear "cabecera" del comprobante c.cabecera = new FeaEntidades.InterFacturas.cabecera(); //Crear "informacion_comprador" de la cabecera del comprobante c.cabecera.informacion_comprador = new FeaEntidades.InterFacturas.informacion_comprador(); //Crear "informacion_vendedor" de la cabecera del comprobante c.cabecera.informacion_vendedor = new FeaEntidades.InterFacturas.informacion_vendedor(); //Crear "informacion_comprobante" de la cabecera del comprobante c.cabecera.informacion_comprobante = new FeaEntidades.InterFacturas.informacion_comprobante(); //Crear "detalle" del comprobante. c.detalle = new FeaEntidades.InterFacturas.detalle(); //Crear "resumen" del comprobante. c.resumen = new FeaEntidades.InterFacturas.resumen(); Comprobante.Clave = Convert.ToInt32(dt.Rows[i]["id_gva12"]); //Comprobante.Vendedor.Codigo = dt.Rows[i]["Codigo"].ToString(); // Armar switch con cada tipo de comprobante de Tango a Cedeira string letraComprobante = dt.Rows[i]["n_comp"].ToString().Substring(0, 1); switch (dt.Rows[i]["t_comp"].ToString()) { case "FAC": if (letraComprobante == "A") { FeaEntidades.TiposDeComprobantes.Facturas.A tc = new FeaEntidades.TiposDeComprobantes.Facturas.A(); c.cabecera.informacion_comprobante.tipo_de_comprobante = tc.Codigo; Comprobante.IdTipoComprobante = tc.Codigo.ToString(); } else { FeaEntidades.TiposDeComprobantes.Facturas.B tc = new FeaEntidades.TiposDeComprobantes.Facturas.B(); c.cabecera.informacion_comprobante.tipo_de_comprobante = tc.Codigo; Comprobante.IdTipoComprobante = tc.Codigo.ToString(); } break; case "N/D": if (letraComprobante == "A") { FeaEntidades.TiposDeComprobantes.NotasDebito.A tc = new FeaEntidades.TiposDeComprobantes.NotasDebito.A(); c.cabecera.informacion_comprobante.tipo_de_comprobante = tc.Codigo; Comprobante.IdTipoComprobante = tc.Codigo.ToString(); } else { FeaEntidades.TiposDeComprobantes.NotasDebito.B tc = new FeaEntidades.TiposDeComprobantes.NotasDebito.B(); c.cabecera.informacion_comprobante.tipo_de_comprobante = tc.Codigo; Comprobante.IdTipoComprobante = tc.Codigo.ToString(); } break; case "N/C": if (letraComprobante == "A") { FeaEntidades.TiposDeComprobantes.NotasCredito.A tc = new FeaEntidades.TiposDeComprobantes.NotasCredito.A(); c.cabecera.informacion_comprobante.tipo_de_comprobante = tc.Codigo; Comprobante.IdTipoComprobante = tc.Codigo.ToString(); } else { FeaEntidades.TiposDeComprobantes.NotasCredito.B tc = new FeaEntidades.TiposDeComprobantes.NotasCredito.B(); c.cabecera.informacion_comprobante.tipo_de_comprobante = tc.Codigo; Comprobante.IdTipoComprobante = tc.Codigo.ToString(); } break; case "LIQ": if (letraComprobante == "A") { FeaEntidades.TiposDeComprobantes.Liquidacion.A tc = new FeaEntidades.TiposDeComprobantes.Liquidacion.A(); c.cabecera.informacion_comprobante.tipo_de_comprobante = tc.Codigo; Comprobante.IdTipoComprobante = tc.Codigo.ToString(); } else { FeaEntidades.TiposDeComprobantes.Liquidacion.B tc = new FeaEntidades.TiposDeComprobantes.Liquidacion.B(); c.cabecera.informacion_comprobante.tipo_de_comprobante = tc.Codigo; Comprobante.IdTipoComprobante = tc.Codigo.ToString(); } break; case "NDI": break; case "NCI": break; } FeaEntidades.InterFacturas.informacion_comprador feaEntidadinfComprador = new FeaEntidades.InterFacturas.informacion_comprador(); Comprobante.NumeroComprobante = dt.Rows[i]["n_comp"].ToString(); c.cabecera.informacion_comprobante.numero_comprobante = Convert.ToInt64(Comprobante.NumeroComprobante.Substring(5, Comprobante.NumeroComprobante.Length - 5)); Comprobante.PuntoVenta = Convert.ToInt32(Comprobante.NumeroComprobante.Substring(1, 4)); Lc.cabecera_lote.punto_de_venta = Comprobante.PuntoVenta; c.cabecera.informacion_comprobante.punto_de_venta = Comprobante.PuntoVenta; // Armar switch con cada tipo doc de Tango a Cedeira Comprobante.Comprador.TipoDoc = Convert.ToInt16(dt.Rows[i]["tipo_doc"]); feaEntidadinfComprador.codigo_doc_identificatorio = Comprobante.Comprador.TipoDoc; Comprobante.Comprador.NroDoc = dt.Rows[i]["cuit"].ToString(); feaEntidadinfComprador.nro_doc_identificatorio = Convert.ToInt64(Comprobante.Comprador.NroDoc.Replace("-", string.Empty)); feaEntidadinfComprador.codigo_interno = ""; Comprobante.Comprador.Nombre = dt.Rows[i]["nom_com"].ToString(); feaEntidadinfComprador.denominacion = Comprobante.Comprador.Nombre; feaEntidadinfComprador.denominacion = Comprobante.Comprador.Nombre; Comprobante.Comprador.DomicilioCalle = dt.Rows[i]["domicilio"].ToString(); feaEntidadinfComprador.domicilio_calle = Comprobante.Comprador.DomicilioCalle; Comprobante.Comprador.CondicionIVA = dt.Rows[i]["cat_iva"].ToString(); FeaEntidades.CondicionesIVA.ResponsableInscripto condicionIVA = new FeaEntidades.CondicionesIVA.ResponsableInscripto(); feaEntidadinfComprador.condicion_IVA = condicionIVA.Codigo; feaEntidadinfComprador.condicion_IVASpecified = true; Comprobante.Comprador.Localidad = dt.Rows[i]["localidad"].ToString(); feaEntidadinfComprador.localidad = Comprobante.Comprador.Localidad; Comprobante.Comprador.Provincia = DeterminarProvincia(Convert.ToInt16(dt.Rows[i]["cod_provin"])); feaEntidadinfComprador.provincia = Convert.ToString(Comprobante.Comprador.Provincia); Comprobante.Comprador.CP = dt.Rows[i]["c_postal"].ToString(); feaEntidadinfComprador.cp = Comprobante.Comprador.CP; //Comprobante.Comprador.Telefono = dt.Rows[i]["Comprador_telefono"].ToString(); //Comprobante.Comprador.EMail = dt.Rows[i]["Comprador_email"].ToString(); Comprobante.Fecha = Convert.ToDateTime(dt.Rows[i]["fecha_emis"]); c.cabecera.informacion_comprobante.fecha_emision = Comprobante.Fecha.ToString("yyyyMMdd"); if (!dt.Rows[i]["leyenda_1"].ToString().Equals(string.Empty)) { Comprobante.FechaVto = Convert.ToDateTime(dt.Rows[i]["leyenda_1"].ToString(), cedeiraCultura.DateTimeFormat); c.cabecera.informacion_comprobante.fecha_vencimiento = Comprobante.FechaVto.ToString("yyyyMMdd"); } else { Comprobante.FechaVto = Convert.ToDateTime("1970/05/22", cedeiraCultura.DateTimeFormat); //c.cabecera.informacion_comprobante.fecha_vencimiento = Comprobante.FechaVto.ToString("yyyyMMdd"); } //Comprobante.Importe = Convert.ToDecimal(dt.Rows[i]["importe"]); //Comprobante.ImporteNetoGravado = Convert.ToDecimal(dt.Rows[i]["PRECIO_NET"]); //Comprobante.ImporteNetoNoGravado = Convert.ToDecimal(dt.Rows[i]["importe"]); //feaEntidadComprobante.Imp_neto = Comprobante.ImporteNetoNoGravado; //Comprobante.ImporteOpsExentas = Convert.ToDecimal(dt.Rows[i]["Resumen_importe_operaciones_exentas"]); //Comprobante.ImpuestoLiq = Convert.ToDecimal(dt.Rows[i]["Resumen_impuesto_liq"]); //Comprobante.ImpuestoRNI = Convert.ToDecimal(dt.Rows[i]["Resumen_impuesto_liq_rni"]); //Comprobante.ImpuestosNacionales = Convert.ToDecimal(dt.Rows[i]["Resumen_importe_total_impuestos_nacionales"]); //Comprobante.CantAlicuotasIVA = Convert.ToInt32(dt.Rows[i]["Resumen_cant_alicuotas_iva"]); //if (dt.Rows[i]["Comprobante_cae"] != System.DBNull.Value && dt.Rows[i]["Comprobante_cae"].ToString() != "") //{ // Comprobante.NumeroCAE = dt.Rows[i]["Comprobante_cae"].ToString(); // Comprobante.FechaVtoCAE = Convert.ToDateTime(dt.Rows[i]["Comprobante_fecha_vencimiento_cae"]); //} Comprobante.Vendedor.CuitVendedor = dt2.Rows[0]["CuitVendedor"].ToString(); FeaEntidades.InterFacturas.informacion_vendedor feaEntidadInfVendedor = new FeaEntidades.InterFacturas.informacion_vendedor(); feaEntidadInfVendedor.cuit = Convert.ToInt64(Comprobante.Vendedor.CuitVendedor.Replace("-", string.Empty)); Comprobante.Vendedor.Nombre = dt2.Rows[0]["Nombre"].ToString(); feaEntidadInfVendedor.razon_social = Comprobante.Vendedor.Nombre; Comprobante.Vendedor.NumeroSerieCertificado = dt2.Rows[0]["NumeroSerieCertificado"].ToString(); //System.IO.MemoryStream memStream = new System.IO.MemoryStream(dt2.Rows[i]["Logo"]); //Byte[] logo = memStream.GetBuffer(); //Comprobante.Vendedor.Logo = dt2.Rows[i]["Logo"]; Comprobante.Vendedor.Codigo = dt2.Rows[0]["Codigo"].ToString(); feaEntidadInfVendedor.codigo_interno = Comprobante.Vendedor.Codigo; Comprobante.Vendedor.InicioActividades = Convert.ToDateTime(dt2.Rows[0]["InicioActividades"]); feaEntidadInfVendedor.inicio_de_actividades = Comprobante.Vendedor.InicioActividades.ToString("yyyyMMdd"); Comprobante.Vendedor.Contacto = dt2.Rows[0]["Contacto"].ToString(); feaEntidadInfVendedor.contacto = Comprobante.Vendedor.Contacto; Comprobante.Vendedor.DomicilioCalle = dt2.Rows[0]["DomicilioCalle"].ToString(); feaEntidadInfVendedor.domicilio_calle = Comprobante.Vendedor.DomicilioCalle; Comprobante.Vendedor.DomicilioNumero = dt2.Rows[0]["DomicilioNumero"].ToString(); feaEntidadInfVendedor.domicilio_numero = Comprobante.Vendedor.DomicilioNumero; Comprobante.Vendedor.DomicilioPiso = dt2.Rows[0]["DomicilioPiso"].ToString(); feaEntidadInfVendedor.domicilio_piso = Comprobante.Vendedor.DomicilioPiso; Comprobante.Vendedor.DomicilioDepto = dt2.Rows[0]["DomicilioDepto"].ToString(); feaEntidadInfVendedor.domicilio_depto = Comprobante.Vendedor.DomicilioDepto; Comprobante.Vendedor.DomicilioSector = dt2.Rows[0]["DomicilioSector"].ToString(); feaEntidadInfVendedor.domicilio_sector = Comprobante.Vendedor.DomicilioSector; Comprobante.Vendedor.DomicilioTorre = dt2.Rows[0]["DomicilioTorre"].ToString(); feaEntidadInfVendedor.domicilio_torre = Comprobante.Vendedor.DomicilioTorre; Comprobante.Vendedor.DomicilioManzana = dt2.Rows[0]["DomicilioManzana"].ToString(); feaEntidadInfVendedor.domicilio_manzana = Comprobante.Vendedor.DomicilioManzana; Comprobante.Vendedor.CondicionIVA = Convert.ToInt32(dt2.Rows[0]["CondicionIVA"]); feaEntidadInfVendedor.condicion_IVA = Comprobante.Vendedor.CondicionIVA; feaEntidadInfVendedor.condicion_IVASpecified = true; Comprobante.Vendedor.CondicionIB = Convert.ToInt32(dt2.Rows[0]["CondicionIB"]); feaEntidadInfVendedor.condicion_ingresos_brutos = Comprobante.Vendedor.CondicionIB; feaEntidadInfVendedor.condicion_ingresos_brutosSpecified = true; Comprobante.Vendedor.NroIB = dt2.Rows[0]["NroIB"].ToString(); feaEntidadInfVendedor.nro_ingresos_brutos = Comprobante.Vendedor.NroIB; Comprobante.Vendedor.Localidad = dt2.Rows[0]["Localidad"].ToString(); feaEntidadInfVendedor.localidad = Comprobante.Vendedor.Localidad; Comprobante.Vendedor.Provincia = DeterminarProvincia(Convert.ToInt16(dt2.Rows[0]["Provincia"])).ToString(); feaEntidadInfVendedor.provincia = Comprobante.Vendedor.Provincia; Comprobante.Vendedor.CP = dt2.Rows[0]["CP"].ToString(); feaEntidadInfVendedor.cp = Comprobante.Vendedor.CP; Comprobante.Vendedor.Telefono = dt2.Rows[0]["Telefono"].ToString(); feaEntidadInfVendedor.telefono = Comprobante.Vendedor.Telefono; Comprobante.Vendedor.EMail = dt2.Rows[0]["EMail"].ToString(); feaEntidadInfVendedor.email = Comprobante.Vendedor.EMail; c.cabecera.informacion_comprador = feaEntidadinfComprador; c.cabecera.informacion_vendedor = feaEntidadInfVendedor; c.resumen.tipo_de_cambio = Convert.ToDouble(dt.Rows[i]["cotiz"]); Comprobante.TipoDeCambio = Convert.ToDouble(dt.Rows[i]["cotiz"]); c.resumen.importe_total_factura = Math.Round(Convert.ToDouble(dt.Rows[i]["importe"]), 2); c.resumen.impuesto_liq = Math.Round(Convert.ToDouble(dt.Rows[i]["importe_iv_pesos"]), 2); if (c.resumen.impuesto_liq != 0) { c.resumen.importe_total_neto_gravado = Math.Round(Convert.ToDouble(dt.Rows[i]["ImpTotalNetoGravado"]), 2); } else { c.resumen.importe_total_concepto_no_gravado = Math.Round(Convert.ToDouble(dt.Rows[i]["ImpTotalNetoGravado"]), 2); } //Guardar Leyendas List<string> leyendas = new List<string>(); leyendas.Add(dt.Rows[i]["leyenda_1"].ToString()); leyendas.Add(dt.Rows[i]["leyenda_2"].ToString()); leyendas.Add(dt.Rows[i]["leyenda_3"].ToString()); leyendas.Add(dt.Rows[i]["leyenda_4"].ToString()); leyendas.Add(dt.Rows[i]["leyenda_5"].ToString()); Comprobante.Leyendas = leyendas; //List<FeaEntidades.CodigosMoneda.CodigoMoneda> listaCodMoneda = FeaEntidades.CodigosMoneda.CodigoMoneda.Lista(); if (!Convert.ToBoolean(dt.Rows[i]["MON_CTE"])) { c.resumen.codigo_moneda = "DOL"; Comprobante.IdMoneda = "DOL"; c.resumen.importes_moneda_origen = new FeaEntidades.InterFacturas.resumenImportes_moneda_origen(); c.resumen.importes_moneda_origen.impuesto_liq = Math.Round(Convert.ToDouble(dt.Rows[i]["importe_iv"]), 2); c.resumen.importes_moneda_origen.importe_total_factura = Math.Round(Convert.ToDouble(dt.Rows[i]["unidades"]), 2); if (c.resumen.importes_moneda_origen.impuesto_liq != 0) { c.resumen.importes_moneda_origen.importe_total_neto_gravado = Math.Round(c.resumen.importes_moneda_origen.importe_total_factura - c.resumen.importes_moneda_origen.impuesto_liq, 2); } else { c.resumen.importes_moneda_origen.importe_total_concepto_no_gravado = Math.Round(c.resumen.importes_moneda_origen.importe_total_factura - c.resumen.importes_moneda_origen.impuesto_liq, 2); } Comprobante.Importe = Math.Round(Convert.ToDecimal(dt.Rows[i]["unidades"]), 2); } else { c.resumen.codigo_moneda = "PES"; Comprobante.IdMoneda = "PES"; Comprobante.Importe = Math.Round(Convert.ToDecimal(dt.Rows[i]["importe"]), 2); } FeaEntidades.InterFacturas.lineas feaEntidadLineas = new FeaEntidades.InterFacturas.lineas(); DataRow[] drDetDesc = ds.Tables[1].Select("id_gva12 = " + Comprobante.Clave); List<double> iva = new List<double>(); List<double> ivaMonedaOrigen = new List<double>(); iva.Add(0); iva.Add(0); ivaMonedaOrigen.Add(0); ivaMonedaOrigen.Add(0); double porcIVA = 0; for (int j = 0; j < drDetDesc.Length; j++) { eFact_I_Bj.Entidades.ComprobanteBjLinea linea = new eFact_I_Bj.Entidades.ComprobanteBjLinea(); FeaEntidades.InterFacturas.linea lineaFEA = new FeaEntidades.InterFacturas.linea(); DataRow dr = drDetDesc[j]; linea.Clave = Convert.ToInt32(Comprobante.Clave); linea.Descripcion = dr["descripcio"].ToString(); lineaFEA.numeroLinea = j + 1; lineaFEA.descripcion = linea.Descripcion; linea.Cantidad = Convert.ToDecimal(dr["cantidad"]); lineaFEA.cantidad = Convert.ToDouble(linea.Cantidad); lineaFEA.cantidadSpecified = true; linea.Precio_unitario = Convert.ToDecimal(dr["precio_net_pesos"]); lineaFEA.precio_unitario = Math.Round(Convert.ToDouble(dr["precio_net_pesos"]), 6); lineaFEA.precio_unitarioSpecified = true; linea.Alicuota_iva = Convert.ToDecimal(dr["porc_iva"]); lineaFEA.alicuota_iva = Convert.ToDouble(linea.Alicuota_iva); lineaFEA.alicuota_ivaSpecified = true; linea.Importe_total_articulo = Convert.ToDecimal(dr["IMP_NETO_P_pesos"]); lineaFEA.importe_total_articulo = Math.Round(Convert.ToDouble(dr["IMP_NETO_P_pesos"]), 3); lineaFEA.importe_iva = Math.Round(lineaFEA.importe_total_articulo * (lineaFEA.alicuota_iva / 100), 2); lineaFEA.importe_ivaSpecified = true; linea.Importe_iva = Convert.ToDecimal(lineaFEA.importe_iva); //linea.Indicacion_exento_gravado = dr[0]["Linea_indicacion_exento_gravado"].ToString(); //linea.Importe_total_descuentos = Convert.ToDecimal(dr[0]["Linea_importe_total_descuentos"]); //linea.Importe_total_impuestos = Convert.ToDecimal(dr[0]["Linea_Importe_total_impuestos"]); if (lineaFEA.alicuota_iva != 0) { if (lineaFEA.alicuota_iva == 21) { iva[0] = iva[0] + lineaFEA.importe_iva; } if (lineaFEA.alicuota_iva == 27) { iva[1] = iva[1] + lineaFEA.importe_iva; } porcIVA = lineaFEA.alicuota_iva; } if (c.resumen.codigo_moneda == "DOL") { lineaFEA.importes_moneda_origen = new FeaEntidades.InterFacturas.lineaImportes_moneda_origen(); lineaFEA.importes_moneda_origen.importe_total_articulo = Math.Round(Convert.ToDouble(dr["IMP_NETO_P"]), 3); lineaFEA.importes_moneda_origen.importe_total_articuloSpecified = true; lineaFEA.importes_moneda_origen.importe_iva = Math.Round(lineaFEA.importes_moneda_origen.importe_total_articulo * (lineaFEA.alicuota_iva / 100), 2); lineaFEA.importes_moneda_origen.importe_ivaSpecified = true; lineaFEA.importes_moneda_origen.precio_unitario = Math.Round(Convert.ToDouble(dr["PRECIO_NET"]), 6); lineaFEA.importes_moneda_origen.precio_unitarioSpecified = true; if (lineaFEA.alicuota_iva != 0) { if (lineaFEA.alicuota_iva == 21) { ivaMonedaOrigen[0] = ivaMonedaOrigen[0] + lineaFEA.importes_moneda_origen.importe_iva; } if (lineaFEA.alicuota_iva == 27) { ivaMonedaOrigen[1] = ivaMonedaOrigen[1] + lineaFEA.importes_moneda_origen.importe_iva; } porcIVA = lineaFEA.alicuota_iva; } } Comprobante.Lineas.Add(linea); c.detalle.linea[j] = lineaFEA; } c.resumen.impuestos = new FeaEntidades.InterFacturas.resumenImpuestos[10]; if (iva[0] != 0) { FeaEntidades.InterFacturas.resumenImpuestos imp = new FeaEntidades.InterFacturas.resumenImpuestos(); imp.codigo_impuesto = 1; imp.descripcion = "IVA"; imp.porcentaje_impuesto = Convert.ToDouble(21); imp.porcentaje_impuestoSpecified = true; imp.importe_impuesto = Math.Round(iva[0], 2); if (c.resumen.codigo_moneda == "DOL") { imp.importe_impuesto_moneda_origen = Math.Round(ivaMonedaOrigen[0],2); imp.importe_impuesto_moneda_origenSpecified = true; } c.resumen.impuestos[0] = imp; } if (iva[1] != 0) { FeaEntidades.InterFacturas.resumenImpuestos imp = new FeaEntidades.InterFacturas.resumenImpuestos(); imp.codigo_impuesto = 1; imp.descripcion = "IVA"; imp.porcentaje_impuesto = Convert.ToDouble(27); imp.porcentaje_impuestoSpecified = true; imp.importe_impuesto = Math.Round(iva[1],2); if (c.resumen.codigo_moneda == "DOL") { imp.importe_impuesto_moneda_origen = Math.Round(ivaMonedaOrigen[1],2); imp.importe_impuesto_moneda_origenSpecified = true; } c.resumen.impuestos[1] = imp; } Comprobantes.Add(Comprobante); Lc.comprobante[i] = c; } } catch { } } }
private void ExcelButton_Click(object sender, EventArgs e) { OpenFileDialog xlsOpenFileDialog = new OpenFileDialog(); xlsOpenFileDialog.Filter = "Archivos Excel (*.xls)|*.xls|Todos los archivos (*.*)|*.*"; xlsOpenFileDialog.Multiselect = false; xlsOpenFileDialog.FilterIndex = 1; xlsOpenFileDialog.RestoreDirectory = true; if (xlsOpenFileDialog.ShowDialog() == DialogResult.OK) { try { string archivo = xlsOpenFileDialog.FileName; FeaEntidades.InterFacturas.lote_comprobantes lote = new FeaEntidades.InterFacturas.lote_comprobantes(); FeaEntidades.InterFacturas.cabecera compcab = new FeaEntidades.InterFacturas.cabecera(); FeaEntidades.InterFacturas.comprobante comp = new FeaEntidades.InterFacturas.comprobante(); comp.cabecera = compcab; lote.comprobante[0] = comp; List<FeaEntidades.Excel.Ubicador> lista = FeaEntidades.Excel.Ubicador.Lista(); foreach (FeaEntidades.Excel.Ubicador u in lista) { FileHelpers.DataLink.ExcelStorage provider = new FileHelpers.DataLink.ExcelStorage(u.GetType()); provider.StartRow = u.X; provider.StartColumn = u.Y; provider.FileName = @archivo; provider.SheetName = "XML"; Object[] oArray = (Object[])System.Array.CreateInstance(u.GetType(), 10); oArray = (Object[])provider.ExtractRecords(); foreach (Object o in oArray) { FileHelpers.DataLink.ExcelStorage providerInterno = new FileHelpers.DataLink.ExcelStorage(System.Type.GetType("FeaEntidades.InterFacturas." + ((FeaEntidades.Excel.Ubicador)o).Tipo + ", FeaEntidades")); providerInterno.StartRow = ((FeaEntidades.Excel.Ubicador)o).Y; providerInterno.StartColumn = ((FeaEntidades.Excel.Ubicador)o).X; providerInterno.FileName = @archivo; providerInterno.SheetName = "XML"; Object[] oArrayInterno = (Object[])System.Array.CreateInstance(System.Type.GetType("FeaEntidades.InterFacturas." + ((FeaEntidades.Excel.Ubicador)o).Tipo + ", FeaEntidades"), 10); oArrayInterno = (Object[])providerInterno.ExtractRecords(); if (oArrayInterno.Length > 0) { switch (oArrayInterno.GetType().ToString()) { case "FeaEntidades.InterFacturas.cabecera_lote[]": lote.cabecera_lote = (FeaEntidades.InterFacturas.cabecera_lote)oArrayInterno[0]; break; case "FeaEntidades.InterFacturas.informacion_comprador[]": compcab.informacion_comprador = (FeaEntidades.InterFacturas.informacion_comprador)oArrayInterno[0]; break; case "FeaEntidades.InterFacturas.informacion_comprobante[]": compcab.informacion_comprobante = (FeaEntidades.InterFacturas.informacion_comprobante)oArrayInterno[0]; break; case "FeaEntidades.InterFacturas.informacion_comprobanteReferencias[]": compcab.informacion_comprobante.referencias = (FeaEntidades.InterFacturas.informacion_comprobanteReferencias[])oArrayInterno; break; case "FeaEntidades.InterFacturas.informacion_vendedor[]": compcab.informacion_vendedor = (FeaEntidades.InterFacturas.informacion_vendedor)oArrayInterno[0]; break; case "FeaEntidades.InterFacturas.detalle[]": comp.detalle = (FeaEntidades.InterFacturas.detalle)oArrayInterno[0]; break; case "FeaEntidades.InterFacturas.linea[]": comp.detalle.linea = (FeaEntidades.InterFacturas.linea[])oArrayInterno; break; case "FeaEntidades.InterFacturas.lineaImportes_moneda_origen[]": break; case "FeaEntidades.InterFacturas.lineaImpuestos[]": break; case "FeaEntidades.InterFacturas.lineaDescuentos[]": break; case "FeaEntidades.InterFacturas.resumen[]": comp.resumen = (FeaEntidades.InterFacturas.resumen)oArrayInterno[0]; break; case "FeaEntidades.InterFacturas.resumenDescuentos[]": comp.resumen.descuentos = (FeaEntidades.InterFacturas.resumenDescuentos[])oArrayInterno; break; case "FeaEntidades.InterFacturas.resumenImportes_moneda_origen[]": break; case "FeaEntidades.InterFacturas.resumenImpuestos[]": FeaEntidades.InterFacturas.resumenImpuestos[] impLista = ((FeaEntidades.InterFacturas.resumenImpuestos[])oArrayInterno); FeaEntidades.InterFacturas.resumenImpuestos[] impNewLista = new FeaEntidades.InterFacturas.resumenImpuestos[10]; for (int im = 0; im < impLista.Length; im++) { if (impLista[im].importe_impuesto != 0) { impNewLista[im] = impLista[im]; } } comp.resumen.impuestos = impNewLista; break; } } } } System.Xml.Serialization.XmlSerializer x = new System.Xml.Serialization.XmlSerializer(lote.GetType()); System.Text.StringBuilder sb = new System.Text.StringBuilder(); if (d != null) { sb.Append(@d); sb.Append(System.IO.Path.DirectorySeparatorChar); } else { throw new Exception("Debe elegir un directorio primero"); } sb.Append(lote.cabecera_lote.cuit_vendedor); sb.Append("-"); sb.Append(lote.cabecera_lote.punto_de_venta.ToString("0000")); sb.Append("-"); sb.Append(lote.comprobante[0].cabecera.informacion_comprobante.tipo_de_comprobante.ToString("00")); sb.Append("-"); sb.Append(lote.comprobante[0].cabecera.informacion_comprobante.numero_comprobante.ToString("00000000")); sb.Append(".xml"); System.IO.Stream fs = new System.IO.FileStream(sb.ToString(), System.IO.FileMode.Create); System.Xml.XmlWriter writer = new System.Xml.XmlTextWriter(fs, System.Text.Encoding.GetEncoding("ISO-8859-1")); x.Serialize(writer, lote); fs.Close(); System.Diagnostics.Process.Start(sb.ToString()); } catch(NullReferenceException) { try { throw new Exception("El archivo seleccionado no está generado desde el template excel"); } catch (Exception exc) { Microsoft.ApplicationBlocks.ExceptionManagement.ExceptionManager.Publish(exc); } } catch (Exception ex) { Microsoft.ApplicationBlocks.ExceptionManagement.ExceptionManager.Publish(ex); } } }
private void Completar_lote_comprobantes(FeaEntidades.InterFacturas.lote_comprobantes lc) { //Crear "cabecera" del lote de comprobantes lc.cabecera_lote = new FeaEntidades.InterFacturas.cabecera_lote(); lc.cabecera_lote.cuit_canal = Convert.ToInt64("30690783521"); lc.cabecera_lote.cuit_vendedor = Convert.ToInt64(CuitTextBox.Text); lc.cabecera_lote.punto_de_venta = Convert.ToInt32(PuntoVentaTextBox.Text); lc.cabecera_lote.id_lote = Convert.ToInt64(NumeroLoteTextBox.Text); lc.cabecera_lote.presta_serv = 0; lc.cabecera_lote.presta_servSpecified = false; //Cantidad de comprobantes por lote. lc.cabecera_lote.cantidad_reg = 1; //Crear "comprobante" del lote de comprobantes FeaEntidades.InterFacturas.comprobante c = new FeaEntidades.InterFacturas.comprobante(); //Crear "cabecera" del comprobante c.cabecera = new FeaEntidades.InterFacturas.cabecera(); ////Crear "informacion_comprador" de la cabecera del comprobante c.cabecera.informacion_comprador = new FeaEntidades.InterFacturas.informacion_comprador(); c.cabecera.informacion_comprador.codigo_doc_identificatorio = 80; c.cabecera.informacion_comprador.nro_doc_identificatorio = Convert.ToInt64("30561748140"); c.cabecera.informacion_comprador.condicion_IVA = 1; c.cabecera.informacion_comprador.domicilio_calle = "Av.Corrientes"; c.cabecera.informacion_comprador.domicilio_numero = "1ºA"; c.cabecera.informacion_comprador.telefono = "2134-2323 / 29"; ////Crear "informacion_vendedor" de la cabecera del comprobante c.cabecera.informacion_vendedor = new FeaEntidades.InterFacturas.informacion_vendedor(); c.cabecera.informacion_vendedor.razon_social = "Syspro Consulting"; c.cabecera.informacion_vendedor.cuit = Convert.ToInt64(CuitTextBox.Text); c.cabecera.informacion_vendedor.condicion_IVA = 1; c.cabecera.informacion_vendedor.domicilio_calle = "Av.Córdoba"; c.cabecera.informacion_vendedor.domicilio_numero = "7ºG"; c.cabecera.informacion_vendedor.telefono = "4235-2323"; c.cabecera.informacion_vendedor.cp = "1425"; ////Crear "informacion_comprobante" de la cabecera del comprobante c.cabecera.informacion_comprobante = new FeaEntidades.InterFacturas.informacion_comprobante(); c.cabecera.informacion_comprobante.tipo_de_comprobante = 1; // --- Otra forma de asignar el codigo de tipo de comprobante utilizando la clase. --- FeaEntidades.TiposDeComprobantes.Facturas.A tc = new FeaEntidades.TiposDeComprobantes.Facturas.A(); c.cabecera.informacion_comprobante.tipo_de_comprobante = tc.Codigo; // ----------------------------------------------------------------------------------- c.cabecera.informacion_comprobante.numero_comprobante = Convert.ToInt32(NroComprobanteTextBox.Text); ; c.cabecera.informacion_comprobante.punto_de_venta = Convert.ToInt32(PuntoVentaTextBox.Text); c.cabecera.informacion_comprobante.fecha_emision = FechaEmisionDateTimePicker.Value.ToString("yyyyMMdd"); //Formato: yyyyMMdd c.cabecera.informacion_comprobante.fecha_vencimiento = FechaVtoDateTimePicker.Value.ToString("yyyyMMdd"); //Formato: yyyyMMdd //Si es un comprobante de servicios c.cabecera.informacion_comprobante.fecha_serv_desde = ""; c.cabecera.informacion_comprobante.fecha_serv_hasta = ""; //Crear "detalle" del comprobante. c.detalle = new FeaEntidades.InterFacturas.detalle(); //Informar "comentarios" del comprobante. //Es un texto libre que se imprime antes del detalle ( los renglones ) del comprobante. c.detalle.comentarios = "xxxxxxx xxxxx xxx xxxxxxxx."; //Crear "linea" del detalle del comprobante. FeaEntidades.InterFacturas.linea linea = new FeaEntidades.InterFacturas.linea(); linea.numeroLinea = 1; linea.descripcion = "Nombre del producto"; linea.precio_unitario = 100; linea.cantidad = 3; linea.alicuota_iva = 21; linea.importe_iva = 63; // = 100 * 3 * .21 linea.importe_total_articulo = 363; // Otra forma de asignar el valor del IVA.; FeaEntidades.IVA.Veintiuno iva = new FeaEntidades.IVA.Veintiuno(); linea.alicuota_iva = iva.Codigo; // ----------------------------------------------------- linea.unidad = "5"; //5 = Litros // --- Otra forma de asignar la unidad. La clase FeaEntidades expone listas para el armado de combos de algunos campos. //No es necesario utilizarla. List<FeaEntidades.CodigosUnidad.CodigoUnidad> listaUnidades = FeaEntidades.CodigosUnidad.CodigoUnidad.Lista(); FeaEntidades.CodigosUnidad.CodigoUnidad codigoUnidad = listaUnidades[5]; linea.unidad = codigoUnidad.Codigo.ToString(); FeaEntidades.CodigosUnidad.Litros unidad = new FeaEntidades.CodigosUnidad.Litros(); linea.unidad = unidad.Codigo.ToString(); // ----------------------------------------------------------------------------------- c.detalle.linea[0] = linea; //Crear "resumen" del comprobante. c.resumen = new FeaEntidades.InterFacturas.resumen(); //Es un comentario en el area de resumen del comprobante impreso. c.resumen.observaciones = "xxxxxx xxxxx xxxx xxxx xxxx"; c.resumen.importe_total_neto_gravado = 300; c.resumen.cant_alicuotas_iva = 1; c.resumen.impuesto_liq = 63; c.resumen.importe_total_factura = 363; // 1 para facturas en pesos. c.resumen.tipo_de_cambio = 1; FeaEntidades.CodigosMoneda.PesosArgentinos moneda = new FeaEntidades.CodigosMoneda.PesosArgentinos(); c.resumen.codigo_moneda = moneda.Codigo; //Asignar objeto comprobante dentro del lote de camprobantes. lc.comprobante[0] = c; }
private FeaEntidades.InterFacturas.lote_comprobantes GenerarLote() { FeaEntidades.InterFacturas.lote_comprobantes lote = new FeaEntidades.InterFacturas.lote_comprobantes(); FeaEntidades.InterFacturas.comprobante comp = new FeaEntidades.InterFacturas.comprobante(); FeaEntidades.InterFacturas.cabecera_lote cab = new FeaEntidades.InterFacturas.cabecera_lote(); cab.cantidad_reg = 1; cab.cuit_canal = Convert.ToInt64(Cuit_CanalTextBox.Text); cab.cuit_vendedor = Convert.ToInt64(Cuit_VendedorTextBox.Text); cab.id_lote = Convert.ToInt64(Id_LoteTextbox.Text); GenerarPrestaServicio(cab); cab.punto_de_venta = Convert.ToInt32(Punto_VentaTextBox.Text); lote.cabecera_lote = cab; FeaEntidades.InterFacturas.cabecera compcab = new FeaEntidades.InterFacturas.cabecera(); FeaEntidades.InterFacturas.informacion_comprador infcompra = new FeaEntidades.InterFacturas.informacion_comprador(); if (!MonedaComprobanteDropDownList.SelectedValue.Equals(FeaEntidades.CodigosMoneda.CodigoMoneda.Local)) { Tipo_de_cambioLabel.Visible = true; Tipo_de_cambioTextBox.Visible = true; Tipo_de_cambioRequiredFieldValidator.Enabled = true; Tipo_de_cambioRegularExpressionValidator.Enabled = true; } else { Tipo_de_cambioLabel.Visible = false; Tipo_de_cambioTextBox.Visible = false; Tipo_de_cambioTextBox.Text = null; Tipo_de_cambioRequiredFieldValidator.Enabled = false; Tipo_de_cambioRegularExpressionValidator.Enabled = false; } GenerarInfoComprador(compcab, infcompra); FeaEntidades.InterFacturas.informacion_comprobante infcomprob = GenerarInfoComprobante(); GenerarReferencias(infcomprob); GenerarInfoExportacion(comp, infcomprob); GenerarInfoExtensionesComerciales(comp); GenerarInfoExtensionesCamaraFacturas(comp); GenerarInfoExtensionesDestinatarios(comp); compcab.informacion_comprobante = infcomprob; GenerarInfoVendedor(compcab); comp.cabecera = compcab; int auxPV = Convert.ToInt32(((TextBox)Punto_VentaTextBox).Text); string idtipo; try { idtipo = ((CedWebEntidades.Sesion)Session["Sesion"]).Cuenta.Vendedor.PuntosDeVenta.Find(delegate(CedWebEntidades.PuntoDeVenta pv) { return pv.Id == auxPV; }).IdTipo; } catch (NullReferenceException) { idtipo = "Comun"; } FeaEntidades.InterFacturas.detalle det = DetalleLinea.GenerarDetalles(MonedaComprobanteDropDownList.SelectedValue, Tipo_de_cambioTextBox.Text, idtipo, Tipo_De_ComprobanteDropDownList.SelectedValue); det.comentarios = ComentariosTextBox.Text; comp.detalle = det; FeaEntidades.InterFacturas.resumen r = new FeaEntidades.InterFacturas.resumen(); if (Tipo_de_cambioTextBox.Text != string.Empty) { r.tipo_de_cambio = Convert.ToDouble(Tipo_de_cambioTextBox.Text); } else { r.tipo_de_cambio = 1; } r.codigo_moneda = MonedaComprobanteDropDownList.SelectedValue; if (MonedaComprobanteDropDownList.SelectedValue.Equals(FeaEntidades.CodigosMoneda.CodigoMoneda.Local)) //Moneda local { GenerarImportesMonedaLocal(r); } else //Moneda extranjera { GenerarImportesMonedaExtranjera(r); } r.observaciones = Observaciones_ResumenTextBox.Text; comp.resumen = r; System.Collections.Generic.List<FeaEntidades.InterFacturas.resumenImpuestos> listadeimpuestos = ImpuestosGlobales.Lista; if (CedWebRN.Fun.EstaLogueadoUnUsuarioPremium((CedWebEntidades.Sesion)Session["Sesion"])) { auxPV = Convert.ToInt32(((TextBox)Punto_VentaTextBox).Text); try { idtipo = ((CedWebEntidades.Sesion)Session["Sesion"]).Cuenta.Vendedor.PuntosDeVenta.Find(delegate(CedWebEntidades.PuntoDeVenta pv) { return pv.Id == auxPV; }).IdTipo; if (idtipo.Equals("Export")) { if (listadeimpuestos[0].importe_impuesto != 0 || listadeimpuestos.Count > 1) { ImpuestosGlobales.Focus(); throw new Exception("Los impuestos globales no se deben informar para exportación"); } } else { ImpuestosGlobales.GenerarImpuestos(comp, MonedaComprobanteDropDownList.SelectedValue, Tipo_de_cambioTextBox.Text ); } } catch (System.NullReferenceException) { ImpuestosGlobales.GenerarImpuestos(comp, MonedaComprobanteDropDownList.SelectedValue, Tipo_de_cambioTextBox.Text); } } else { ImpuestosGlobales.GenerarImpuestos(comp, MonedaComprobanteDropDownList.SelectedValue, Tipo_de_cambioTextBox.Text); } DescuentosGlobales.GenerarResumen(comp, MonedaComprobanteDropDownList.SelectedValue, Tipo_de_cambioTextBox.Text); lote.comprobante[0] = comp; return lote; }
private void LeerFormatoDetalleIBK(EventArgs e, FeaEntidades.InterFacturas.lote_comprobantes lc, System.IO.MemoryStream ms) { //Formato detalle_factura IBK ms.Seek(0, System.IO.SeekOrigin.Begin); FeaEntidades.InterFacturas.comprobante c = new FeaEntidades.InterFacturas.comprobante(); System.Xml.Serialization.XmlSerializer x = new System.Xml.Serialization.XmlSerializer(c.GetType()); c = (FeaEntidades.InterFacturas.comprobante)x.Deserialize(ms); FeaEntidades.InterFacturas.comprobante[] cArray = new FeaEntidades.InterFacturas.comprobante[1]; cArray[0] = c; lc.comprobante = cArray; CompletarUI(lc, e); ClientScript.RegisterStartupScript(GetType(), "Message", "<SCRIPT LANGUAGE='javascript'>alert('Datos del comprobante correctamente cargados desde el archivo de formato detalle_factura.xml');</script>"); }
private FeaEntidades.InterFacturas.comprobante IBKP2Fea(CedWebRN.IBKP.comprobante cIBK) { //Crear FEA comprobante FeaEntidades.InterFacturas.comprobante cFEA = new FeaEntidades.InterFacturas.comprobante(); cFEA.cabecera = new FeaEntidades.InterFacturas.cabecera(); //Comprador cFEA.cabecera.informacion_comprador = new FeaEntidades.InterFacturas.informacion_comprador(); cFEA.cabecera.informacion_comprador.codigo_doc_identificatorio = cIBK.cabecera.informacion_comprador.codigo_doc_identificatorio; cFEA.cabecera.informacion_comprador.codigo_interno = cIBK.cabecera.informacion_comprador.codigo_interno; cFEA.cabecera.informacion_comprador.condicion_ingresos_brutos = cIBK.cabecera.informacion_comprador.condicion_ingresos_brutos; cFEA.cabecera.informacion_comprador.condicion_ingresos_brutosSpecified = cIBK.cabecera.informacion_comprador.condicion_ingresos_brutosSpecified; cFEA.cabecera.informacion_comprador.condicion_IVA = cIBK.cabecera.informacion_comprador.condicion_IVA; cFEA.cabecera.informacion_comprador.condicion_IVASpecified = cIBK.cabecera.informacion_comprador.condicion_IVASpecified; cFEA.cabecera.informacion_comprador.contacto = cIBK.cabecera.informacion_comprador.contacto; cFEA.cabecera.informacion_comprador.cp = cIBK.cabecera.informacion_comprador.cp; cFEA.cabecera.informacion_comprador.denominacion = cIBK.cabecera.informacion_comprador.denominacion; cFEA.cabecera.informacion_comprador.domicilio_calle = cIBK.cabecera.informacion_comprador.domicilio_calle; cFEA.cabecera.informacion_comprador.domicilio_depto = cIBK.cabecera.informacion_comprador.domicilio_depto; cFEA.cabecera.informacion_comprador.domicilio_manzana = cIBK.cabecera.informacion_comprador.domicilio_manzana; cFEA.cabecera.informacion_comprador.domicilio_numero = cIBK.cabecera.informacion_comprador.domicilio_numero; cFEA.cabecera.informacion_comprador.domicilio_piso = cIBK.cabecera.informacion_comprador.domicilio_piso; cFEA.cabecera.informacion_comprador.domicilio_sector = cIBK.cabecera.informacion_comprador.domicilio_sector; cFEA.cabecera.informacion_comprador.domicilio_torre = cIBK.cabecera.informacion_comprador.domicilio_torre; cFEA.cabecera.informacion_comprador.email = cIBK.cabecera.informacion_comprador.email; cFEA.cabecera.informacion_comprador.GLN = cIBK.cabecera.informacion_comprador.GLN; cFEA.cabecera.informacion_comprador.GLNSpecified = cIBK.cabecera.informacion_comprador.GLNSpecified; cFEA.cabecera.informacion_comprador.inicio_de_actividades = cIBK.cabecera.informacion_comprador.inicio_de_actividades; cFEA.cabecera.informacion_comprador.localidad = cIBK.cabecera.informacion_comprador.localidad; cFEA.cabecera.informacion_comprador.nro_doc_identificatorio = cIBK.cabecera.informacion_comprador.nro_doc_identificatorio; cFEA.cabecera.informacion_comprador.nro_ingresos_brutos = cIBK.cabecera.informacion_comprador.nro_ingresos_brutos; cFEA.cabecera.informacion_comprador.provincia = cIBK.cabecera.informacion_comprador.provincia; cFEA.cabecera.informacion_comprador.telefono = cIBK.cabecera.informacion_comprador.telefono; //Info Comprobante cFEA.cabecera.informacion_comprobante = new FeaEntidades.InterFacturas.informacion_comprobante(); cFEA.cabecera.informacion_comprobante.cae = cIBK.cabecera.informacion_comprobante.cae; cFEA.cabecera.informacion_comprobante.caeSpecified = false; if (cIBK.cabecera.informacion_comprobante.cae != null && cIBK.cabecera.informacion_comprobante.cae != "") { cFEA.cabecera.informacion_comprobante.caeSpecified = true; } cFEA.cabecera.informacion_comprobante.codigo_operacion = cIBK.cabecera.informacion_comprobante.codigo_operacion; cFEA.cabecera.informacion_comprobante.condicion_de_pago = cIBK.cabecera.informacion_comprobante.condicion_de_pago; cFEA.cabecera.informacion_comprobante.condicion_de_pagoSpecified = true; cFEA.cabecera.informacion_comprobante.es_detalle_encriptado = cIBK.cabecera.informacion_comprobante.es_detalle_encriptado; cFEA.cabecera.informacion_comprobante.fecha_emision = cIBK.cabecera.informacion_comprobante.fecha_emision; cFEA.cabecera.informacion_comprobante.fecha_obtencion_cae = cIBK.cabecera.informacion_comprobante.fecha_obtencion_cae; cFEA.cabecera.informacion_comprobante.fecha_obtencion_caeSpecified = false; if (cIBK.cabecera.informacion_comprobante.fecha_obtencion_cae != null && cIBK.cabecera.informacion_comprobante.fecha_obtencion_cae != "") { cFEA.cabecera.informacion_comprobante.fecha_obtencion_caeSpecified = true; } cFEA.cabecera.informacion_comprobante.fecha_serv_desde = cIBK.cabecera.informacion_comprobante.fecha_serv_desde; cFEA.cabecera.informacion_comprobante.fecha_serv_hasta = cIBK.cabecera.informacion_comprobante.fecha_serv_hasta; cFEA.cabecera.informacion_comprobante.fecha_vencimiento = cIBK.cabecera.informacion_comprobante.fecha_vencimiento; cFEA.cabecera.informacion_comprobante.fecha_vencimiento_cae = cIBK.cabecera.informacion_comprobante.fecha_vencimiento_cae; cFEA.cabecera.informacion_comprobante.fecha_vencimiento_caeSpecified = false; if (cIBK.cabecera.informacion_comprobante.fecha_vencimiento_cae != null && cIBK.cabecera.informacion_comprobante.fecha_vencimiento_cae != "") { cFEA.cabecera.informacion_comprobante.fecha_vencimiento_caeSpecified = true; } cFEA.cabecera.informacion_comprobante.iva_computable = cIBK.cabecera.informacion_comprobante.iva_computable; cFEA.cabecera.informacion_comprobante.motivo = cIBK.cabecera.informacion_comprobante.motivo; cFEA.cabecera.informacion_comprobante.numero_comprobante = cIBK.cabecera.informacion_comprobante.numero_comprobante; cFEA.cabecera.informacion_comprobante.punto_de_venta = cIBK.cabecera.informacion_comprobante.punto_de_venta; cFEA.cabecera.informacion_comprobante.resultado = cIBK.cabecera.informacion_comprobante.resultado; cFEA.cabecera.informacion_comprobante.tipo_de_comprobante = cIBK.cabecera.informacion_comprobante.tipo_de_comprobante; cFEA.cabecera.informacion_comprobante.codigo_concepto = cIBK.cabecera.informacion_comprobante.codigo_concepto; cFEA.cabecera.informacion_comprobante.codigo_conceptoSpecified = cIBK.cabecera.informacion_comprobante.codigo_conceptoSpecified; //Info Vendedor cFEA.cabecera.informacion_vendedor = new FeaEntidades.InterFacturas.informacion_vendedor(); cFEA.cabecera.informacion_vendedor.codigo_interno = cIBK.cabecera.informacion_vendedor.codigo_interno; cFEA.cabecera.informacion_vendedor.razon_social = cIBK.cabecera.informacion_vendedor.razon_social; cFEA.cabecera.informacion_vendedor.condicion_ingresos_brutos = cIBK.cabecera.informacion_vendedor.condicion_ingresos_brutos; cFEA.cabecera.informacion_vendedor.condicion_ingresos_brutosSpecified = cIBK.cabecera.informacion_vendedor.condicion_ingresos_brutosSpecified; cFEA.cabecera.informacion_vendedor.condicion_IVA = cIBK.cabecera.informacion_vendedor.condicion_IVA; cFEA.cabecera.informacion_vendedor.condicion_IVASpecified = cIBK.cabecera.informacion_vendedor.condicion_IVASpecified; cFEA.cabecera.informacion_vendedor.contacto = cIBK.cabecera.informacion_vendedor.contacto; cFEA.cabecera.informacion_vendedor.cp = cIBK.cabecera.informacion_vendedor.cp; cFEA.cabecera.informacion_vendedor.cuit = cIBK.cabecera.informacion_vendedor.cuit; cFEA.cabecera.informacion_vendedor.domicilio_calle = cIBK.cabecera.informacion_vendedor.domicilio_calle; cFEA.cabecera.informacion_vendedor.domicilio_depto = cIBK.cabecera.informacion_vendedor.domicilio_depto; cFEA.cabecera.informacion_vendedor.domicilio_manzana = cIBK.cabecera.informacion_vendedor.domicilio_manzana; cFEA.cabecera.informacion_vendedor.domicilio_numero = cIBK.cabecera.informacion_vendedor.domicilio_numero; cFEA.cabecera.informacion_vendedor.domicilio_piso = cIBK.cabecera.informacion_vendedor.domicilio_piso; cFEA.cabecera.informacion_vendedor.domicilio_sector = cIBK.cabecera.informacion_vendedor.domicilio_sector; cFEA.cabecera.informacion_vendedor.domicilio_torre = cIBK.cabecera.informacion_vendedor.domicilio_torre; cFEA.cabecera.informacion_vendedor.email = cIBK.cabecera.informacion_vendedor.email; cFEA.cabecera.informacion_vendedor.GLN = cIBK.cabecera.informacion_vendedor.GLN; cFEA.cabecera.informacion_vendedor.GLNSpecified = cIBK.cabecera.informacion_vendedor.GLNSpecified; cFEA.cabecera.informacion_vendedor.inicio_de_actividades = cIBK.cabecera.informacion_vendedor.inicio_de_actividades; cFEA.cabecera.informacion_vendedor.localidad = cIBK.cabecera.informacion_vendedor.localidad; cFEA.cabecera.informacion_vendedor.nro_ingresos_brutos = cIBK.cabecera.informacion_vendedor.nro_ingresos_brutos; cFEA.cabecera.informacion_vendedor.provincia = cIBK.cabecera.informacion_vendedor.provincia; cFEA.cabecera.informacion_vendedor.telefono = cIBK.cabecera.informacion_vendedor.telefono; //Info Comprobantes de Referencia if (cIBK.cabecera.informacion_comprobante.referencias != null) { cFEA.cabecera.informacion_comprobante.referencias = new FeaEntidades.InterFacturas.informacion_comprobanteReferencias[cIBK.cabecera.informacion_comprobante.referencias.Length]; for (int j = 0; j < cIBK.cabecera.informacion_comprobante.referencias.Length; j++) { if (cIBK.cabecera.informacion_comprobante.referencias[j] != null) { cFEA.cabecera.informacion_comprobante.referencias[j] = new FeaEntidades.InterFacturas.informacion_comprobanteReferencias(); if (cIBK.cabecera.informacion_comprobante.referencias[j].tipo_comprobante_afip == CedWebRN.IBKP.informacion_comprobanteReferenciasTipo_comprobante_afip.S) { cFEA.cabecera.informacion_comprobante.referencias[j].tipo_comprobante_afip = "S"; } else if (cIBK.cabecera.informacion_comprobante.referencias[j].tipo_comprobante_afip == CedWebRN.IBKP.informacion_comprobanteReferenciasTipo_comprobante_afip.N) { cFEA.cabecera.informacion_comprobante.referencias[j].tipo_comprobante_afip = "N"; } cFEA.cabecera.informacion_comprobante.referencias[j].codigo_de_referencia = cIBK.cabecera.informacion_comprobante.referencias[j].codigo_de_referencia; cFEA.cabecera.informacion_comprobante.referencias[j].dato_de_referencia = cIBK.cabecera.informacion_comprobante.referencias[j].dato_de_referencia; } } } //Info Informacion Adicional Comprobante if (cIBK.cabecera.informacion_comprobante.informacion_adicional_comprobante != null) { cFEA.cabecera.informacion_comprobante.informacion_adicional_comprobante = new FeaEntidades.InterFacturas.informacion_adicional_comprobante[cIBK.cabecera.informacion_comprobante.informacion_adicional_comprobante.Length]; for (int j = 0; j < cIBK.cabecera.informacion_comprobante.informacion_adicional_comprobante.Length; j++) { cFEA.cabecera.informacion_comprobante.informacion_adicional_comprobante[j] = new FeaEntidades.InterFacturas.informacion_adicional_comprobante(); cFEA.cabecera.informacion_comprobante.informacion_adicional_comprobante[j].tipo = cIBK.cabecera.informacion_comprobante.informacion_adicional_comprobante[j].tipo; cFEA.cabecera.informacion_comprobante.informacion_adicional_comprobante[j].valor = cIBK.cabecera.informacion_comprobante.informacion_adicional_comprobante[j].valor; } } //Info Exportación if (cIBK.cabecera.informacion_comprobante.informacion_exportacion != null) { cFEA.cabecera.informacion_comprobante.informacion_exportacion = new FeaEntidades.InterFacturas.informacion_exportacion(); cFEA.cabecera.informacion_comprobante.informacion_exportacion.destino_comprobante = cIBK.cabecera.informacion_comprobante.informacion_exportacion.destino_comprobante; cFEA.cabecera.informacion_comprobante.informacion_exportacion.tipo_exportacion = cIBK.cabecera.informacion_comprobante.informacion_exportacion.tipo_exportacion; cFEA.cabecera.informacion_comprobante.informacion_exportacion.id_impositivo = cIBK.cabecera.informacion_comprobante.informacion_exportacion.id_impositivo; cFEA.cabecera.informacion_comprobante.informacion_exportacion.incoterms = cIBK.cabecera.informacion_comprobante.informacion_exportacion.incoterms; cFEA.cabecera.informacion_comprobante.informacion_exportacion.descripcion_incoterms = cIBK.cabecera.informacion_comprobante.informacion_exportacion.descripcion_incoterms; if (cIBK.cabecera.informacion_comprobante.informacion_exportacion.permiso_existente != null && cIBK.cabecera.informacion_comprobante.informacion_exportacion.permiso_existente != "") { cFEA.cabecera.informacion_comprobante.informacion_exportacion.permiso_existente = cIBK.cabecera.informacion_comprobante.informacion_exportacion.permiso_existente; } if (cIBK.cabecera.informacion_comprobante.informacion_exportacion.permisos != null) { cFEA.cabecera.informacion_comprobante.informacion_exportacion.permisos = new FeaEntidades.InterFacturas.permisos[cIBK.cabecera.informacion_comprobante.informacion_exportacion.permisos.Length]; for (int j = 0; j < cIBK.cabecera.informacion_comprobante.informacion_exportacion.permisos.Length; j++) { if (cIBK.cabecera.informacion_comprobante.informacion_exportacion.permisos[j] != null) { cFEA.cabecera.informacion_comprobante.informacion_exportacion.permisos[j] = new FeaEntidades.InterFacturas.permisos(); cFEA.cabecera.informacion_comprobante.informacion_exportacion.permisos[j].id_permiso = cIBK.cabecera.informacion_comprobante.informacion_exportacion.permisos[j].id_permiso; cFEA.cabecera.informacion_comprobante.informacion_exportacion.permisos[j].destino_mercaderia = cIBK.cabecera.informacion_comprobante.informacion_exportacion.permisos[j].destino_mercaderia; } } } } // //Detalle y Lineas // FeaEntidades.InterFacturas.detalle d = new FeaEntidades.InterFacturas.detalle(); // IBK.detalle detalle = (IBK.detalle)lcIBK.comprobante[i].Item; // d.linea = new FeaEntidades.InterFacturas.linea[detalle.linea.Length]; // d.comentarios = detalle.comentarios; // for (int j = 0; j < detalle.linea.Length; j++) // { // if (detalle.linea[j] != null) // { // d.linea[j] = new FeaEntidades.InterFacturas.linea(); // d.linea[j].alicuota_iva = detalle.linea[j].alicuota_iva; // d.linea[j].alicuota_ivaSpecified = detalle.linea[j].alicuota_ivaSpecified; // d.linea[j].cantidad = detalle.linea[j].cantidad; // d.linea[j].cantidadSpecified = detalle.linea[j].cantidadSpecified; // d.linea[j].codigo_producto_comprador = detalle.linea[j].codigo_producto_comprador; // d.linea[j].codigo_producto_vendedor = detalle.linea[j].codigo_producto_vendedor; // d.linea[j].descripcion = detalle.linea[j].descripcion; // d.linea[j].GTIN = detalle.linea[j].GTIN; // d.linea[j].GTINSpecified = detalle.linea[j].GTINSpecified; // d.linea[j].importe_iva = detalle.linea[j].importe_iva; // d.linea[j].importe_ivaSpecified = detalle.linea[j].importe_ivaSpecified; // d.linea[j].importe_total_articulo = detalle.linea[j].importe_total_articulo; // d.linea[j].importe_total_descuentos = detalle.linea[j].importe_total_descuentos; // d.linea[j].importe_total_descuentosSpecified = detalle.linea[j].importe_total_descuentosSpecified; // d.linea[j].importe_total_impuestos = detalle.linea[j].importe_total_impuestos; // d.linea[j].importe_total_impuestosSpecified = detalle.linea[j].importe_total_impuestosSpecified; // if (detalle.linea[j].importes_moneda_origen != null) // { // d.linea[j].importes_moneda_origen = new FeaEntidades.InterFacturas.lineaImportes_moneda_origen(); // d.linea[j].importes_moneda_origen.importe_iva = detalle.linea[j].importes_moneda_origen.importe_iva; // d.linea[j].importes_moneda_origen.importe_ivaSpecified = detalle.linea[j].importes_moneda_origen.importe_ivaSpecified; // d.linea[j].importes_moneda_origen.importe_total_articulo = detalle.linea[j].importes_moneda_origen.importe_total_articulo; // d.linea[j].importes_moneda_origen.importe_total_articuloSpecified = detalle.linea[j].importes_moneda_origen.importe_total_articuloSpecified; // d.linea[j].importes_moneda_origen.importe_total_descuentos = detalle.linea[j].importes_moneda_origen.importe_total_descuentos; // d.linea[j].importes_moneda_origen.importe_total_descuentosSpecified = detalle.linea[j].importes_moneda_origen.importe_total_descuentosSpecified; // d.linea[j].importes_moneda_origen.importe_total_impuestos = detalle.linea[j].importes_moneda_origen.importe_total_impuestos; // d.linea[j].importes_moneda_origen.importe_total_impuestosSpecified = detalle.linea[j].importes_moneda_origen.importe_total_impuestosSpecified; // d.linea[j].importes_moneda_origen.precio_unitario = detalle.linea[j].importes_moneda_origen.precio_unitario; // d.linea[j].importes_moneda_origen.precio_unitarioSpecified = detalle.linea[j].importes_moneda_origen.precio_unitarioSpecified; // } // if (detalle.linea[j].impuestos != null) // { // d.linea[j].impuestos = new FeaEntidades.InterFacturas.lineaImpuestos[detalle.linea[j].impuestos.Length]; // for (int k = 0; k < d.linea[j].impuestos.Length; k++) // { // d.linea[j].impuestos[k] = new FeaEntidades.InterFacturas.lineaImpuestos(); // d.linea[j].impuestos[k].codigo_impuesto = detalle.linea[j].impuestos[k].codigo_impuesto; // d.linea[j].impuestos[k].descripcion_impuesto = detalle.linea[j].impuestos[k].descripcion_impuesto; // d.linea[j].impuestos[k].importe_impuesto = detalle.linea[j].impuestos[k].importe_impuesto; // d.linea[j].impuestos[k].importe_impuesto_moneda_origen = detalle.linea[j].impuestos[k].importe_impuesto_moneda_origen; // d.linea[j].impuestos[k].importe_impuesto_moneda_origenSpecified = detalle.linea[j].impuestos[k].importe_impuesto_moneda_origenSpecified; // d.linea[j].impuestos[k].porcentaje_impuesto = detalle.linea[j].impuestos[k].porcentaje_impuesto; // d.linea[j].impuestos[k].porcentaje_impuestoSpecified = detalle.linea[j].impuestos[k].porcentaje_impuestoSpecified; // } // } // if (detalle.linea[j].descuentos != null) // { // d.linea[j].lineaDescuentos = new FeaEntidades.InterFacturas.lineaDescuentos[detalle.linea[j].descuentos.Length]; // for (int k = 0; k < d.linea[j].lineaDescuentos.Length; k++) // { // d.linea[j].lineaDescuentos[k] = new FeaEntidades.InterFacturas.lineaDescuentos(); // d.linea[j].lineaDescuentos[k].descripcion_descuento = detalle.linea[j].descuentos[k].descripcion_descuento; // d.linea[j].lineaDescuentos[k].importe_descuento = detalle.linea[j].descuentos[k].importe_descuento; // d.linea[j].lineaDescuentos[k].importe_descuento_moneda_origen = detalle.linea[j].descuentos[k].importe_descuento_moneda_origen; // d.linea[j].lineaDescuentos[k].importe_descuento_moneda_origenSpecified = detalle.linea[j].descuentos[k].importe_descuento_moneda_origenSpecified; // d.linea[j].lineaDescuentos[k].porcentaje_descuento = detalle.linea[j].descuentos[k].porcentaje_descuento; // d.linea[j].lineaDescuentos[k].porcentaje_descuentoSpecified = detalle.linea[j].descuentos[k].porcentaje_descuentoSpecified; // } // } // if (detalle.linea[j].informacion_adicional != null) // { // d.linea[j].informacion_adicional = new FeaEntidades.InterFacturas.lineaInformacion_adicional[detalle.linea[j].informacion_adicional.Length]; // for (int k = 0; k < d.linea[j].informacion_adicional.Length; k++) // { // d.linea[j].informacion_adicional[k] = new FeaEntidades.InterFacturas.lineaInformacion_adicional(); // d.linea[j].informacion_adicional[k].tipo = detalle.linea[j].informacion_adicional[k].tipo; // d.linea[j].informacion_adicional[k].valor = detalle.linea[j].informacion_adicional[k].valor; // } // } // d.linea[j].indicacion_exento_gravado = detalle.linea[j].indicacion_exento_gravado; // d.linea[j].numeroLinea = detalle.linea[j].numeroLinea; // d.linea[j].precio_unitario = detalle.linea[j].precio_unitario; // d.linea[j].precio_unitarioSpecified = detalle.linea[j].precio_unitarioSpecified; // d.linea[j].unidad = detalle.linea[j].unidad; // } // else // { // break; // } // } // cIBK.detalle = d; // //Info Extensiones // cIBK.extensiones = new FeaEntidades.InterFacturas.extensiones(); // cIBK.extensionesSpecified = false; // if (lcIBK.comprobante[i].extensiones != null) // { // cIBK.extensiones = new FeaEntidades.InterFacturas.extensiones(); // cIBK.extensionesSpecified = true; // if (lcIBK.comprobante[i].extensiones.extensiones_camara_facturas != null) // { // cIBK.extensiones.extensiones_camara_facturasSpecified = true; // cIBK.extensiones.extensiones_camara_facturas = new FeaEntidades.InterFacturas.extensionesExtensiones_camara_facturas(); // cIBK.extensiones.extensiones_camara_facturas.clave_de_vinculacion = lcIBK.comprobante[i].extensiones.extensiones_camara_facturas.clave_de_vinculacion; // cIBK.extensiones.extensiones_camara_facturas.id_idioma = lcIBK.comprobante[i].extensiones.extensiones_camara_facturas.id_idioma; // cIBK.extensiones.extensiones_camara_facturas.id_template = lcIBK.comprobante[i].extensiones.extensiones_camara_facturas.id_template; // } // if (lcIBK.comprobante[i].extensiones.extensiones_datos_comerciales != null) // { // cIBK.extensiones.extensiones_datos_comerciales = lcIBK.comprobante[i].extensiones.extensiones_datos_comerciales.ToString(); // } // if (lcIBK.comprobante[i].extensiones.extensiones_datos_marketing != null) // { // cIBK.extensiones.extensiones_datos_marketing = lcIBK.comprobante[i].extensiones.extensiones_datos_marketing; // } // if (lcIBK.comprobante[i].extensiones.extensiones_destinatarios != null) // { // cIBK.extensiones.extensiones_destinatarios = new FeaEntidades.InterFacturas.extensionesExtensiones_destinatarios(); // cIBK.extensiones.extensiones_destinatarios.email = lcIBK.comprobante[i].extensiones.extensiones_destinatarios.email; // } // } // cIBK.resumen = new FeaEntidades.InterFacturas.resumen(); // cIBK.resumen.cant_alicuotas_iva = lcIBK.comprobante[i].resumen.cant_alicuotas_iva; // cIBK.resumen.cant_alicuotas_ivaSpecified = lcIBK.comprobante[i].resumen.cant_alicuotas_ivaSpecified; // cIBK.resumen.codigo_moneda = lcIBK.comprobante[i].resumen.codigo_moneda; // cIBK.resumen.descuentos = new FeaEntidades.InterFacturas.resumenDescuentos[0]; // cIBK.resumen.cant_alicuotas_iva = lcIBK.comprobante[i].resumen.cant_alicuotas_iva; // cIBK.resumen.cant_alicuotas_ivaSpecified = lcIBK.comprobante[i].resumen.cant_alicuotas_ivaSpecified; // cIBK.resumen.codigo_moneda = lcIBK.comprobante[i].resumen.codigo_moneda; // cIBK.resumen.importe_operaciones_exentas = lcIBK.comprobante[i].resumen.importe_operaciones_exentas; // cIBK.resumen.importe_total_concepto_no_gravado = lcIBK.comprobante[i].resumen.importe_total_concepto_no_gravado; // cIBK.resumen.importe_total_factura = lcIBK.comprobante[i].resumen.importe_total_factura; // cIBK.resumen.importe_total_impuestos_internos = lcIBK.comprobante[i].resumen.importe_total_impuestos_internos; // cIBK.resumen.importe_total_impuestos_internosSpecified = lcIBK.comprobante[i].resumen.importe_total_impuestos_internosSpecified; // cIBK.resumen.importe_total_impuestos_municipales = lcIBK.comprobante[i].resumen.importe_total_impuestos_municipales; // cIBK.resumen.importe_total_impuestos_municipalesSpecified = lcIBK.comprobante[i].resumen.importe_total_impuestos_municipalesSpecified; // cIBK.resumen.importe_total_impuestos_nacionales = lcIBK.comprobante[i].resumen.importe_total_impuestos_nacionales; // cIBK.resumen.importe_total_impuestos_nacionalesSpecified = lcIBK.comprobante[i].resumen.importe_total_impuestos_nacionalesSpecified; // cIBK.resumen.importe_total_ingresos_brutos = lcIBK.comprobante[i].resumen.importe_total_ingresos_brutos; // cIBK.resumen.importe_total_ingresos_brutosSpecified = lcIBK.comprobante[i].resumen.importe_total_ingresos_brutosSpecified; // cIBK.resumen.importe_total_neto_gravado = lcIBK.comprobante[i].resumen.importe_total_neto_gravado; // if (lcIBK.comprobante[i].resumen.importes_moneda_origen != null) // { // cIBK.resumen.importes_moneda_origen = new FeaEntidades.InterFacturas.resumenImportes_moneda_origen(); // cIBK.resumen.importes_moneda_origen.importe_operaciones_exentas = lcIBK.comprobante[i].resumen.importes_moneda_origen.importe_operaciones_exentas; // cIBK.resumen.importes_moneda_origen.importe_total_concepto_no_gravado = lcIBK.comprobante[i].resumen.importes_moneda_origen.importe_total_concepto_no_gravado; // cIBK.resumen.importes_moneda_origen.importe_total_factura = lcIBK.comprobante[i].resumen.importes_moneda_origen.importe_total_factura; // cIBK.resumen.importes_moneda_origen.importe_total_impuestos_internos = lcIBK.comprobante[i].resumen.importes_moneda_origen.importe_total_impuestos_internos; // cIBK.resumen.importes_moneda_origen.importe_total_impuestos_internosSpecified = lcIBK.comprobante[i].resumen.importes_moneda_origen.importe_total_impuestos_internosSpecified; // cIBK.resumen.importes_moneda_origen.importe_total_impuestos_municipales = lcIBK.comprobante[i].resumen.importes_moneda_origen.importe_total_impuestos_municipales; // cIBK.resumen.importes_moneda_origen.importe_total_impuestos_municipalesSpecified = lcIBK.comprobante[i].resumen.importes_moneda_origen.importe_total_impuestos_municipalesSpecified; // cIBK.resumen.importes_moneda_origen.importe_total_impuestos_nacionales = lcIBK.comprobante[i].resumen.importes_moneda_origen.importe_total_impuestos_nacionales; // cIBK.resumen.importes_moneda_origen.importe_total_impuestos_nacionalesSpecified = lcIBK.comprobante[i].resumen.importes_moneda_origen.importe_total_impuestos_nacionalesSpecified; // cIBK.resumen.importes_moneda_origen.importe_total_ingresos_brutos = lcIBK.comprobante[i].resumen.importes_moneda_origen.importe_total_ingresos_brutos; // cIBK.resumen.importes_moneda_origen.importe_total_ingresos_brutosSpecified = lcIBK.comprobante[i].resumen.importes_moneda_origen.importe_total_ingresos_brutosSpecified; // cIBK.resumen.importes_moneda_origen.importe_total_neto_gravado = lcIBK.comprobante[i].resumen.importes_moneda_origen.importe_total_neto_gravado; // cIBK.resumen.importes_moneda_origen.impuesto_liq = lcIBK.comprobante[i].resumen.importes_moneda_origen.impuesto_liq; // cIBK.resumen.importes_moneda_origen.impuesto_liq_rni = lcIBK.comprobante[i].resumen.importes_moneda_origen.impuesto_liq_rni; // } // cIBK.resumen.impuesto_liq = lcIBK.comprobante[i].resumen.impuesto_liq; // cIBK.resumen.impuesto_liq_rni = lcIBK.comprobante[i].resumen.impuesto_liq_rni; // if (lcIBK.comprobante[i].resumen.descuentos != null) // { // cIBK.resumen.descuentos = new FeaEntidades.InterFacturas.resumenDescuentos[lcIBK.comprobante[i].resumen.descuentos.Length]; // for (int l = 0; l < lcIBK.comprobante[i].resumen.descuentos.Length; l++) // { // if (lcIBK.comprobante[i].resumen.descuentos[l] != null) // { // cIBK.resumen.descuentos[l] = new FeaEntidades.InterFacturas.resumenDescuentos(); // cIBK.resumen.descuentos[l].alicuota_iva_descuento = lcIBK.comprobante[i].resumen.descuentos[l].alicuota_iva_descuento; // cIBK.resumen.descuentos[l].alicuota_iva_descuentoSpecified = lcIBK.comprobante[i].resumen.descuentos[l].alicuota_iva_descuentoSpecified; // cIBK.resumen.descuentos[l].descripcion_descuento = lcIBK.comprobante[i].resumen.descuentos[l].descripcion_descuento; // cIBK.resumen.descuentos[l].importe_descuento = lcIBK.comprobante[i].resumen.descuentos[l].importe_descuento; // cIBK.resumen.descuentos[l].importe_descuento_moneda_origen = lcIBK.comprobante[i].resumen.descuentos[l].importe_descuento_moneda_origen; // cIBK.resumen.descuentos[l].importe_descuento_moneda_origenSpecified = lcIBK.comprobante[i].resumen.descuentos[l].importe_descuento_moneda_origenSpecified; // cIBK.resumen.descuentos[l].importe_iva_descuento = lcIBK.comprobante[i].resumen.descuentos[l].importe_iva_descuento; // cIBK.resumen.descuentos[l].importe_iva_descuento_moneda_origen = lcIBK.comprobante[i].resumen.descuentos[l].importe_iva_descuento_moneda_origen; // cIBK.resumen.descuentos[l].importe_iva_descuento_moneda_origenSpecified = lcIBK.comprobante[i].resumen.descuentos[l].importe_iva_descuento_moneda_origenSpecified; // cIBK.resumen.descuentos[l].importe_iva_descuentoSpecified = lcIBK.comprobante[i].resumen.descuentos[l].importe_iva_descuentoSpecified; // cIBK.resumen.descuentos[l].porcentaje_descuento = lcIBK.comprobante[i].resumen.descuentos[l].porcentaje_descuento; // cIBK.resumen.descuentos[l].porcentaje_descuentoSpecified = lcIBK.comprobante[i].resumen.descuentos[l].porcentaje_descuentoSpecified; // cIBK.resumen.descuentos[l].indicacion_exento_gravado_descuento = lcIBK.comprobante[i].resumen.descuentos[l].indicacion_exento_gravado_descuento; // } // } // } // if (lcIBK.comprobante[i].resumen.impuestos != null) // { // cIBK.resumen.impuestos = new FeaEntidades.InterFacturas.resumenImpuestos[lcIBK.comprobante[i].resumen.impuestos.Length]; // for (int l = 0; l < lcIBK.comprobante[i].resumen.impuestos.Length; l++) // { // if (lcIBK.comprobante[i].resumen.impuestos[l] != null) // { // cIBK.resumen.impuestos[l] = new FeaEntidades.InterFacturas.resumenImpuestos(); // cIBK.resumen.impuestos[l].codigo_impuesto = lcIBK.comprobante[i].resumen.impuestos[l].codigo_impuesto; // cIBK.resumen.impuestos[l].codigo_jurisdiccion = lcIBK.comprobante[i].resumen.impuestos[l].codigo_jurisdiccion; // cIBK.resumen.impuestos[l].codigo_jurisdiccionSpecified = lcIBK.comprobante[i].resumen.impuestos[l].codigo_jurisdiccionSpecified; // cIBK.resumen.impuestos[l].descripcion = lcIBK.comprobante[i].resumen.impuestos[l].descripcion; // cIBK.resumen.impuestos[l].importe_impuesto = lcIBK.comprobante[i].resumen.impuestos[l].importe_impuesto; // cIBK.resumen.impuestos[l].importe_impuesto_moneda_origen = lcIBK.comprobante[i].resumen.impuestos[l].importe_impuesto_moneda_origen; // cIBK.resumen.impuestos[l].importe_impuesto_moneda_origenSpecified = lcIBK.comprobante[i].resumen.impuestos[l].importe_impuesto_moneda_origenSpecified; // cIBK.resumen.impuestos[l].jurisdiccion_municipal = lcIBK.comprobante[i].resumen.impuestos[l].jurisdiccion_municipal; // cIBK.resumen.impuestos[l].porcentaje_impuesto = lcIBK.comprobante[i].resumen.impuestos[l].porcentaje_impuesto; // cIBK.resumen.impuestos[l].porcentaje_impuestoSpecified = lcIBK.comprobante[i].resumen.impuestos[l].porcentaje_impuestoSpecified; // } // } // } // cIBK.resumen.observaciones = lcIBK.comprobante[i].resumen.observaciones; // cIBK.resumen.tipo_de_cambio = lcIBK.comprobante[i].resumen.tipo_de_cambio; // lcFEA.comprobante[i] = cIBK; //} return cFEA; }
public FeaEntidades.InterFacturas.comprobante ConsultarIBKP(IBKP.consulta_detalle_comprobante cdc, string certificado) { FeaEntidades.InterFacturas.comprobante c = new FeaEntidades.InterFacturas.comprobante(); IBKP.ConsultaFacturaWebServiceConSchema objIBKP; objIBKP = new IBKP.ConsultaFacturaWebServiceConSchema(); objIBKP.Url = System.Configuration.ConfigurationManager.AppSettings["URLinterfacturasP"]; 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; objIBKP.Proxy = wp; } X509Store store = new X509Store(StoreLocation.CurrentUser); store.Open(OpenFlags.ReadOnly); X509Certificate2Collection col = store.Certificates.Find(X509FindType.FindBySerialNumber, certificado, true); if (col.Count.Equals(1)) { objIBKP.ClientCertificates.Add(col[0]); System.Threading.Thread.Sleep(1000); IBKP.consulta_detalle_comprobante_response cdcr = objIBKP.consultaDetalleConSchema(cdc); IBKP.consulta_detalle_response cdr; try { cdr = (IBKP.consulta_detalle_response)cdcr.Item; IBKP.comprobante cIBK = (IBKP.comprobante)cdr.Item; c = IBKP2Fea(cIBK); } catch (InvalidCastException) { string errorText = ""; throw new Exception(errorText.ToString()); } catch (Exception ex) { throw new Exception(ex.Message); } return c; } else { throw new Exception("Su certificado no está disponible en nuestro repositorio"); } }
static internal FeaEntidades.InterFacturas.lote_comprobantes IBK2Entidad(IBK.lote_comprobantes lcIBK) { FeaEntidades.InterFacturas.lote_comprobantes lcFEA = new FeaEntidades.InterFacturas.lote_comprobantes(); lcFEA.cabecera_lote = new FeaEntidades.InterFacturas.cabecera_lote(); lcFEA.cabecera_lote.cantidad_reg = lcIBK.cabecera_lote.cantidad_reg; lcFEA.cabecera_lote.cod_interno_canal = lcIBK.cabecera_lote.cod_interno_canal; lcFEA.cabecera_lote.cuit_canal = lcIBK.cabecera_lote.cuit_canal; lcFEA.cabecera_lote.cuit_vendedor = lcIBK.cabecera_lote.cuit_vendedor; lcFEA.cabecera_lote.fecha_envio_lote = lcIBK.cabecera_lote.fecha_envio_lote; lcFEA.cabecera_lote.id_lote = lcIBK.cabecera_lote.id_lote; lcFEA.cabecera_lote.motivo = lcIBK.cabecera_lote.motivo; lcFEA.cabecera_lote.presta_serv = lcIBK.cabecera_lote.presta_serv; lcFEA.cabecera_lote.presta_servSpecified = lcIBK.cabecera_lote.presta_servSpecified; lcFEA.cabecera_lote.punto_de_venta = lcIBK.cabecera_lote.punto_de_venta; lcFEA.cabecera_lote.resultado = lcIBK.cabecera_lote.resultado; lcFEA.comprobante = new FeaEntidades.InterFacturas.comprobante[lcIBK.comprobante.Length]; for (int i = 0; i < lcIBK.comprobante.Length; i++) { FeaEntidades.InterFacturas.comprobante cIBK = new FeaEntidades.InterFacturas.comprobante(); cIBK.cabecera = new FeaEntidades.InterFacturas.cabecera(); cIBK.cabecera.informacion_comprador = new FeaEntidades.InterFacturas.informacion_comprador(); cIBK.cabecera.informacion_comprador.codigo_doc_identificatorio = lcIBK.comprobante[i].cabecera.informacion_comprador.codigo_doc_identificatorio; cIBK.cabecera.informacion_comprador.codigo_interno = lcIBK.comprobante[i].cabecera.informacion_comprador.codigo_interno; cIBK.cabecera.informacion_comprador.condicion_ingresos_brutos = lcIBK.comprobante[i].cabecera.informacion_comprador.condicion_ingresos_brutos; cIBK.cabecera.informacion_comprador.condicion_ingresos_brutosSpecified = lcIBK.comprobante[i].cabecera.informacion_comprador.condicion_ingresos_brutosSpecified; cIBK.cabecera.informacion_comprador.condicion_IVA = lcIBK.comprobante[i].cabecera.informacion_comprador.condicion_IVA; cIBK.cabecera.informacion_comprador.condicion_IVASpecified = lcIBK.comprobante[i].cabecera.informacion_comprador.condicion_IVASpecified; cIBK.cabecera.informacion_comprador.contacto = lcIBK.comprobante[i].cabecera.informacion_comprador.contacto; cIBK.cabecera.informacion_comprador.cp = lcIBK.comprobante[i].cabecera.informacion_comprador.cp; cIBK.cabecera.informacion_comprador.denominacion = lcIBK.comprobante[i].cabecera.informacion_comprador.denominacion; cIBK.cabecera.informacion_comprador.domicilio_calle = lcIBK.comprobante[i].cabecera.informacion_comprador.domicilio_calle; cIBK.cabecera.informacion_comprador.domicilio_depto = lcIBK.comprobante[i].cabecera.informacion_comprador.domicilio_depto; cIBK.cabecera.informacion_comprador.domicilio_manzana = lcIBK.comprobante[i].cabecera.informacion_comprador.domicilio_manzana; cIBK.cabecera.informacion_comprador.domicilio_numero = lcIBK.comprobante[i].cabecera.informacion_comprador.domicilio_numero; cIBK.cabecera.informacion_comprador.domicilio_piso = lcIBK.comprobante[i].cabecera.informacion_comprador.domicilio_piso; cIBK.cabecera.informacion_comprador.domicilio_sector = lcIBK.comprobante[i].cabecera.informacion_comprador.domicilio_sector; cIBK.cabecera.informacion_comprador.domicilio_torre = lcIBK.comprobante[i].cabecera.informacion_comprador.domicilio_torre; cIBK.cabecera.informacion_comprador.email = lcIBK.comprobante[i].cabecera.informacion_comprador.email; cIBK.cabecera.informacion_comprador.GLN = lcIBK.comprobante[i].cabecera.informacion_comprador.GLN; cIBK.cabecera.informacion_comprador.GLNSpecified = lcIBK.comprobante[i].cabecera.informacion_comprador.GLNSpecified; cIBK.cabecera.informacion_comprador.inicio_de_actividades = lcIBK.comprobante[i].cabecera.informacion_comprador.inicio_de_actividades; cIBK.cabecera.informacion_comprador.localidad = lcIBK.comprobante[i].cabecera.informacion_comprador.localidad; cIBK.cabecera.informacion_comprador.nro_doc_identificatorio = lcIBK.comprobante[i].cabecera.informacion_comprador.nro_doc_identificatorio; cIBK.cabecera.informacion_comprador.nro_ingresos_brutos = lcIBK.comprobante[i].cabecera.informacion_comprador.nro_ingresos_brutos; cIBK.cabecera.informacion_comprador.provincia = lcIBK.comprobante[i].cabecera.informacion_comprador.provincia; cIBK.cabecera.informacion_comprador.telefono = lcIBK.comprobante[i].cabecera.informacion_comprador.telefono; cIBK.cabecera.informacion_comprobante = new FeaEntidades.InterFacturas.informacion_comprobante(); cIBK.cabecera.informacion_comprobante.cae = lcIBK.comprobante[i].cabecera.informacion_comprobante.cae; cIBK.cabecera.informacion_comprobante.caeSpecified = false; if (cIBK.cabecera.informacion_comprobante.cae != "") { cIBK.cabecera.informacion_comprobante.caeSpecified = true; } cIBK.cabecera.informacion_comprobante.codigo_operacion = lcIBK.comprobante[i].cabecera.informacion_comprobante.codigo_operacion; cIBK.cabecera.informacion_comprobante.condicion_de_pago = lcIBK.comprobante[i].cabecera.informacion_comprobante.condicion_de_pago; cIBK.cabecera.informacion_comprobante.condicion_de_pagoSpecified = true; cIBK.cabecera.informacion_comprobante.es_detalle_encriptado = lcIBK.comprobante[i].cabecera.informacion_comprobante.es_detalle_encriptado; cIBK.cabecera.informacion_comprobante.fecha_emision = lcIBK.comprobante[i].cabecera.informacion_comprobante.fecha_emision; cIBK.cabecera.informacion_comprobante.fecha_obtencion_cae = lcIBK.comprobante[i].cabecera.informacion_comprobante.fecha_obtencion_cae; cIBK.cabecera.informacion_comprobante.fecha_obtencion_caeSpecified = false; if (cIBK.cabecera.informacion_comprobante.fecha_obtencion_cae != "") { cIBK.cabecera.informacion_comprobante.fecha_obtencion_caeSpecified = true; } cIBK.cabecera.informacion_comprobante.fecha_serv_desde = lcIBK.comprobante[i].cabecera.informacion_comprobante.fecha_serv_desde; cIBK.cabecera.informacion_comprobante.fecha_serv_hasta = lcIBK.comprobante[i].cabecera.informacion_comprobante.fecha_serv_hasta; cIBK.cabecera.informacion_comprobante.fecha_vencimiento = lcIBK.comprobante[i].cabecera.informacion_comprobante.fecha_vencimiento; cIBK.cabecera.informacion_comprobante.fecha_vencimiento_cae = lcIBK.comprobante[i].cabecera.informacion_comprobante.fecha_vencimiento_cae; cIBK.cabecera.informacion_comprobante.fecha_vencimiento_caeSpecified = false; if (cIBK.cabecera.informacion_comprobante.fecha_vencimiento_cae != "") { cIBK.cabecera.informacion_comprobante.fecha_vencimiento_caeSpecified = true; } cIBK.cabecera.informacion_comprobante.iva_computable = lcIBK.comprobante[i].cabecera.informacion_comprobante.iva_computable; cIBK.cabecera.informacion_comprobante.motivo = lcIBK.comprobante[i].cabecera.informacion_comprobante.motivo; cIBK.cabecera.informacion_comprobante.numero_comprobante = lcIBK.comprobante[i].cabecera.informacion_comprobante.numero_comprobante; cIBK.cabecera.informacion_comprobante.punto_de_venta = lcIBK.comprobante[i].cabecera.informacion_comprobante.punto_de_venta; if (lcIBK.comprobante[i].cabecera.informacion_comprobante.referencias != null) { cIBK.cabecera.informacion_comprobante.referencias = new FeaEntidades.InterFacturas.informacion_comprobanteReferencias[lcIBK.comprobante[i].cabecera.informacion_comprobante.referencias.Length]; for (int j = 0; j < lcIBK.comprobante[i].cabecera.informacion_comprobante.referencias.Length; j++) { if (lcIBK.comprobante[i].cabecera.informacion_comprobante.referencias[j] != null) { cIBK.cabecera.informacion_comprobante.referencias[j] = new FeaEntidades.InterFacturas.informacion_comprobanteReferencias(); cIBK.cabecera.informacion_comprobante.referencias[j].codigo_de_referencia = lcIBK.comprobante[i].cabecera.informacion_comprobante.referencias[j].codigo_de_referencia; cIBK.cabecera.informacion_comprobante.referencias[j].dato_de_referencia = lcIBK.comprobante[i].cabecera.informacion_comprobante.referencias[j].dato_de_referencia; } } } if (lcIBK.comprobante[i].cabecera.informacion_comprobante.informacion_exportacion != null) { cIBK.cabecera.informacion_comprobante.informacion_exportacion = new FeaEntidades.InterFacturas.informacion_exportacion(); cIBK.cabecera.informacion_comprobante.informacion_exportacion.destino_comprobante = lcIBK.comprobante[i].cabecera.informacion_comprobante.informacion_exportacion.destino_comprobante; cIBK.cabecera.informacion_comprobante.informacion_exportacion.tipo_exportacion = lcIBK.comprobante[i].cabecera.informacion_comprobante.informacion_exportacion.tipo_exportacion; cIBK.cabecera.informacion_comprobante.informacion_exportacion.id_impositivo = lcIBK.comprobante[i].cabecera.informacion_comprobante.informacion_exportacion.id_impositivo; cIBK.cabecera.informacion_comprobante.informacion_exportacion.incoterms = lcIBK.comprobante[i].cabecera.informacion_comprobante.informacion_exportacion.incoterms; cIBK.cabecera.informacion_comprobante.informacion_exportacion.descripcion_incoterms = lcIBK.comprobante[i].cabecera.informacion_comprobante.informacion_exportacion.descripcion_incoterms; if (lcIBK.comprobante[i].cabecera.informacion_comprobante.informacion_exportacion.permiso_existente != null && lcIBK.comprobante[i].cabecera.informacion_comprobante.informacion_exportacion.permiso_existente != "") { cIBK.cabecera.informacion_comprobante.informacion_exportacion.permiso_existente = lcIBK.comprobante[i].cabecera.informacion_comprobante.informacion_exportacion.permiso_existente; } if (lcIBK.comprobante[i].cabecera.informacion_comprobante.informacion_exportacion.permisos != null) { cIBK.cabecera.informacion_comprobante.informacion_exportacion.permisos = new FeaEntidades.InterFacturas.permisos[lcIBK.comprobante[i].cabecera.informacion_comprobante.informacion_exportacion.permisos.Length]; for (int j = 0; j < lcIBK.comprobante[i].cabecera.informacion_comprobante.informacion_exportacion.permisos.Length; j++) { if (lcIBK.comprobante[i].cabecera.informacion_comprobante.informacion_exportacion.permisos[j] != null) { cIBK.cabecera.informacion_comprobante.informacion_exportacion.permisos[j] = new FeaEntidades.InterFacturas.permisos(); cIBK.cabecera.informacion_comprobante.informacion_exportacion.permisos[j].id_permiso = lcIBK.comprobante[i].cabecera.informacion_comprobante.informacion_exportacion.permisos[j].id_permiso; cIBK.cabecera.informacion_comprobante.informacion_exportacion.permisos[j].destino_mercaderia = lcIBK.comprobante[i].cabecera.informacion_comprobante.informacion_exportacion.permisos[j].destino_mercaderia; } } } } cIBK.cabecera.informacion_comprobante.resultado = lcIBK.comprobante[i].cabecera.informacion_comprobante.resultado; cIBK.cabecera.informacion_comprobante.tipo_de_comprobante = lcIBK.comprobante[i].cabecera.informacion_comprobante.tipo_de_comprobante; cIBK.cabecera.informacion_vendedor = new FeaEntidades.InterFacturas.informacion_vendedor(); cIBK.cabecera.informacion_vendedor.codigo_interno = lcIBK.comprobante[i].cabecera.informacion_vendedor.codigo_interno; cIBK.cabecera.informacion_vendedor.condicion_ingresos_brutos = lcIBK.comprobante[i].cabecera.informacion_vendedor.condicion_ingresos_brutos; cIBK.cabecera.informacion_vendedor.condicion_ingresos_brutosSpecified = lcIBK.comprobante[i].cabecera.informacion_vendedor.condicion_ingresos_brutosSpecified; cIBK.cabecera.informacion_vendedor.condicion_IVA = lcIBK.comprobante[i].cabecera.informacion_vendedor.condicion_IVA; cIBK.cabecera.informacion_vendedor.condicion_IVASpecified = lcIBK.comprobante[i].cabecera.informacion_vendedor.condicion_IVASpecified; cIBK.cabecera.informacion_vendedor.contacto = lcIBK.comprobante[i].cabecera.informacion_vendedor.contacto; cIBK.cabecera.informacion_vendedor.cp = lcIBK.comprobante[i].cabecera.informacion_vendedor.cp; cIBK.cabecera.informacion_vendedor.cuit = lcIBK.comprobante[i].cabecera.informacion_vendedor.cuit; cIBK.cabecera.informacion_vendedor.domicilio_calle = lcIBK.comprobante[i].cabecera.informacion_vendedor.domicilio_calle; cIBK.cabecera.informacion_vendedor.domicilio_depto = lcIBK.comprobante[i].cabecera.informacion_vendedor.domicilio_depto; cIBK.cabecera.informacion_vendedor.domicilio_manzana = lcIBK.comprobante[i].cabecera.informacion_vendedor.domicilio_manzana; cIBK.cabecera.informacion_vendedor.domicilio_numero = lcIBK.comprobante[i].cabecera.informacion_vendedor.domicilio_numero; cIBK.cabecera.informacion_vendedor.domicilio_piso = lcIBK.comprobante[i].cabecera.informacion_vendedor.domicilio_piso; cIBK.cabecera.informacion_vendedor.domicilio_sector = lcIBK.comprobante[i].cabecera.informacion_vendedor.domicilio_sector; cIBK.cabecera.informacion_vendedor.domicilio_torre = lcIBK.comprobante[i].cabecera.informacion_vendedor.domicilio_torre; cIBK.cabecera.informacion_vendedor.email = lcIBK.comprobante[i].cabecera.informacion_vendedor.email; cIBK.cabecera.informacion_vendedor.GLN = lcIBK.comprobante[i].cabecera.informacion_vendedor.GLN; cIBK.cabecera.informacion_vendedor.GLNSpecified = lcIBK.comprobante[i].cabecera.informacion_vendedor.GLNSpecified; cIBK.cabecera.informacion_vendedor.inicio_de_actividades = lcIBK.comprobante[i].cabecera.informacion_vendedor.inicio_de_actividades; cIBK.cabecera.informacion_vendedor.localidad = lcIBK.comprobante[i].cabecera.informacion_vendedor.localidad; cIBK.cabecera.informacion_vendedor.nro_ingresos_brutos = lcIBK.comprobante[i].cabecera.informacion_vendedor.nro_ingresos_brutos; cIBK.cabecera.informacion_vendedor.provincia = lcIBK.comprobante[i].cabecera.informacion_vendedor.provincia; cIBK.cabecera.informacion_vendedor.telefono = lcIBK.comprobante[i].cabecera.informacion_vendedor.telefono; cIBK.extensiones = new FeaEntidades.InterFacturas.extensiones(); if (lcIBK.comprobante[i].extensiones.extensiones_camara_facturas != null) { cIBK.extensiones.extensiones_camara_facturas = new FeaEntidades.InterFacturas.extensionesExtensiones_camara_facturas(); cIBK.extensiones.extensiones_camara_facturas.clave_de_vinculacion = lcIBK.comprobante[i].extensiones.extensiones_camara_facturas.clave_de_vinculacion; cIBK.extensiones.extensiones_camara_facturas.id_idioma = lcIBK.comprobante[i].extensiones.extensiones_camara_facturas.id_idioma; cIBK.extensiones.extensiones_camara_facturas.id_template = lcIBK.comprobante[i].extensiones.extensiones_camara_facturas.id_template; } if (lcIBK.comprobante[i].extensiones.extensiones_datos_comerciales != null) { cIBK.extensiones.extensiones_datos_comerciales = lcIBK.comprobante[i].extensiones.extensiones_datos_comerciales.ToString(); } if (lcIBK.comprobante[i].extensiones.extensiones_datos_marketing != null) { cIBK.extensiones.extensiones_datos_marketing = lcIBK.comprobante[i].extensiones.extensiones_datos_marketing; } FeaEntidades.InterFacturas.detalle d = new FeaEntidades.InterFacturas.detalle(); IBK.detalle detalle = (IBK.detalle)lcIBK.comprobante[i].Item; d.linea = new FeaEntidades.InterFacturas.linea[detalle.linea.Length]; d.comentarios = detalle.comentarios; for (int j = 0; j < detalle.linea.Length; j++) { if (detalle.linea[j] != null) { d.linea[j] = new FeaEntidades.InterFacturas.linea(); d.linea[j].alicuota_iva = detalle.linea[j].alicuota_iva; d.linea[j].alicuota_ivaSpecified = detalle.linea[j].alicuota_ivaSpecified; d.linea[j].cantidad = detalle.linea[j].cantidad; d.linea[j].cantidadSpecified = detalle.linea[j].cantidadSpecified; d.linea[j].codigo_producto_comprador = detalle.linea[j].codigo_producto_comprador; d.linea[j].codigo_producto_vendedor = detalle.linea[j].codigo_producto_vendedor; d.linea[j].descripcion = detalle.linea[j].descripcion; d.linea[j].GTIN = detalle.linea[j].GTIN; d.linea[j].GTINSpecified = detalle.linea[j].GTINSpecified; d.linea[j].importe_iva = detalle.linea[j].importe_iva; d.linea[j].importe_ivaSpecified = detalle.linea[j].importe_ivaSpecified; d.linea[j].importe_total_articulo = detalle.linea[j].importe_total_articulo; d.linea[j].importe_total_descuentos = detalle.linea[j].importe_total_descuentos; d.linea[j].importe_total_descuentosSpecified = detalle.linea[j].importe_total_descuentosSpecified; d.linea[j].importe_total_impuestos = detalle.linea[j].importe_total_impuestos; d.linea[j].importe_total_impuestosSpecified = detalle.linea[j].importe_total_impuestosSpecified; if (detalle.linea[j].importes_moneda_origen != null) { d.linea[j].importes_moneda_origen = new FeaEntidades.InterFacturas.lineaImportes_moneda_origen(); d.linea[j].importes_moneda_origen.importe_iva = detalle.linea[j].importes_moneda_origen.importe_iva; d.linea[j].importes_moneda_origen.importe_ivaSpecified = detalle.linea[j].importes_moneda_origen.importe_ivaSpecified; d.linea[j].importes_moneda_origen.importe_total_articulo = detalle.linea[j].importes_moneda_origen.importe_total_articulo; d.linea[j].importes_moneda_origen.importe_total_articuloSpecified = detalle.linea[j].importes_moneda_origen.importe_total_articuloSpecified; d.linea[j].importes_moneda_origen.importe_total_descuentos = detalle.linea[j].importes_moneda_origen.importe_total_descuentos; d.linea[j].importes_moneda_origen.importe_total_descuentosSpecified = detalle.linea[j].importes_moneda_origen.importe_total_descuentosSpecified; d.linea[j].importes_moneda_origen.importe_total_impuestos = detalle.linea[j].importes_moneda_origen.importe_total_impuestos; d.linea[j].importes_moneda_origen.importe_total_impuestosSpecified = detalle.linea[j].importes_moneda_origen.importe_total_impuestosSpecified; d.linea[j].importes_moneda_origen.precio_unitario = detalle.linea[j].importes_moneda_origen.precio_unitario; d.linea[j].importes_moneda_origen.precio_unitarioSpecified = detalle.linea[j].importes_moneda_origen.precio_unitarioSpecified; } if (detalle.linea[j].impuestos != null) { d.linea[j].impuestos = new FeaEntidades.InterFacturas.lineaImpuestos[detalle.linea[j].impuestos.Length]; for (int k = 0; k < d.linea[j].impuestos.Length; k++) { d.linea[j].impuestos[k] = new FeaEntidades.InterFacturas.lineaImpuestos(); d.linea[j].impuestos[k].codigo_impuesto = detalle.linea[j].impuestos[k].codigo_impuesto; d.linea[j].impuestos[k].descripcion_impuesto = detalle.linea[j].impuestos[k].descripcion_impuesto; d.linea[j].impuestos[k].importe_impuesto = detalle.linea[j].impuestos[k].importe_impuesto; d.linea[j].impuestos[k].importe_impuesto_moneda_origen = detalle.linea[j].impuestos[k].importe_impuesto_moneda_origen; d.linea[j].impuestos[k].importe_impuesto_moneda_origenSpecified = detalle.linea[j].impuestos[k].importe_impuesto_moneda_origenSpecified; d.linea[j].impuestos[k].porcentaje_impuesto = detalle.linea[j].impuestos[k].porcentaje_impuesto; d.linea[j].impuestos[k].porcentaje_impuestoSpecified = detalle.linea[j].impuestos[k].porcentaje_impuestoSpecified; } } if (detalle.linea[j].descuentos != null) { d.linea[j].lineaDescuentos = new FeaEntidades.InterFacturas.lineaDescuentos[detalle.linea[j].descuentos.Length]; for (int k = 0; k < d.linea[j].lineaDescuentos.Length; k++) { d.linea[j].lineaDescuentos[k] = new FeaEntidades.InterFacturas.lineaDescuentos(); d.linea[j].lineaDescuentos[k].descripcion_descuento = detalle.linea[j].descuentos[k].descripcion_descuento; d.linea[j].lineaDescuentos[k].importe_descuento = detalle.linea[j].descuentos[k].importe_descuento; d.linea[j].lineaDescuentos[k].importe_descuento_moneda_origen = detalle.linea[j].descuentos[k].importe_descuento_moneda_origen; d.linea[j].lineaDescuentos[k].importe_descuento_moneda_origenSpecified = detalle.linea[j].descuentos[k].importe_descuento_moneda_origenSpecified; d.linea[j].lineaDescuentos[k].porcentaje_descuento = detalle.linea[j].descuentos[k].porcentaje_descuento; d.linea[j].lineaDescuentos[k].porcentaje_descuentoSpecified = detalle.linea[j].descuentos[k].porcentaje_descuentoSpecified; } } d.linea[j].indicacion_exento_gravado = detalle.linea[j].indicacion_exento_gravado; d.linea[j].numeroLinea = detalle.linea[j].numeroLinea; d.linea[j].precio_unitario = detalle.linea[j].precio_unitario; d.linea[j].precio_unitarioSpecified = detalle.linea[j].precio_unitarioSpecified; d.linea[j].unidad = detalle.linea[j].unidad; } else { break; } } cIBK.detalle = d; cIBK.resumen = new FeaEntidades.InterFacturas.resumen(); cIBK.resumen.cant_alicuotas_iva = lcIBK.comprobante[i].resumen.cant_alicuotas_iva; cIBK.resumen.cant_alicuotas_ivaSpecified = lcIBK.comprobante[i].resumen.cant_alicuotas_ivaSpecified; cIBK.resumen.codigo_moneda = lcIBK.comprobante[i].resumen.codigo_moneda; cIBK.resumen.descuentos = new FeaEntidades.InterFacturas.resumenDescuentos[0]; cIBK.resumen.cant_alicuotas_iva = lcIBK.comprobante[i].resumen.cant_alicuotas_iva; cIBK.resumen.cant_alicuotas_ivaSpecified = lcIBK.comprobante[i].resumen.cant_alicuotas_ivaSpecified; cIBK.resumen.codigo_moneda = lcIBK.comprobante[i].resumen.codigo_moneda; cIBK.resumen.importe_operaciones_exentas = lcIBK.comprobante[i].resumen.importe_operaciones_exentas; cIBK.resumen.importe_total_concepto_no_gravado = lcIBK.comprobante[i].resumen.importe_total_concepto_no_gravado; cIBK.resumen.importe_total_factura = lcIBK.comprobante[i].resumen.importe_total_factura; cIBK.resumen.importe_total_impuestos_internos = lcIBK.comprobante[i].resumen.importe_total_impuestos_internos; cIBK.resumen.importe_total_impuestos_internosSpecified = lcIBK.comprobante[i].resumen.importe_total_impuestos_internosSpecified; cIBK.resumen.importe_total_impuestos_municipales = lcIBK.comprobante[i].resumen.importe_total_impuestos_municipales; cIBK.resumen.importe_total_impuestos_municipalesSpecified = lcIBK.comprobante[i].resumen.importe_total_impuestos_municipalesSpecified; cIBK.resumen.importe_total_impuestos_nacionales = lcIBK.comprobante[i].resumen.importe_total_impuestos_nacionales; cIBK.resumen.importe_total_impuestos_nacionalesSpecified = lcIBK.comprobante[i].resumen.importe_total_impuestos_nacionalesSpecified; cIBK.resumen.importe_total_ingresos_brutos = lcIBK.comprobante[i].resumen.importe_total_ingresos_brutos; cIBK.resumen.importe_total_ingresos_brutosSpecified = lcIBK.comprobante[i].resumen.importe_total_ingresos_brutosSpecified; cIBK.resumen.importe_total_neto_gravado = lcIBK.comprobante[i].resumen.importe_total_neto_gravado; if (lcIBK.comprobante[i].resumen.importes_moneda_origen != null) { cIBK.resumen.importes_moneda_origen = new FeaEntidades.InterFacturas.resumenImportes_moneda_origen(); cIBK.resumen.importes_moneda_origen.importe_operaciones_exentas = lcIBK.comprobante[i].resumen.importes_moneda_origen.importe_operaciones_exentas; cIBK.resumen.importes_moneda_origen.importe_total_concepto_no_gravado = lcIBK.comprobante[i].resumen.importes_moneda_origen.importe_total_concepto_no_gravado; cIBK.resumen.importes_moneda_origen.importe_total_factura = lcIBK.comprobante[i].resumen.importes_moneda_origen.importe_total_factura; cIBK.resumen.importes_moneda_origen.importe_total_impuestos_internos = lcIBK.comprobante[i].resumen.importes_moneda_origen.importe_total_impuestos_internos; cIBK.resumen.importes_moneda_origen.importe_total_impuestos_internosSpecified = lcIBK.comprobante[i].resumen.importes_moneda_origen.importe_total_impuestos_internosSpecified; cIBK.resumen.importes_moneda_origen.importe_total_impuestos_municipales = lcIBK.comprobante[i].resumen.importes_moneda_origen.importe_total_impuestos_municipales; cIBK.resumen.importes_moneda_origen.importe_total_impuestos_municipalesSpecified = lcIBK.comprobante[i].resumen.importes_moneda_origen.importe_total_impuestos_municipalesSpecified; cIBK.resumen.importes_moneda_origen.importe_total_impuestos_nacionales = lcIBK.comprobante[i].resumen.importes_moneda_origen.importe_total_impuestos_nacionales; cIBK.resumen.importes_moneda_origen.importe_total_impuestos_nacionalesSpecified = lcIBK.comprobante[i].resumen.importes_moneda_origen.importe_total_impuestos_nacionalesSpecified; cIBK.resumen.importes_moneda_origen.importe_total_ingresos_brutos = lcIBK.comprobante[i].resumen.importes_moneda_origen.importe_total_ingresos_brutos; cIBK.resumen.importes_moneda_origen.importe_total_ingresos_brutosSpecified = lcIBK.comprobante[i].resumen.importes_moneda_origen.importe_total_ingresos_brutosSpecified; cIBK.resumen.importes_moneda_origen.importe_total_neto_gravado = lcIBK.comprobante[i].resumen.importes_moneda_origen.importe_total_neto_gravado; cIBK.resumen.importes_moneda_origen.impuesto_liq = lcIBK.comprobante[i].resumen.importes_moneda_origen.impuesto_liq; cIBK.resumen.importes_moneda_origen.impuesto_liq_rni = lcIBK.comprobante[i].resumen.importes_moneda_origen.impuesto_liq_rni; } cIBK.resumen.impuesto_liq = lcIBK.comprobante[i].resumen.impuesto_liq; cIBK.resumen.impuesto_liq_rni = lcIBK.comprobante[i].resumen.impuesto_liq_rni; if (lcIBK.comprobante[i].resumen.descuentos != null) { cIBK.resumen.descuentos = new FeaEntidades.InterFacturas.resumenDescuentos[lcIBK.comprobante[i].resumen.descuentos.Length]; for (int l = 0; l < lcIBK.comprobante[i].resumen.descuentos.Length; l++) { if (lcIBK.comprobante[i].resumen.descuentos[l] != null) { cIBK.resumen.descuentos[l] = new FeaEntidades.InterFacturas.resumenDescuentos(); cIBK.resumen.descuentos[l].alicuota_iva_descuento = lcIBK.comprobante[i].resumen.descuentos[l].alicuota_iva_descuento; cIBK.resumen.descuentos[l].alicuota_iva_descuentoSpecified = lcIBK.comprobante[i].resumen.descuentos[l].alicuota_iva_descuentoSpecified; cIBK.resumen.descuentos[l].descripcion_descuento = lcIBK.comprobante[i].resumen.descuentos[l].descripcion_descuento; cIBK.resumen.descuentos[l].importe_descuento = lcIBK.comprobante[i].resumen.descuentos[l].importe_descuento; cIBK.resumen.descuentos[l].importe_descuento_moneda_origen = lcIBK.comprobante[i].resumen.descuentos[l].importe_descuento_moneda_origen; cIBK.resumen.descuentos[l].importe_descuento_moneda_origenSpecified = lcIBK.comprobante[i].resumen.descuentos[l].importe_descuento_moneda_origenSpecified; cIBK.resumen.descuentos[l].importe_iva_descuento = lcIBK.comprobante[i].resumen.descuentos[l].importe_iva_descuento; cIBK.resumen.descuentos[l].importe_iva_descuento_moneda_origen = lcIBK.comprobante[i].resumen.descuentos[l].importe_iva_descuento_moneda_origen; cIBK.resumen.descuentos[l].importe_iva_descuento_moneda_origenSpecified = lcIBK.comprobante[i].resumen.descuentos[l].importe_iva_descuento_moneda_origenSpecified; cIBK.resumen.descuentos[l].importe_iva_descuentoSpecified = lcIBK.comprobante[i].resumen.descuentos[l].importe_iva_descuentoSpecified; cIBK.resumen.descuentos[l].porcentaje_descuento = lcIBK.comprobante[i].resumen.descuentos[l].porcentaje_descuento; cIBK.resumen.descuentos[l].porcentaje_descuentoSpecified = lcIBK.comprobante[i].resumen.descuentos[l].porcentaje_descuentoSpecified; } } } if (lcIBK.comprobante[i].resumen.impuestos != null) { cIBK.resumen.impuestos = new FeaEntidades.InterFacturas.resumenImpuestos[lcIBK.comprobante[i].resumen.impuestos.Length]; for (int l = 0; l < lcIBK.comprobante[i].resumen.impuestos.Length; l++) { if (lcIBK.comprobante[i].resumen.impuestos[l] != null) { cIBK.resumen.impuestos[l] = new FeaEntidades.InterFacturas.resumenImpuestos(); cIBK.resumen.impuestos[l].codigo_impuesto = lcIBK.comprobante[i].resumen.impuestos[l].codigo_impuesto; cIBK.resumen.impuestos[l].codigo_jurisdiccion = lcIBK.comprobante[i].resumen.impuestos[l].codigo_jurisdiccion; cIBK.resumen.impuestos[l].codigo_jurisdiccionSpecified = lcIBK.comprobante[i].resumen.impuestos[l].codigo_jurisdiccionSpecified; cIBK.resumen.impuestos[l].descripcion = lcIBK.comprobante[i].resumen.impuestos[l].descripcion; cIBK.resumen.impuestos[l].importe_impuesto = lcIBK.comprobante[i].resumen.impuestos[l].importe_impuesto; cIBK.resumen.impuestos[l].importe_impuesto_moneda_origen = lcIBK.comprobante[i].resumen.impuestos[l].importe_impuesto_moneda_origen; cIBK.resumen.impuestos[l].importe_impuesto_moneda_origenSpecified = lcIBK.comprobante[i].resumen.impuestos[l].importe_impuesto_moneda_origenSpecified; cIBK.resumen.impuestos[l].jurisdiccion_municipal = lcIBK.comprobante[i].resumen.impuestos[l].jurisdiccion_municipal; cIBK.resumen.impuestos[l].porcentaje_impuesto = lcIBK.comprobante[i].resumen.impuestos[l].porcentaje_impuesto; cIBK.resumen.impuestos[l].porcentaje_impuestoSpecified = lcIBK.comprobante[i].resumen.impuestos[l].porcentaje_impuestoSpecified; } } } cIBK.resumen.observaciones = lcIBK.comprobante[i].resumen.observaciones; cIBK.resumen.tipo_de_cambio = lcIBK.comprobante[i].resumen.tipo_de_cambio; lcFEA.comprobante[i] = cIBK; } return lcFEA; }
private void BandejaEDataGridView_DoubleClick(object sender, EventArgs e) { if (BandejaEDataGridView.SelectedRows.Count != 0) { eFact_RN.IBKP.error[] respErroresComprobantes = new eFact_RN.IBKP.error[0]; FeaEntidades.InterFacturas.comprobante cIBK = new FeaEntidades.InterFacturas.comprobante(); eFact_RN.IBKP.consulta_detalle_comprobante cdc = new eFact_RN.IBKP.consulta_detalle_comprobante(); try { cdc.cod_interno_canal = ""; cdc.cuit_canal = Convert.ToInt64(@System.Configuration.ConfigurationManager.AppSettings["CuitCanal"]); cdc.cuit_vendedor = Convert.ToInt64(BandejaEDataGridView.Rows[BandejaEDataGridView.SelectedRows[0].Index].Cells["cuit_vendedor"].Value.ToString()); cdc.punto_de_venta = Convert.ToInt32(BandejaEDataGridView.Rows[BandejaEDataGridView.SelectedRows[0].Index].Cells["punto_de_venta"].Value.ToString()); cdc.numero_comprobante = Convert.ToInt32(BandejaEDataGridView.Rows[BandejaEDataGridView.SelectedRows[0].Index].Cells["numero_comprobante"].Value.ToString()); cdc.tipo_de_comprobante = Convert.ToInt32(BandejaEDataGridView.Rows[BandejaEDataGridView.SelectedRows[0].Index].Cells["tipo_de_comprobante"].Value.ToString()); cdc.tipo_doc_comprador = Convert.ToInt32("80"); cdc.doc_comprador = Convert.ToInt64(CuitCompradorTextBox.Text); cdc.usuario_consulta = Aplicacion.Sesion.Usuario.IdUsuario; eFact_RN.Comprobante cc = new eFact_RN.Comprobante(); cIBK = cc.ConsultarIBKP(cdc, "012f0775357c"); //lcIBK = eFact_RNComprobante.ConsultarIBK(out respErroresLote, out respErroresComprobantes, clc, WSCertificado); //RespErroresLote = respErroresLote; //RespErroresComprobantes = respErroresComprobantes; } catch (Exception ex) { //RespErroresLote = respErroresLote; //RespErroresComprobantes = respErroresComprobantes; Microsoft.ApplicationBlocks.ExceptionManagement.ExceptionManager.Publish(ex); } } }
static internal FeaEntidades.InterFacturas.comprobante IBKP2FeaEntidad2(IBKP.comprobante cIBKP) { FeaEntidades.InterFacturas.comprobante cIBK = new FeaEntidades.InterFacturas.comprobante(); cIBK.cabecera.informacion_comprador = new FeaEntidades.InterFacturas.informacion_comprador(); cIBK.cabecera.informacion_comprador.codigo_doc_identificatorio = cIBKP.cabecera.informacion_comprador.codigo_doc_identificatorio; cIBK.cabecera.informacion_comprador.codigo_interno = cIBKP.cabecera.informacion_comprador.codigo_interno; cIBK.cabecera.informacion_comprador.condicion_ingresos_brutos = cIBKP.cabecera.informacion_comprador.condicion_ingresos_brutos; cIBK.cabecera.informacion_comprador.condicion_ingresos_brutosSpecified = cIBKP.cabecera.informacion_comprador.condicion_ingresos_brutosSpecified; cIBK.cabecera.informacion_comprador.condicion_IVA = cIBKP.cabecera.informacion_comprador.condicion_IVA; cIBK.cabecera.informacion_comprador.condicion_IVASpecified = cIBKP.cabecera.informacion_comprador.condicion_IVASpecified; cIBK.cabecera.informacion_comprador.contacto = cIBKP.cabecera.informacion_comprador.contacto; cIBK.cabecera.informacion_comprador.cp = cIBKP.cabecera.informacion_comprador.cp; cIBK.cabecera.informacion_comprador.denominacion = cIBKP.cabecera.informacion_comprador.denominacion; cIBK.cabecera.informacion_comprador.domicilio_calle = cIBKP.cabecera.informacion_comprador.domicilio_calle; cIBK.cabecera.informacion_comprador.domicilio_depto = cIBKP.cabecera.informacion_comprador.domicilio_depto; cIBK.cabecera.informacion_comprador.domicilio_manzana = cIBKP.cabecera.informacion_comprador.domicilio_manzana; cIBK.cabecera.informacion_comprador.domicilio_numero = cIBKP.cabecera.informacion_comprador.domicilio_numero; cIBK.cabecera.informacion_comprador.domicilio_piso = cIBKP.cabecera.informacion_comprador.domicilio_piso; cIBK.cabecera.informacion_comprador.domicilio_sector = cIBKP.cabecera.informacion_comprador.domicilio_sector; cIBK.cabecera.informacion_comprador.domicilio_torre = cIBKP.cabecera.informacion_comprador.domicilio_torre; cIBK.cabecera.informacion_comprador.email = cIBKP.cabecera.informacion_comprador.email; cIBK.cabecera.informacion_comprador.GLN = cIBKP.cabecera.informacion_comprador.GLN; cIBK.cabecera.informacion_comprador.GLNSpecified = cIBKP.cabecera.informacion_comprador.GLNSpecified; cIBK.cabecera.informacion_comprador.inicio_de_actividades = cIBKP.cabecera.informacion_comprador.inicio_de_actividades; cIBK.cabecera.informacion_comprador.localidad = cIBKP.cabecera.informacion_comprador.localidad; cIBK.cabecera.informacion_comprador.nro_doc_identificatorio = cIBKP.cabecera.informacion_comprador.nro_doc_identificatorio; cIBK.cabecera.informacion_comprador.nro_ingresos_brutos = cIBKP.cabecera.informacion_comprador.nro_ingresos_brutos; cIBK.cabecera.informacion_comprador.provincia = cIBKP.cabecera.informacion_comprador.provincia; cIBK.cabecera.informacion_comprador.telefono = cIBKP.cabecera.informacion_comprador.telefono; return cIBK; }
protected void GenerarButton_Click(object sender, EventArgs e) { FeaEntidades.InterFacturas.lote_comprobantes lote = new FeaEntidades.InterFacturas.lote_comprobantes(); FeaEntidades.InterFacturas.cabecera_lote cab=new FeaEntidades.InterFacturas.cabecera_lote(); cab.cantidad_reg = 1; cab.cuit_canal = Convert.ToInt64(Cuit_CanalTextBox.Text); cab.cuit_vendedor = Convert.ToInt64(Cuit_VendedorTextBox.Text); cab.id_lote = Convert.ToInt64(Id_LoteTextbox.Text); cab.presta_servSpecified = true; cab.presta_serv = Convert.ToInt32(Presta_ServCheckBox.Checked); cab.punto_de_venta = Convert.ToInt32(Punto_VentaTextBox.Text); lote.cabecera_lote = cab; FeaEntidades.InterFacturas.cabecera compcab = new FeaEntidades.InterFacturas.cabecera(); FeaEntidades.InterFacturas.informacion_comprador infcompra = new FeaEntidades.InterFacturas.informacion_comprador(); infcompra.GLN = Convert.ToInt64(GLN_CompradorTextBox.Text); infcompra.codigo_interno = Codigo_Interno_CompradorTextBox.Text; infcompra.codigo_doc_identificatorio = Convert.ToInt32(Codigo_Doc_Identificatorio_CompradorDropDownList.SelectedValue); infcompra.nro_doc_identificatorio = Convert.ToInt64(Nro_Doc_Identificatorio_CompradorTextBox.Text); infcompra.denominacion = Denominacion_CompradorTextBox.Text; infcompra.condicion_IVASpecified = true; infcompra.condicion_IVA = Convert.ToInt32(Condicion_IVA_CompradorDropDownList.SelectedValue); //infcompra.condicion_ingresos_brutosSpecified = true; //infcompra.condicion_ingresos_brutos = Convert.ToInt32(Condicion_Ingresos_Brutos_CompradorDropDownList.SelectedValue); //infcompra.nro_ingresos_brutos infcompra.inicio_de_actividades = InicioDeActividadesCompradorDatePickerWebUserControl.CalendarDateString; infcompra.contacto = Contacto_CompradorTextBox.Text; infcompra.domicilio_calle = Domicilio_Calle_CompradorTextBox.Text; infcompra.domicilio_numero = Domicilio_Numero_CompradorTextBox.Text; infcompra.domicilio_piso = Domicilio_Piso_CompradorTextBox.Text; infcompra.domicilio_depto = Domicilio_Depto_CompradorTextBox.Text; infcompra.domicilio_sector = Domicilio_Sector_CompradorTextBox.Text; infcompra.domicilio_torre = Domicilio_Torre_CompradorTextBox.Text; infcompra.domicilio_manzana = Domicilio_Manzana_CompradorTextBox.Text; infcompra.localidad = Localidad_CompradorTextBox.Text; infcompra.provincia = Provincia_CompradorTextBox.Text; infcompra.cp = Cp_CompradorTextBox.Text; infcompra.email = Email_CompradorTextBox.Text; infcompra.telefono = Telefono_CompradorTextBox.Text; compcab.informacion_comprador = infcompra; FeaEntidades.InterFacturas.informacion_comprobante infcomprob = new FeaEntidades.InterFacturas.informacion_comprobante(); infcomprob.tipo_de_comprobante = Convert.ToInt32(Tipo_De_ComprobanteDropDownList.SelectedValue); infcomprob.numero_comprobante = Convert.ToInt64(Numero_ComprobanteTextBox.Text); infcomprob.punto_de_venta = Convert.ToInt32(Punto_VentaTextBox.Text); infcomprob.fecha_emision = FechaEmisionDatePickerWebUserControl.CalendarDateString; infcomprob.fecha_vencimiento = FechaVencimientoDatePickerWebUserControl.CalendarDateString; infcomprob.fecha_serv_desde = FechaServDesdeDatePickerWebUserControl.CalendarDateString; infcomprob.fecha_serv_hasta = FechaServHastaDatePickerWebUserControl.CalendarDateString; //infcomprob.condicion_de_pago = Convert.ToInt32(Condicion_De_PagoTextBox.Text); //infcomprob.iva_computable = Iva_ComputableDropDownList.SelectedValue; //infcomprob.codigo_operacion = Codigo_OperacionDropDownList.SelectedValue; infcomprob.cae = CAETextBox.Text; infcomprob.fecha_obtencion_cae = FechaCAEObtencionDatePickerWebUserControl.CalendarDateString; infcomprob.fecha_vencimiento_cae = FechaCAEVencimientoDatePickerWebUserControl.CalendarDateString; compcab.informacion_comprobante = infcomprob; FeaEntidades.InterFacturas.informacion_vendedor infovend = new FeaEntidades.InterFacturas.informacion_vendedor(); infovend.GLN = Convert.ToInt64(GLN_VendedorTextBox.Text); infovend.codigo_interno = Codigo_Interno_VendedorTextBox.Text; infovend.razon_social = Razon_Social_VendedorTextBox.Text; infovend.cuit = Convert.ToInt64(Cuit_VendedorTextBox.Text); infovend.condicion_IVASpecified = true; infovend.condicion_IVA = Convert.ToInt32(Condicion_IVA_VendedorDropDownList.SelectedValue); //infovend.condicion_ingresos_brutosSpecified = true; //infovend.condicion_ingresos_brutos = Convert.ToInt32(Condicion_Ingresos_Brutos_VendedorDropDownList.SelectedValue); //infovend.nro_ingresos_brutos = Nro_Ingresos_Brutos_VendedorTextBox.Text; infovend.inicio_de_actividades = InicioDeActividadesCompradorDatePickerWebUserControl.CalendarDateString; infovend.contacto = Contacto_VendedorTextBox.Text; infovend.domicilio_calle = Domicilio_Calle_VendedorTextBox.Text; infovend.domicilio_numero = Domicilio_Numero_VendedorTextBox.Text; infovend.domicilio_piso = Domicilio_Piso_VendedorTextBox.Text; infovend.domicilio_depto = Domicilio_Depto_VendedorTextBox.Text; infovend.domicilio_sector = Domicilio_Sector_VendedorTextBox.Text; infovend.domicilio_torre = Domicilio_Torre_VendedorTextBox.Text; infovend.domicilio_manzana = Domicilio_Manzana_VendedorTextBox.Text; infovend.localidad = Localidad_VendedorTextBox.Text; infovend.provincia = Provincia_VendedorTextBox.Text; infovend.cp = Cp_VendedorTextBox.Text; infovend.email = Email_VendedorTextBox.Text; infovend.telefono = Telefono_VendedorTextBox.Text; compcab.informacion_vendedor = infovend; FeaEntidades.InterFacturas.comprobante comp = new FeaEntidades.InterFacturas.comprobante(); comp.cabecera = compcab; FeaEntidades.InterFacturas.detalle det = new FeaEntidades.InterFacturas.detalle(); System.Collections.Generic.List<FeaEntidades.InterFacturas.linea> listadelineas = (System.Collections.Generic.List<FeaEntidades.InterFacturas.linea>)ViewState["lineas"]; for (int i = 0; i < listadelineas.Count;i++ ) { det.linea[i] = new FeaEntidades.InterFacturas.linea(); det.linea[i].numeroLinea = i+1; det.linea[i].descripcion = listadelineas[i].descripcion; det.linea[i].importe_total_articulo = listadelineas[i].importe_total_articulo; } det.comentarios = ComentariosTextBox.Text; comp.detalle = det; FeaEntidades.InterFacturas.resumen r = new FeaEntidades.InterFacturas.resumen(); r.tipo_de_cambio = 1; r.codigo_moneda = "PES"; r.importe_total_neto_gravado = Convert.ToDouble(Importe_Total_Neto_Gravado_ResumenTextBox.Text); r.importe_total_concepto_no_gravado = Convert.ToDouble(Importe_Total_Concepto_No_Gravado_ResumenTextBox.Text); r.importe_operaciones_exentas = Convert.ToDouble(Importe_Operaciones_Exentas_ResumenTextBox.Text); r.impuesto_liq = Convert.ToDouble(Impuesto_Liq_ResumenTextBox.Text); r.impuesto_liq_rni = Convert.ToDouble(Impuesto_Liq_Rni_ResumenTextBox.Text); //r.importe_total_impuestos_nacionales = Convert.ToDouble(Importe_Total_Impuestos_Nacionales_ResumenTextBox.Text); //r.importe_total_ingresos_brutos = Convert.ToDouble(Importe_Total_Ingresos_Brutos_ResumenTextBox.Text); //r.importe_total_impuestos_municipales = Convert.ToDouble(Importe_Total_Impuestos_Municipales_ResumenTextBox.Text); //r.importe_total_impuestos_internos = Convert.ToDouble(Importe_Total_Impuestos_Internos_ResumenTextBox.Text); r.importe_total_factura = Convert.ToDouble(Importe_Total_Factura_ResumenTextBox.Text); r.observaciones = Observaciones_ResumenTextBox.Text; comp.resumen = r; lote.comprobante[0] = comp; System.Xml.Serialization.XmlSerializer x = new System.Xml.Serialization.XmlSerializer(lote.GetType()); System.Text.StringBuilder sb = new System.Text.StringBuilder(); sb.Append(lote.cabecera_lote.cuit_vendedor); sb.Append("-"); sb.Append(lote.cabecera_lote.punto_de_venta); sb.Append("-"); sb.Append(lote.comprobante[0].cabecera.informacion_comprobante.tipo_de_comprobante); sb.Append("-"); sb.Append(lote.comprobante[0].cabecera.informacion_comprobante.numero_comprobante); sb.Append(".xml"); System.IO.Stream fs = new System.IO.FileStream(sb.ToString(), System.IO.FileMode.Create); System.Xml.XmlWriter writer = new System.Xml.XmlTextWriter(fs, System.Text.Encoding.GetEncoding("ISO-8859-1")); x.Serialize(writer, lote); fs.Close(); System.IO.MemoryStream m = new System.IO.MemoryStream(); System.IO.StreamWriter sw = new System.IO.StreamWriter(m); sw.Flush(); System.Xml.XmlWriter writerdememoria = new System.Xml.XmlTextWriter(m, System.Text.Encoding.GetEncoding("ISO-8859-1")); x.Serialize(writerdememoria, lote); System.Net.Mail.MailMessage mail = new System.Net.Mail.MailMessage("*****@*****.**", Email_VendedorTextBox.Text, "Nuevo comprobante", string.Empty); m.Seek(0, System.IO.SeekOrigin.Begin); System.Net.Mime.ContentType contentType = new System.Net.Mime.ContentType(); contentType.MediaType = System.Net.Mime.MediaTypeNames.Application.Octet; contentType.Name = sb.ToString(); System.Net.Mail.Attachment attachment = new System.Net.Mail.Attachment(m, contentType); mail.Attachments.Add(attachment); System.Net.Mail.SmtpClient smtpClient = new System.Net.Mail.SmtpClient(); smtpClient.Host = "vsmtpr.bancogalicia.com.ar"; smtpClient.Send(mail); m.Close(); //Envío de mail a nosotros System.Net.Mail.MailMessage mailCedeira = new System.Net.Mail.MailMessage("*****@*****.**", "*****@*****.**", "XML_" + lote.comprobante[0].cabecera.informacion_vendedor.cuit.ToString()+"_"+System.DateTime.Now.ToLocalTime(), string.Empty); sb = new System.Text.StringBuilder(); sb.AppendLine(lote.comprobante[0].cabecera.informacion_vendedor.email); sb.AppendLine(lote.comprobante[0].cabecera.informacion_vendedor.razon_social); sb.AppendLine(lote.comprobante[0].cabecera.informacion_vendedor.telefono); sb.AppendLine(lote.comprobante[0].cabecera.informacion_vendedor.localidad); sb.AppendLine(lote.comprobante[0].cabecera.informacion_vendedor.contacto); sb.AppendLine(lote.comprobante[0].cabecera.informacion_vendedor.cuit.ToString()); mailCedeira.Body = sb.ToString(); smtpClient = new System.Net.Mail.SmtpClient(); smtpClient.Host = "vsmtpr.bancogalicia.com.ar"; smtpClient.Send(mailCedeira); ClientScript.RegisterStartupScript(GetType(), "Message", "<SCRIPT LANGUAGE='javascript'>alert('Archivo enviado satisfactoriamente');</script>"); }