コード例 #1
0
        public CAERespuestaFex ObtenerCaeWSFEX( Autorizacion autorizacion, FexCabecera cabFex )
        {
            long ultimoNro = this.UltimoComprobanteFex( autorizacion, cabFex.PuntoDeVenta, cabFex.TipoComprobante );

            WrapperCabeceraFex wr = new WrapperCabeceraFex();

            ServidorFacturaElectronicaExportacion sfex = new ServidorFacturaElectronicaExportacion( this.wsfex, this.logueador );
            CAERespuestaFex respuesta = null;
            cabFex.Id = this.ObtenerIdFex( cabFex, ultimoNro, autorizacion );
            List<Observacion> diferencias;
            try
            {
                this.logueador.Loguear( "Consultando Afip....." );
                this.logueador.Loguear( cabFex.Serializar() );

                respuesta = sfex.ObtenerCae( autorizacion, cabFex );

                this.logueador.Loguear( "Respuesta Afip......." );
                this.logueador.Loguear( respuesta.Serializar() );

                if ( cabFex.ComprobanteNumero <= ultimoNro )
                {
                    ConsultasWSFex consulta = new ConsultasWSFex( wsfex );
                    ClsFEXGetCMPR comprobanteAfip = consulta.DatosDeComprobante( autorizacion, cabFex.TipoComprobante, cabFex.ComprobanteNumero, cabFex.PuntoDeVenta );
                    // Aca comparo los comprobantes y y si hay diferencias lo rechazo
                    diferencias = wr.Comparar( comprobanteAfip, cabFex );

                    if ( diferencias.Count > 0 )
                    {
                        respuesta.MotivosObservaciones = "Diferencias en comprobante.";
                        respuesta.Observaciones = diferencias;
                        respuesta.Resultado = "R";
                        respuesta.Cae = "";
                    }
                }
            }
            catch ( ExcepcionFe ex )
            {
                this.MensajeDeError = ex.Message;
                throw ex;
            }

            return respuesta;
        }
コード例 #2
0
        public List<CAERespuestaFex> ObtenerCaeWSFEX( Autorizacion aut, List<FexCabecera> comprobantes )
        {
            long ultimoNro = this.UltimoComprobanteFex( aut, comprobantes[0].PuntoDeVenta, comprobantes[0].TipoComprobante );

            ServidorFacturaElectronicaExportacion sfex = new ServidorFacturaElectronicaExportacion( this.wsfex, this.logueador );
            List<CAERespuestaFex> retorno = new List<CAERespuestaFex>();
            CAERespuestaFex respuesta = null;

            foreach ( FexCabecera comprobante in comprobantes )
            {
                respuesta = this.ObtenerCaeWSFEX( aut, comprobante );
                retorno.Add( respuesta );
            }

            return retorno;
        }