Esempio n. 1
0
        public FileResult DownloadFile2(int?fileID)
        {
            prueba1Entities db   = new prueba1Entities();
            Archivo2        file = db.Archivo2.ToList().Find(p => p.idArchivo == fileID.Value);

            return(File(file.contenidoArchivo, file.tipoContenido, file.nombreArchivo));
        }
Esempio n. 2
0
        private void cerrarArchivo()
        {
            Archivo2 a = this.capturarArchivo();

            if (a == null)
            {
                return;
            }

            a.Guardar();

            int indice = tbprincipal.SelectedIndex;

            tbprincipal.TabPages.Remove(tbprincipal.SelectedTab);
            listapestanias.Remove(a);

            tbprincipal.SelectedIndex = indice - 1;

            foreach (Archivo2 item in listapestanias)
            {
                if (item.indice >= indice)
                {
                    item.indice = item.indice - 1;
                }
            }
        }
Esempio n. 3
0
        private void abrir()
        {
            OpenFileDialog abrir = new OpenFileDialog();

            abrir.Title  = "Abrir archivos de Texto";
            abrir.Filter = "Archivo DLex  (*.txt)|*.txt|Todos los archivos (*.*)|*.*";
            abrir.ShowDialog();

            if (abrir.FileName.Length == 0)
            {
                return;
            }

            System.IO.StreamReader sr = new System.IO.StreamReader(abrir.FileName, System.Text.Encoding.Default);
            String contenido          = sr.ReadToEnd();

            sr.Close();

            Archivo2 a         = new Archivo2();
            TabPage  tab_abrir = new TabPage(System.IO.Path.GetFileName(abrir.FileName));

            a.ruta         = abrir.FileName;
            a.nombre       = System.IO.Path.GetFileName(abrir.FileName);
            a.textbox.Text = contenido;
            a.es_nuevo     = false;

            tab_abrir.Controls.Add(a.textbox);
            tab_abrir.Text = a.nombre;
            tbprincipal.TabPages.Add(tab_abrir);

            a.indice = tbprincipal.TabCount - 1;
            tbprincipal.SelectedIndex = a.indice;

            listapestanias.Add(a);
        }
Esempio n. 4
0
        private void debuggerToolStripMenuItem_Click(object sender, EventArgs e)
        {
            Archivo2 a = capturarArchivo();

            if (a == null)
            {
                return;
            }
            this.a_activo = a;
            a.Reiniciar();
        }
Esempio n. 5
0
        private void nuevo()
        {
            Archivo2 a = new Archivo2();
            TabPage  nueva_pestania = new TabPage("New " + contador);

            tbprincipal.TabPages.Add(nueva_pestania);
            nueva_pestania.Controls.Add(a.textbox);
            a.indice = tbprincipal.TabCount - 1;
            tbprincipal.SelectedIndex = a.indice;
            listapestanias.Add(a);
            contador++;
        }
Esempio n. 6
0
        private void bnext_Click(object sender, EventArgs e)
        {
            Archivo2 a = capturarArchivo();

            if (a == null)
            {
                return;
            }
            this.a_activo = a;
            a.Reiniciar();
            this.txtlog.Text = "";
        }
Esempio n. 7
0
        private void analizarToolStripMenuItem_Click(object sender, EventArgs e)
        {
            Archivo2 a = capturarArchivo();

            if (a == null)
            {
                return;
            }
            this.a_activo = a;
            a.Reiniciar();
            this.pasarLexico(a.textbox);
        }
Esempio n. 8
0
        private void guardar()
        {
            Archivo2 a = this.capturarArchivo();

            if (a == null)
            {
                return;
            }

            a.Guardar();
            tbprincipal.TabPages[a.indice].Text = a.nombre;
        }
Esempio n. 9
0
        private void tablaTokensToolStripMenuItem_Click(object sender, EventArgs e)
        {
            Archivo2 a = capturarArchivo();

            if (a == null)
            {
                return;
            }
            this.a_activo = a;
            Reportes re = new Reportes(a.tokens_lexicos);

            re.Visible = true;
        }
Esempio n. 10
0
        private void bnormal_Click(object sender, EventArgs e)
        {
            Archivo2 a = capturarArchivo();

            if (a == null)
            {
                return;
            }
            this.a_activo = a;
            a.Reiniciar();
            this.compilado = 1;
            this.pasarLexico(a.textbox);
            this.txtlog.Text = "";
        }
