예제 #1
0
        private void AsignarCamposOpcionales(FeaEntidades.Reporte.lote_comprobantes lc)
        {
            eFact_RN.Engine engine = new eFact_RN.Engine();
            if (lc.comprobante[0].cabecera.informacion_comprobante.fecha_vencimiento == null)
            {
                lc.comprobante[0].cabecera.informacion_comprobante.fecha_vencimiento = string.Empty;
            }
            if (lc.comprobante[0].cabecera.informacion_comprobante.fecha_vencimiento_cae == null)
            {
                lc.comprobante[0].cabecera.informacion_comprobante.fecha_vencimiento_cae = string.Empty;
            }
            if (lc.cabecera_lote.presta_servSpecified == false)
            {
                lc.cabecera_lote.presta_serv = 0;
                lc.cabecera_lote.presta_servSpecified = true;
            }
            if (lc.comprobante[0].cabecera.informacion_comprobante.condicion_de_pago == null)
            {
                lc.comprobante[0].cabecera.informacion_comprobante.condicion_de_pago = "";
                lc.comprobante[0].cabecera.informacion_comprobante.condicion_de_pagoSpecified = true;
            }
            if (lc.comprobante[0].cabecera.informacion_comprobante.motivo == null)
            {
                lc.comprobante[0].cabecera.informacion_comprobante.motivo = "";
            }
            if (lc.comprobante[0].cabecera.informacion_comprobante.fecha_serv_desde == null)
            {
                lc.comprobante[0].cabecera.informacion_comprobante.fecha_serv_desde = "";
            }
            if (lc.comprobante[0].cabecera.informacion_comprobante.fecha_serv_hasta == null)
            {
                lc.comprobante[0].cabecera.informacion_comprobante.fecha_serv_hasta = "";
            }
            lc.comprobante[0].cabecera.informacion_comprobante.condicion_de_pagoSpecified = true;
            lc.comprobante[0].cabecera.informacion_vendedor.condicion_ingresos_brutosSpecified = true;
            lc.comprobante[0].cabecera.informacion_vendedor.condicion_IVASpecified = true;
            if (lc.comprobante[0].cabecera.informacion_vendedor.domicilio_calle == null)
            {
                lc.comprobante[0].cabecera.informacion_vendedor.domicilio_calle = string.Empty;
            }
            if (lc.comprobante[0].cabecera.informacion_vendedor.provincia == null)
            {
                lc.comprobante[0].cabecera.informacion_vendedor.provincia = string.Empty;
            }
            if (lc.comprobante[0].cabecera.informacion_vendedor.domicilio_piso == null)
            {
                lc.comprobante[0].cabecera.informacion_vendedor.domicilio_piso = string.Empty;
            }
            if (lc.comprobante[0].cabecera.informacion_vendedor.domicilio_numero == null)
            {
                lc.comprobante[0].cabecera.informacion_vendedor.domicilio_numero = string.Empty;
            }
            lc.comprobante[0].cabecera.informacion_comprador.condicion_ingresos_brutosSpecified = true;
            lc.comprobante[0].cabecera.informacion_comprador.condicion_IVASpecified = true;
            if (lc.comprobante[0].cabecera.informacion_comprador.domicilio_calle == null)
            {
                lc.comprobante[0].cabecera.informacion_comprador.domicilio_calle = string.Empty;
            }
            if (lc.comprobante[0].cabecera.informacion_comprador.domicilio_numero == null)
            {
                lc.comprobante[0].cabecera.informacion_comprador.domicilio_numero = string.Empty;
            }
            if (lc.comprobante[0].cabecera.informacion_comprador.domicilio_piso == null)
            {
                lc.comprobante[0].cabecera.informacion_comprador.domicilio_piso = string.Empty;
            }
            if (lc.comprobante[0].cabecera.informacion_comprador.domicilio_depto == null)
            {
                lc.comprobante[0].cabecera.informacion_comprador.domicilio_depto = string.Empty;
            }
            if (lc.comprobante[0].cabecera.informacion_comprador.domicilio_sector == null)
            {
                lc.comprobante[0].cabecera.informacion_comprador.domicilio_sector = string.Empty;
            }
            if (lc.comprobante[0].cabecera.informacion_comprador.domicilio_torre == null)
            {
                lc.comprobante[0].cabecera.informacion_comprador.domicilio_torre = string.Empty;
            }
            if (lc.comprobante[0].cabecera.informacion_comprador.domicilio_manzana == null)
            {
                lc.comprobante[0].cabecera.informacion_comprador.domicilio_manzana = string.Empty;
            }
            if (lc.comprobante[0].cabecera.informacion_comprador.provincia == null)
            {
                lc.comprobante[0].cabecera.informacion_comprador.provincia = string.Empty;
            }
            if (lc.comprobante[0].cabecera.informacion_comprador.localidad == null)
            {
                lc.comprobante[0].cabecera.informacion_comprador.localidad = string.Empty;
            }
            if (lc.comprobante[0].cabecera.informacion_comprador.cp == null)
            {
                lc.comprobante[0].cabecera.informacion_comprador.cp = string.Empty;
            }
            if (lc.comprobante[0].cabecera.informacion_comprador.contacto == null)
            {
                lc.comprobante[0].cabecera.informacion_comprador.contacto = string.Empty;
            }
            if (lc.comprobante[0].cabecera.informacion_comprador.email == null)
            {
                lc.comprobante[0].cabecera.informacion_comprador.email = string.Empty;
            }
            if (lc.comprobante[0].cabecera.informacion_comprador.telefono == null)
            {
                lc.comprobante[0].cabecera.informacion_comprador.telefono = string.Empty;
            }
            if (lc.comprobante[0].resumen.impuestos != null)
            {
                for (int i = 0; i < lc.comprobante[0].resumen.impuestos.Length; i++)
                {
                    if (lc.comprobante[0].resumen.impuestos[i].descripcion == null)
                    {
                        lc.comprobante[0].resumen.impuestos[i].descripcion = "";
                    }
                    lc.comprobante[0].resumen.impuestos[i].codigo_jurisdiccionSpecified = true;
                    lc.comprobante[0].resumen.impuestos[i].importe_impuesto_moneda_origenSpecified = true;
                    lc.comprobante[0].resumen.impuestos[i].porcentaje_impuestoSpecified = true;
                }
            }
            else
            {
                //Exportacion no usa impuestos. Crear uno en cero.
                lc.comprobante[0].resumen.impuestos = new FeaEntidades.Reporte.resumenImpuestos[1];
                lc.comprobante[0].resumen.impuestos[0] = new FeaEntidades.Reporte.resumenImpuestos();
                lc.comprobante[0].resumen.impuestos[0].descripcion = "";
                lc.comprobante[0].resumen.impuestos[0].codigo_jurisdiccionSpecified = true;
                lc.comprobante[0].resumen.impuestos[0].importe_impuesto_moneda_origenSpecified = true;
                lc.comprobante[0].resumen.impuestos[0].porcentaje_impuestoSpecified = true;
            }
            lc.comprobante[0].resumen.cant_alicuotas_ivaSpecified = true;
            lc.comprobante[0].resumen.importe_total_impuestos_internosSpecified = true;
            lc.comprobante[0].resumen.importe_total_impuestos_municipalesSpecified = true;
            lc.comprobante[0].resumen.importe_total_impuestos_nacionalesSpecified = true;
            lc.comprobante[0].resumen.importe_total_ingresos_brutosSpecified = true;
            if (lc.comprobante[0].resumen.descuentos == null)
            {
                lc.comprobante[0].resumen.descuentos = new FeaEntidades.Reporte.resumenDescuentos[1];
                lc.comprobante[0].resumen.descuentos[0] = new FeaEntidades.Reporte.resumenDescuentos();
                lc.comprobante[0].resumen.descuentos[0].alicuota_iva_descuentoSpecified = true;
                lc.comprobante[0].resumen.descuentos[0].importe_iva_descuentoSpecified = true;
            }
            if (lc.comprobante[0].extensiones != null)
            {
                if (lc.comprobante[0].extensiones.extensiones_datos_comerciales == null)
                {
                    lc.comprobante[0].extensiones.extensiones_datos_comerciales = string.Empty;
                }
                else
                {
                    lc.comprobante[0].extensiones.extensiones_datos_comerciales = engine.HexToString(lc.comprobante[0].extensiones.extensiones_datos_comerciales.ToString());
                }
            }
            for (int i = 0; i < lc.comprobante[0].detalle.linea.Length; i++)
            {
                if (lc.comprobante[0].detalle.linea[i] != null)
                {
                    if (lc.comprobante[0].detalle.linea[i].descripcion.Substring(0, 1) == "%")
                    {
                        lc.comprobante[0].detalle.linea[i].descripcion = engine.HexToString(lc.comprobante[0].detalle.linea[i].descripcion);
                    }
                    if (lc.comprobante[0].detalle.linea[i].importes_moneda_origen == null)
                    {
                        lc.comprobante[0].detalle.linea[i].importes_moneda_origen = new FeaEntidades.Reporte.lineaImportes_moneda_origen();
                    }
                    lc.comprobante[0].detalle.linea[i].importes_moneda_origen.importe_ivaSpecified = true;
                    lc.comprobante[0].detalle.linea[i].importes_moneda_origen.importe_total_articuloSpecified = true;
                    lc.comprobante[0].detalle.linea[i].importes_moneda_origen.precio_unitarioSpecified = true;

                    lc.comprobante[0].detalle.linea[i].importe_total_descuentosSpecified = true;

                    if (lc.comprobante[0].detalle.linea[i].codigo_producto_vendedor == null)
                    {
                        lc.comprobante[0].detalle.linea[i].codigo_producto_vendedor = "";
                    }
                    lc.comprobante[0].detalle.linea[i].precio_unitarioSpecified = true;
                    lc.comprobante[0].detalle.linea[i].importe_ivaSpecified = true;
                    if (lc.comprobante[0].detalle.linea[i].alicuota_ivaSpecified.Equals(false))
                    {
                        lc.comprobante[0].detalle.linea[i].alicuota_ivaSpecified = true;
                        lc.comprobante[0].detalle.linea[i].alicuota_iva = 99;
                    }
                    lc.comprobante[0].detalle.linea[i].cantidadSpecified = true;

                    if (lc.comprobante[0].detalle.linea[i].unidad == null)
                    {
                        lc.comprobante[0].detalle.linea[i].unidad = string.Empty;
                    }
                    if (lc.comprobante[0].detalle.linea[i].indicacion_exento_gravado == null)
                    {
                        lc.comprobante[0].detalle.linea[i].indicacion_exento_gravado = string.Empty;
                    }
                }
                else
                {
                    break;
                }
            }
        }