Пример #1
0
        private String SubeArchivo(int indice)
        {
            if (Request.Files.Count > 0)
            {
                var archivo = Request.Files[indice];
                if (archivo.ContentLength > 0)
                {
                    var operacionesStreams = new OperacionesStreams();
                    var nombreArchivo      = Path.GetFileName(archivo.FileName);

                    var    pathDestino = Path.Combine(Server.MapPath("~/Archivos/CargasMasivas/"), archivo.FileName);
                    Stream fileStream  = archivo.InputStream;
                    var    mStreamer   = new MemoryStream();
                    mStreamer.SetLength(fileStream.Length);
                    fileStream.Read(mStreamer.GetBuffer(), 0, (int)fileStream.Length);
                    mStreamer.Seek(0, SeekOrigin.Begin);
                    operacionesStreams.StreamArchivo(mStreamer, pathDestino);
                    return(pathDestino);
                }
            }
            throw new Exception("Favor de cargar por lo menos un archivo");
        }
Пример #2
0
        public void ProcesarArchivoExterno()
        {
            //Console.WriteLine("***************Inicio Cola***************");
            LogicaFacadeFacturas   _logicaFacade;
            AplicacionContext      _db                     = new AplicacionContext();
            ManejoArchivos         _manejoArchivos         = new ManejoArchivos();
            OperacionesStreams     _operacionesStreams     = new OperacionesStreams();
            SolicitudArchivosXsa   _solicitudArchivosXsa   = new SolicitudArchivosXsa();
            ObtenerConfiguraciones _obtenerConfiguraciones = new ObtenerConfiguraciones();
            //var pathArchivosSftp = Properties.Settings.Default.PathSftp;
            var pathArchivosExternos = Properties.Settings.Default.PathArchivos;
            var archivos             = new List <String>();
            var obtenerArchivos      = new ObtenerArchivosLocales(pathArchivosExternos);

            archivos = obtenerArchivos.ObtenerArchivos();

            foreach (var archivo in archivos.Where(a => a.Contains(".xml") || a.Contains(".XML")))
            {
                Console.WriteLine("**************Procesando archivos**************");
                Console.WriteLine("{0}", archivo);

                try
                {
                    _logicaFacade = new LogicaFacadeFacturas();

                    Console.WriteLine("Inicio: {0}", DateTime.Now);
                    _logicaFacade.Decodificar(archivo);
                    Console.WriteLine("Fin: {0}", DateTime.Now);
                }
                catch (Exception ex)
                {
                    Console.WriteLine("Error: {0}", ex.Message);
                    _manejoArchivos.MoverErroneo(archivo);
                }
                Console.WriteLine("**************Finalizando Proceso de Archivos**************");
                Console.WriteLine("");
            }
        }
Пример #3
0
        private void PopularArchivos(ref FacturaRecibida facturaRecibida)
        {
            if (Request.Files.Count > 0)
            {
                for (int i = 0; i < Request.Files.Count; i++)
                {
                    if (Request.Files[i].ContentLength > 0)
                    {
                        var operacionesStreams = new OperacionesStreams();
                        var nombreArchivo      = Path.GetFileName(Request.Files[i].FileName);

                        var    pathDestino = Path.Combine(Server.MapPath("~/Archivos/Validaciones/"), Request.Files[i].FileName);
                        Stream fileStream  = Request.Files[i].InputStream;
                        var    mStreamer   = new MemoryStream();
                        mStreamer.SetLength(fileStream.Length);
                        fileStream.Read(mStreamer.GetBuffer(), 0, (int)fileStream.Length);
                        mStreamer.Seek(0, SeekOrigin.Begin);
                        var arreglo = operacionesStreams.StreamByteArray(mStreamer);
                        operacionesStreams.StreamArchivo(mStreamer, pathDestino);

                        switch (Path.GetExtension(Request.Files[i].FileName).ToLower())
                        {
                        case ".xml":
                            facturaRecibida.NombreArchivoXml = Request.Files[i].FileName;
                            facturaRecibida.ArchivoFisicoXml = arreglo;
                            break;

                        default:
                            throw new Exception("Tipo de archivo Inválido");
                        }

                        mStreamer.Close();
                    }
                }
            }
        }