Esempio n. 11
0
        public ActionResult DeleteConfirmed(int id)
        {
            Proyecto proyecto         = db.Proyecto.Find(id);
            String   proyectoActivo   = (from c in db.Proyecto where c.idProyecto == id select c.estadoProyecto).FirstOrDefault();
            int      documentos       = (from c in db.Archivo1 where c.idProyecto == id select c.idArchivo).FirstOrDefault();
            int      documentos2      = (from c in db.Archivo2 where c.idProyecto == id select c.idArchivo).FirstOrDefault();
            int      documentos3      = (from c in db.Archivo3 where c.idProyecto == id select c.idArchivo).FirstOrDefault();
            int      comentarioActivo = (from c in db.Comentario where c.idProyecto == id select c.idComentario).FirstOrDefault();

            if (proyectoActivo != "Desertado")
            {
                ViewBag.Error = "Este proyecto se encuentra Activo, En Proceso o Implantado. Solo se eliminara si esta inactivo";
                return(View(proyecto));
            }
            else if (comentarioActivo != 0)
            {
                ViewBag.Error = "Este proyecto tiene comentarios, debe eliminarlos para poder eliminar este proyecto";
                return(View(proyecto));
            }

            if (documentos != 0)
            {
                Archivo1 archivo1 = db.Archivo1.Find(documentos);
                db.Archivo1.Remove(archivo1);
            }
            if (documentos2 != 0)
            {
                Archivo2 archivo2 = db.Archivo2.Find(documentos2);
                db.Archivo2.Remove(archivo2);
            }
            if (documentos3 != 0)
            {
                Archivo3 archivo3 = db.Archivo3.Find(documentos);
                db.Archivo3.Remove(archivo3);
            }


            db.Proyecto.Remove(proyecto);
            db.SaveChanges();

            return(RedirectToAction("Index"));
        }
Esempio n. 12
0
        private void analizarLexico()
        {
            Archivo2 a = this.capturarArchivo();

            if (a == null)
            {
                MessageBox.Show("No hay pestania activa seleccionada", "DLex", MessageBoxButtons.OK, MessageBoxIcon.Information);
                return;
            }
            if (arch.reglas.Count == 0)
            {
                MessageBox.Show("No hay reglas cargadas (dx)", "DLex", MessageBoxButtons.OK, MessageBoxIcon.Information);
                return;
            }
            if (arch.errores.Count > 0)
            {
                MessageBox.Show("Existen errore, vuelva a cargar (dx)", "DLex", MessageBoxButtons.OK, MessageBoxIcon.Information);
                return;
            }
        }
Esempio n. 13
0
        private void brun_Click(object sender, EventArgs e)
        {
            Console.Write(barra.Size);
            Archivo2 a = capturarArchivo();

            if (a == null)
            {
                return;
            }
            this.a_activo = a;
            a.Reiniciar();
            this.limpiarTabla();

            this.compilado = 2;
            this.segundos  = barra.Value;
            this.tiempo    = segundos * 100;
            MessageBox.Show("Analisis con tiempo: " + segundos);
            this.txtlog.Text = "";
            this.pasarLexico(a.textbox);
        }
Esempio n. 14
0
        private void desplegarErrores()
        {
            Archivo2 a = capturarArchivo();

            if (a == null)
            {
                return;
            }
            this.a_activo = a;
            StringBuilder html = new StringBuilder();

            html.Append(a.getHeader("Reporte de Errores Lexicos"));

            html.Append("<tr>\n");
            html.Append("<td style=\"text-align:center\"><span style=\"font-family:arial,helvetica,sans-serif\"><strong>Simbolo</strong></span></td>\n");
            html.Append("<td style=\"text-align:center\"><span style=\"font-family:arial,helvetica,sans-serif\"><strong>Linea</strong></span></td>\n");
            html.Append("<td style=\"text-align:center\"><span style=\"font-family:arial,helvetica,sans-serif\"><strong>Columna</strong></span></td>\n");
            html.Append("<td style=\"text-align:center\"><span style=\"font-family:arial,helvetica,sans-serif\"><strong>Tipo</strong></span></td>\n");
            html.Append("<td style=\"text-align:center\"><span style=\"font-family:arial,helvetica,sans-serif\"><strong>Descripcion</strong></span></td>\n");
            html.Append("</tr>\n");

            foreach (Terror item in a.errores_lexicos)
            {
                html.Append("<tr>\n");
                html.Append("<td>"); html.Append(item.simbolo); html.Append("</td>\n");
                html.Append("<td>"); html.Append(item.linea); html.Append("</td>\n");
                html.Append("<td>"); html.Append(item.columna); html.Append("</td>\n");
                html.Append("<td>"); html.Append(item.tipo); html.Append("</td>\n");
                html.Append("<td>"); html.Append(item.descripcion); html.Append("</td>\n");
                html.Append("</tr>\n");
            }

            html.Append(a.getFoot());

            String r = Environment.GetFolderPath(Environment.SpecialFolder.DesktopDirectory) + "\\Files\\Reportes\\errores.html";

            System.IO.File.WriteAllText(r, html.ToString());
            autoAbrir(r);
        }
Esempio n. 15
0
        public ActionResult Guardar(HttpPostedFileBase nombreArchivo, int idProyecto, String DocumentoFinal)
        {
            int curso = (from d in db.Proyecto where d.idProyecto == idProyecto select d.idCurso).FirstOrDefault();

            if (nombreArchivo != null && nombreArchivo.ContentLength > 0)
            {
                var fileName = Path.GetFileName(nombreArchivo.FileName);

                byte[] bytes;



                using (BinaryReader br = new BinaryReader(nombreArchivo.InputStream))
                {
                    bytes = br.ReadBytes(nombreArchivo.ContentLength);
                }

                if (curso == 1)
                {
                    int edit = (from d in db.Archivo1 where d.idProyecto == idProyecto select d.idArchivo).FirstOrDefault();
                    if (edit != 0)
                    {
                        try
                        {
                            using (db)
                            {
                                int      delete = (from c in db.Archivo1 where c.idProyecto == idProyecto select c.idArchivo).FirstOrDefault();
                                Archivo1 d      = db.Archivo1.Find(delete);
                                db.Archivo1.Remove(d);

                                Archivo1 f = new Archivo1();
                                f.nombreArchivo    = Path.GetFileName(nombreArchivo.FileName);
                                f.tipoContenido    = nombreArchivo.ContentType;
                                f.contenidoArchivo = bytes;
                                f.idProyecto       = idProyecto;
                                f.documentos       = DocumentoFinal;



                                db.Archivo1.Add(f);

                                db.SaveChanges();
                            }
                        }
                        catch (Exception e)
                        {
                            ViewBag.Error = "El archivo supera el tamaño permitido";
                        }
                    }
                    else
                    {
                        try
                        {
                            using (db)
                            {
                                Archivo1 d = new Archivo1();
                                d.nombreArchivo    = Path.GetFileName(nombreArchivo.FileName);
                                d.tipoContenido    = nombreArchivo.ContentType;
                                d.contenidoArchivo = bytes;
                                d.idProyecto       = idProyecto;
                                d.documentos       = DocumentoFinal;

                                db.Archivo1.Add(d);
                                db.SaveChanges();
                            }
                        }
                        catch (Exception e)
                        {
                            ViewBag.Error = "El archivo supera el tamaño permitido";
                        }
                        return(RedirectToAction("Index"));
                    }
                }
                else if (curso == 2)
                {
                    int edit = (from d in db.Archivo2 where d.idProyecto == idProyecto select d.idArchivo).FirstOrDefault();
                    if (edit != 0)
                    {
                        try
                        {
                            using (db)
                            {
                                int      delete = (from c in db.Archivo2 where c.idProyecto == idProyecto select c.idArchivo).FirstOrDefault();
                                Archivo2 d      = db.Archivo2.Find(delete);
                                db.Archivo2.Remove(d);

                                Archivo2 f = new Archivo2();
                                f.nombreArchivo    = Path.GetFileName(nombreArchivo.FileName);
                                f.tipoContenido    = nombreArchivo.ContentType;
                                f.contenidoArchivo = bytes;
                                f.idProyecto       = idProyecto;
                                f.documentos       = DocumentoFinal;



                                db.Archivo2.Add(f);

                                db.SaveChanges();
                            }
                        }
                        catch (Exception e)
                        {
                            throw e;
                        }
                    }
                    else
                    {
                        try
                        {
                            using (db)
                            {
                                Archivo2 d = new Archivo2();
                                d.nombreArchivo    = Path.GetFileName(nombreArchivo.FileName);
                                d.tipoContenido    = nombreArchivo.ContentType;
                                d.contenidoArchivo = bytes;
                                d.idProyecto       = idProyecto;
                                d.documentos       = DocumentoFinal;


                                db.Archivo2.Add(d);
                                db.SaveChanges();
                            }
                        }
                        catch (Exception e)
                        {
                            throw e;
                        }
                        return(RedirectToAction("Index"));
                    }
                }
                else if (curso == 3)
                {
                    int edit = (from d in db.Archivo3 where d.idProyecto == idProyecto select d.idArchivo).FirstOrDefault();
                    if (edit != 0)
                    {
                        try
                        {
                            using (db)
                            {
                                int      delete = (from c in db.Archivo3 where c.idProyecto == idProyecto select c.idArchivo).FirstOrDefault();
                                Archivo3 d      = db.Archivo3.Find(delete);
                                db.Archivo3.Remove(d);

                                Archivo3 f = new Archivo3();
                                f.nombreArchivo    = Path.GetFileName(nombreArchivo.FileName);
                                f.tipoContenido    = nombreArchivo.ContentType;
                                f.contenidoArchivo = bytes;
                                f.idProyecto       = idProyecto;
                                f.documentos       = DocumentoFinal;
                                db.Archivo3.Add(f);

                                db.SaveChanges();
                            }
                        }
                        catch (Exception e)
                        {
                            throw e;
                        }
                    }
                    else
                    {
                        try
                        {
                            using (db)
                            {
                                Archivo3 d = new Archivo3();
                                d.nombreArchivo    = Path.GetFileName(nombreArchivo.FileName);
                                d.tipoContenido    = nombreArchivo.ContentType;
                                d.contenidoArchivo = bytes;
                                d.idProyecto       = idProyecto;
                                d.documentos       = DocumentoFinal;
                                db.Archivo3.Add(d);
                                db.SaveChanges();
                            }
                        }
                        catch (Exception e)
                        {
                            throw e;
                        }
                        return(RedirectToAction("Index"));
                    }
                }
            }
            return(RedirectToAction("Index"));
        }
Esempio n. 16
0
        static void Main(string[] args)
        {
            List <Archivo2> archivo2 = new List <Archivo2>();
            Task            tarea1   = Task.Factory.StartNew(() =>
            {
                string path = @"c:\archivo2.csv";


                try
                {
                    StreamReader readFile = new StreamReader(path);
                    readFile.ReadLine();
                    while (readFile.Peek() != -1)
                    {
                        string linea         = readFile.ReadLine();
                        string[] columna     = linea.Split(new Char[] { '-', ';' });
                        Archivo2 archivoTemp = new Archivo2(int.Parse(columna[0]), int.Parse(columna[1]), int.Parse(columna[2]));
                        archivo2.Add(archivoTemp);
                    }
                    readFile.Close();
                }
                catch (Exception ex)
                {
                    throw new Exception(ex.Message + " fallo la tarea1 ");
                }
            });

            List <Archivo1aY1b> archivo = new List <Archivo1aY1b>();


            Task tarea2 = Task.Factory.StartNew(() => {
                string[] path         = new string[] { @"c:\archivo1a.csv", @"c:\archivo1b.csv" };
                StreamReader readFile = null;
                foreach (string i in path)
                {
                    try
                    {
                        readFile = new StreamReader(i);
                        readFile.ReadLine();
                        while (readFile.Peek() != -1)
                        {
                            string linea             = readFile.ReadLine();
                            string[] columna         = linea.Split(new Char[] { ';', '|' });
                            Archivo1aY1b archivoTemp = new Archivo1aY1b(int.Parse(columna[0]), int.Parse(columna[1]) + int.Parse(columna[2]) + int.Parse(columna[3]));
                            archivo.Add(archivoTemp);
                        }
                        readFile.Close();
                        List <Archivo1aY1b> archivoTemp2 = new List <Archivo1aY1b>();
                        for (int x = 0; x < archivo.Count; x++)
                        {
                            for (int z = x + 1; z < archivo.Count; z++)
                            {
                                if (archivo[x].Codigo == archivo[z].Codigo)
                                {
                                    archivoTemp2.Add(new Archivo1aY1b(archivo[x].Codigo, archivo[z].Flag + archivo[x].Flag));
                                }
                            }
                        }
                        for (int x = 0; x < archivo.Count; x++)
                        {
                            for (int z = 0; z < archivoTemp2.Count; z++)
                            {
                                if (archivo[x].Codigo.Equals(archivoTemp2[z].Codigo))
                                {
                                    archivo.RemoveAt(x);
                                }
                            }
                        }
                        archivo.AddRange(archivoTemp2);

                        for (int x = 0; x < archivo.Count; x++)
                        {
                            for (int z = x + 1; z < archivo.Count; z++)
                            {
                                if (archivo[x].Codigo.Equals(archivo[z].Codigo))
                                {
                                    archivo.RemoveAt(x);
                                }
                            }
                        }
                    }
                    catch (Exception ex)
                    {
                        throw new Exception(ex.Message + "fallo la tarea2 ");
                    }
                }
            });

            Task.WaitAll(tarea1, tarea2);

            archivo.Sort((x, y) => x.Codigo.CompareTo(y.Codigo));

            Task tarea3 = Task.Factory.StartNew(() => {
                for (int i = 0; i < archivo.Count; i++)
                {
                    for (int j = 0; j < archivo2.Count; j++)
                    {
                        if (archivo[i].Flag >= archivo2[j].ValorInicial && archivo[i].Flag <= archivo2[j].ValorFinal)
                        {
                            if (archivo2[j].Coeficiente == 0)
                            {
                                archivo[i].Resultado = 0;
                            }
                            else
                            {
                                archivo[i].Resultado = archivo[i].Flag / archivo2[j].Coeficiente;
                            }
                        }
                    }
                }
                foreach (Archivo1aY1b x in archivo)
                {
                    x.imprimirFinal();
                }
            });

            tarea3.Wait();
            Console.WriteLine("press key to exit...");
            Console.ReadLine();
        }