private void button1_Click(object sender, EventArgs e)
        {
            Nombre      = Combo_Atributos.Text;
            NuevoNombre = TB_ModificaAtributoNewName.Text;

            if (enti.existeAtributo(Nombre) && !enti.existeAtributo(NuevoNombre) && UtilStatic.ValidacionDeNombreLight(NuevoNombre))
            {
                if (enti.DireccionRegistros != -1 && this.ComboB_LongitudAtributo.Text != this.longitudTextoInicial_CB)
                //si ya hay registros y la longitud cambio
                {
                    MessageBox.Show("longitud no puede cambiar", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
                else
                {
                    this.Tipo = ComboB_TipoAtributo.Text.ElementAt(0);
                    int longitudAux;
                    Int32.TryParse(ComboB_LongitudAtributo.Text, out longitudAux);
                    this.Longitud   = longitudAux;
                    this.TipoIndice = UtilStatic.getTipoIndice(ComboB_TipoIndiceAtributo.Text);

                    this.DialogResult = DialogResult.OK;
                    this.Close();
                }
            }
        }
예제 #2
0
 public object objetoEnPseudoRegistro(Atributo atri, List <List <byte> > registro)
 {
     if (atri.Tipo == 'C' && atri.Tipo == 'c')
     {
         return(UtilStatic.getStringByByteArray(registro.ElementAt(this.atributos.IndexOf(this.getAtributoByName(atri.Nombre))).ToArray()));
     }
     else if (atri.Tipo == 'E' && atri.Tipo == 'e')
     {
         return(BitConverter.ToInt32(registro.ElementAt(this.atributos.IndexOf(this.getAtributoByName(atri.Nombre))).ToArray(), 0));
     }
     return(null);
 }
예제 #3
0
 private void NombreEntidad_Combo_KeyDown(object sender, KeyEventArgs e)
 {
     if (e.KeyData == Keys.Enter)
     {
         if (this.NombreEntidad_Combo.Text == " " || this.NombreEntidad_Combo.Text == "")
         {
             MessageBox.Show("Escriba un nombre valido no vacio.", "Advertencia", MessageBoxButtons.OK, MessageBoxIcon.Warning);
         }
         else if (!UtilStatic.ValidacionDeNombre(this.NombreEntidad_Combo.Text))
         {
             MessageBox.Show("Hay caracteres invalidos en el nombre de la Entidad que intenta crear.\nEvite:" + @" \/:*?\" + "<>| ", "Advertencia", MessageBoxButtons.OK, MessageBoxIcon.Warning);
         }
         else
         {
             this.archivoDeTrabajo.altaEntidad(NombreEntidad_Combo.Text);
             this.Reload();
         }
         this.NombreEntidad_Combo.Text = "";
     }
 }
예제 #4
0
        private byte[] validaInformacion()
        {
            Atributo atAux = entidad.atributos[indiceAtributo];

            if (atAux.Tipo == 'E' || atAux.Tipo == 'e')
            {
                int d;
                if (Int32.TryParse(textBoxDato.Text, out d))
                {
                    return(BitConverter.GetBytes(d));
                }
                MessageBox.Show("Caracteres no permitidos en el entero", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            else if (atAux.Tipo == 'C' || atAux.Tipo == 'c')
            {
                if (textBoxDato.Text.Length <= atAux.Longitud)
                {
                    return(UtilStatic.getStringEnByteArray(textBoxDato.Text, atAux.Longitud));
                }
                MessageBox.Show("El tamaño de la cadena excede el permitido", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            return(null);
        }
예제 #5
0
 private void comboNombreAtributo_KeyDown(object sender, KeyEventArgs e)
 {
     if (e.KeyData == Keys.Enter)
     {
         if (this.comboNombreAtributo.Text == " " || this.comboNombreAtributo.Text == "")
         {
             MessageBox.Show("Escriba un nombre valido no vacio.", "Advertencia", MessageBoxButtons.OK, MessageBoxIcon.Warning);
         }
         else if (!UtilStatic.ValidacionDeNombre(this.comboNombreAtributo.Text))
         {
             MessageBox.Show("Hay caracteres invalidos en el nombre del atributo que intenta crear.\nEvite:" + @" \/:*?\" + "<>| ", "Advertencia", MessageBoxButtons.OK, MessageBoxIcon.Warning);
         }
         else
         {
             if (ComboB_TipoAtributo.Text == "E")
             {
                 ComboB_LongitudAtributo.Text = 4.ToString();
             }
             int longitudNuevoAtributo = 1;
             if (Int32.TryParse(ComboB_LongitudAtributo.Text, out longitudNuevoAtributo))
             {
                 if (!listaLongitud.Contains(longitudNuevoAtributo))
                 {
                     listaLongitud.Add(longitudNuevoAtributo);
                 }
                 this.archivoDeTrabajo.altaAtributo(Combo_entidadesParaAtributos.Text, comboNombreAtributo.Text, ComboB_TipoAtributo.Text, longitudNuevoAtributo, ComboB_TipoIndiceAtributo.Text);
                 this.Reload();
             }
             else
             {
                 MessageBox.Show("La longitud tiene un formato incorrecto", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
             }
         }
         this.comboNombreAtributo.Text = "";
     }
 }
예제 #6
0
        private void toolBar_ItemClicked(object sender, ToolStripItemClickedEventArgs e)
        {
            switch (e.ClickedItem.AccessibleName)
            {
            case "Nuevo":
                #region Nuevo
                if (this.archivoDeTrabajo == null)    //Verifica que no exista un archivo abierto
                {
                    SaveFileDialog SFD = new SaveFileDialog();
                    SFD.FileName         = NombrePorDefectoArchivo;
                    SFD.InitialDirectory = pathDirectorio;
                    SFD.Title            = "Crear Archivo";
                    SFD.DefaultExt       = ".dd";
                    SFD.Filter           = "Diccionario de Datos|*.dd";//(.idx)|*.idx|(.dat)|*.dat";
                    SFD.AddExtension     = true;
                    String nuevoArchivoNombre;

                    if (SFD.ShowDialog().Equals(DialogResult.OK))
                    {
                        nuevoArchivoNombre = Path.GetFileName(SFD.FileName);

                        if (!UtilStatic.ValidacionDeNombre(nuevoArchivoNombre))
                        {
                            MessageBox.Show("Hay caracteres invalidos en el nombre de archivo que intenta crear.\nEvite:" + @" \/:*?\" + "<>| ", "Advertencia", MessageBoxButtons.OK, MessageBoxIcon.Warning);

                            break;
                        }
                        else if (nuevoArchivoNombre == ".dd")
                        {
                            MessageBox.Show("Escriba un nombre valido no vacio.", "Advertencia", MessageBoxButtons.OK, MessageBoxIcon.Warning);

                            break;
                        }
                        else
                        {
                            if (nuevoArchivoNombre.Contains(".dd"))
                            {
                                if (nuevoArchivoNombre.Substring(nuevoArchivoNombre.Length - 3, 3) != ".dd") //si el nombre ya contiene el .dd
                                {
                                    nuevoArchivoNombre = nuevoArchivoNombre + ".dd";                         //Crea el nombre del archivo

                                    String auxPathFileName = Path.GetDirectoryName(SFD.FileName);
                                    pathNombreArchivo = auxPathFileName + "\\" + nuevoArchivoNombre;
                                }
                                else
                                {
                                    pathNombreArchivo = SFD.FileName;
                                }
                            }
                            else
                            {
                                nuevoArchivoNombre = nuevoArchivoNombre + ".dd";    //Crea el nombre del archivo

                                String auxPathFileName = Path.GetDirectoryName(SFD.FileName);
                                pathNombreArchivo = auxPathFileName + "\\" + nuevoArchivoNombre;
                            }
                            nuevo_SB.Enabled     = false; //Deshabilita la opcion de crear un nuevo archivo.
                            abrir_SB.Enabled     = false; //Deshabilita la opcion de abrir un nuevo archivo.
                            renombrar_SB.Enabled = true;  //habiolita la opcion de renombrar un archivo.
                            cerrar_SB.Enabled    = true;  //Habilita la opcion de cerrar el archivo.


                            this.archivoDeTrabajo = new Archivo(pathNombreArchivo, true);    //Construye el objeto archivo
                            this.Text             = Path.GetFileName(this.archivoDeTrabajo.PathName) + " - Manejador de Archivos Pro";
                            this.Reload();
                        }
                    }
                }
                else
                {
                    MessageBox.Show("Tiene que cerrar el archivo actual para crear uno nuevo", "Advertencia", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                }
                #endregion
                break;

            case "Abrir":
                #region Abrir
                openFileDialog1.Title            = "Abrir Archivo";
                openFileDialog1.DefaultExt       = ".dd";
                openFileDialog1.Filter           = "(*.dd)|*.dd";
                openFileDialog1.AddExtension     = true;
                openFileDialog1.RestoreDirectory = true;
                openFileDialog1.InitialDirectory = pathDirectorio;    //Redirecciona la carpeta del directorio inicial al directorio donde se encuentra el ejecutable
                if (openFileDialog1.ShowDialog().Equals(DialogResult.OK))
                {
                    if (File.Exists(openFileDialog1.FileName))    //si el archivo que se quiere abrir existe
                    {
                        if (archivoDeTrabajo == null)
                        {
                            archivoDeTrabajo = new Archivo();
                        }
                        nuevo_SB.Enabled     = false;                          //Deshabilita la opcion de crear un nuevo archivo
                        abrir_SB.Enabled     = false;                          //Des habilita la opcion de abrir un nuevo archivo
                        renombrar_SB.Enabled = true;                           //habilita la opcion de renombrar archivo
                        cerrar_SB.Enabled    = true;                           //Habilita la opcion de cerrar el archivo

                        this.archivoDeTrabajo.Abrir(openFileDialog1.FileName); //Abre el archivo
                        this.Text = Path.GetFileName(this.archivoDeTrabajo.PathName) + " - Manejador de Archivos Pro";
                        this.Reload();                                         //Recarga todo en la forma. //Manda actualizar los combo box y los data grid
                    }
                    else
                    {
                        MessageBox.Show("El archivo que intenta abrir no existe", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }
                }
                else
                {
                    MessageBox.Show("Hubo un problema al abrir el archivo", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
                #endregion
                break;

            case "Renombrar":
                #region Renombrar

                CambiarNombreArchivo_Form nuevoNombre;
                nuevoNombre = new CambiarNombreArchivo_Form();
                String nuevoNombreFinal;

                if (nuevoNombre.ShowDialog().Equals(DialogResult.OK))
                {
                    if (!UtilStatic.ValidacionDeNombre(nuevoNombre.Nombre))
                    {
                        MessageBox.Show("Hay caracteres invalidos en el nombre al que intenda cambiar.\nEvite:" + @" \/:*?\" + "<>| ", "Advertencia", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                        break;
                    }
                    else if (nuevoNombre.Nombre == ".dd" || nuevoNombre.Nombre == "")
                    {
                        MessageBox.Show("Escriba un nombre valido no vacio.", "Advertencia", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                        break;
                    }
                    else
                    {
                        if (nuevoNombre.Nombre.Contains(".dd"))
                        {
                            if (nuevoNombre.Nombre.Substring(nuevoNombre.Nombre.Length - 3, 3) == ".dd")
                            {
                                nuevoNombreFinal = Path.GetDirectoryName(this.archivoDeTrabajo.PathName) + "\\" + nuevoNombre.Nombre;
                            }
                            else
                            {
                                nuevoNombreFinal = Path.GetDirectoryName(this.archivoDeTrabajo.PathName) + "\\" + nuevoNombre.Nombre + ".dd";    //Crea el nombre del archivo
                            }
                        }
                        else
                        {
                            nuevoNombreFinal = Path.GetDirectoryName(this.archivoDeTrabajo.PathName) + "\\" + nuevoNombre.Nombre + ".dd";    //Crea el nombre del archivo
                        }
                        if (!File.Exists(nuevoNombreFinal))
                        {
                            File.Move(this.archivoDeTrabajo.PathName, nuevoNombreFinal);
                            File.Delete(this.archivoDeTrabajo.PathName);
                            this.archivoDeTrabajo.PathName = nuevoNombreFinal;
                            this.Text = Path.GetFileName(this.archivoDeTrabajo.PathName) + " - Manejador de Archivos Pro";;
                        }
                        else
                        {
                            MessageBox.Show("El archivo " + nuevoNombre.Nombre + " ya existe, Elija otro nombre", "Error : Archivo Existente", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        }
                    }
                }
                #endregion
                break;

            case "Cerrar":
                #region Cerrar
                if (this.archivoDeTrabajo != null)
                {
                    pathDirectorio = Environment.CurrentDirectory + @"\Archivos";
                    this.archivoDeTrabajo.Close();
                    this.archivoDeTrabajo = null;
                    nuevo_SB.Enabled      = true;  //Habilita la opcion de crear un nuevo archivo
                    abrir_SB.Enabled      = true;  //Habilita la opcion de abrir un nuevo archivo
                    renombrar_SB.Enabled  = false;
                    cerrar_SB.Enabled     = false; //Deshabilita la opcion de cerrar el archivo
                    this.Text             = "Manejador de Archivos Pro";
                }
                this.Cierra();
                this.Reload();
                #endregion
                break;

            default:
                MessageBox.Show("Opción incorrecta", "Advertencia", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                break;
            }
        }
예제 #7
0
        private void menuAtributos_ItemClicked(object sender, ToolStripItemClickedEventArgs e)
        {
            if (this.archivoDeTrabajo != null)
            {
                switch (e.ClickedItem.AccessibleName)
                {
                case "Alta":
                    #region Alta
                    if (this.comboNombreAtributo.Text == " " || this.comboNombreAtributo.Text == "")
                    {
                        MessageBox.Show("Escriba un nombre valido no vacio.", "Advertencia", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                        break;
                    }
                    else if (!UtilStatic.ValidacionDeNombre(this.comboNombreAtributo.Text))
                    {
                        MessageBox.Show("Hay caracteres invalidos en el nombre del atributo que intenta crear.\nEvite:" + @" \/:*?\" + "<>| ", "Advertencia", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                        break;
                    }
                    else
                    {
                        if (ComboB_TipoAtributo.Text == "E")
                        {
                            ComboB_LongitudAtributo.Text = 4.ToString();
                        }
                        int longitudNuevoAtributo = 1;
                        if (Int32.TryParse(ComboB_LongitudAtributo.Text, out longitudNuevoAtributo))
                        {
                            if (!listaLongitud.Contains(longitudNuevoAtributo))    //para mostrar en la lñista del combo box longitudes usadas antes
                            {
                                listaLongitud.Add(longitudNuevoAtributo);
                            }
                            if (this.archivoDeTrabajo.getEntidad(Combo_entidadesParaAtributos.Text).canCreateLlave(ComboB_TipoIndiceAtributo.Text))
                            {
                                this.archivoDeTrabajo.altaAtributo(Combo_entidadesParaAtributos.Text, comboNombreAtributo.Text, ComboB_TipoAtributo.Text, longitudNuevoAtributo, ComboB_TipoIndiceAtributo.Text);
                                this.Reload();
                            }
                            else
                            {
                                MessageBox.Show("Ya existe un atributo con la clave de busqueda" + ComboB_TipoIndiceAtributo.Text, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                            }
                        }
                        else
                        {
                            MessageBox.Show("La longitud tiene un formato incorrecto", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        }
                    }
                    #endregion
                    this.NombreEntidad_Combo.Text = "";
                    break;

                case "Modificar":
                    #region Modificar
                    if (this.archivoDeTrabajo.existeEntidad(Combo_entidadesParaAtributos.Text))
                    {
                        ModificarAtributo_Form modificador = new ModificarAtributo_Form(comboNombreAtributo.Text, this.archivoDeTrabajo.getEntidad(Combo_entidadesParaAtributos.Text));
                        if (modificador.ShowDialog().Equals(DialogResult.OK))
                        {
                            if (modificador.NuevoNombre == "" || modificador.NuevoNombre == " ")
                            {
                                archivoDeTrabajo.CambiaAtributo(Combo_entidadesParaAtributos.Text, modificador.Nombre, modificador.NuevoNombre, modificador.Tipo, modificador.Longitud, modificador.TipoIndice, false);
                            }
                            else
                            {
                                archivoDeTrabajo.CambiaAtributo(Combo_entidadesParaAtributos.Text, modificador.Nombre, modificador.NuevoNombre, modificador.Tipo, modificador.Longitud, modificador.TipoIndice, true);
                            }
                            this.Reload();
                        }
                    }
                    else
                    {
                        MessageBox.Show("La entidad que desea modificar no existe", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }

                    #endregion
                    break;

                case "Consulta":
                    #region Consulta
                    #endregion
                    break;

                case "Eliminar":
                    #region Eliminar
                    if (this.archivoDeTrabajo.existeEntidad(Combo_entidadesParaAtributos.Text))
                    {
                        if (this.archivoDeTrabajo.getEntidad(Combo_entidadesParaAtributos.Text).existeAtributo(comboNombreAtributo.Text))
                        {
                            this.archivoDeTrabajo.eliminaAtributo(Combo_entidadesParaAtributos.Text, comboNombreAtributo.Text);
                            this.Reload();
                        }
                        else
                        {
                            MessageBox.Show("El atributo " + comboNombreAtributo.Text + " no existe", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        }
                    }
                    else
                    {
                        MessageBox.Show("La entidad " + Combo_entidadesParaAtributos.Text + " no existe", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }

                    #endregion
                    break;

                default:
                    MessageBox.Show("Opcion no implementada", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    break;
                }
            }
            else
            {
                MessageBox.Show("Por favor abra un archivo", "Advertencia", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
        }
예제 #8
0
        private void menuEntidades_ItemClicked(object sender, ToolStripItemClickedEventArgs e)
        {
            if (this.archivoDeTrabajo != null)
            {
                switch (e.ClickedItem.AccessibleName)
                {
                case "Alta":
                    #region Alta
                    if (this.NombreEntidad_Combo.Text == " " || this.NombreEntidad_Combo.Text == "")
                    {
                        MessageBox.Show("Escriba un nombre valido no vacio.", "Advertencia", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                        break;
                    }
                    else if (!UtilStatic.ValidacionDeNombre(this.NombreEntidad_Combo.Text))
                    {
                        MessageBox.Show("Hay caracteres invalidos en el nombre de la Entidad que intenta crear.\nEvite:" + @" \/:*?\" + "<>| ", "Advertencia", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                        break;
                    }
                    else
                    {
                        this.archivoDeTrabajo.altaEntidad(NombreEntidad_Combo.Text);
                        this.Reload();
                    }
                    #endregion
                    this.NombreEntidad_Combo.Text = "";
                    break;

                case "Modificar":
                    #region Modificar
                    if (this.archivoDeTrabajo.existeEntidad(NombreEntidad_Combo.Text))
                    {
                        ModificarEntidad_Form modificador = new ModificarEntidad_Form(NombreEntidad_Combo.Text, ref this.archivoDeTrabajo);
                        if (modificador.ShowDialog().Equals(DialogResult.OK))
                        {
                            archivoDeTrabajo.CambiaNombreEntidad(modificador.Nombre, modificador.NuevoNombre);
                            this.Reload();
                        }
                    }
                    else
                    {
                        MessageBox.Show("La entidad que desea modificar no existe", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }

                    #endregion
                    break;

                case "Consulta":
                    #region Consulta
                    #endregion
                    break;

                case "Eliminar":
                    #region Eliminar
                    if (this.archivoDeTrabajo.existeEntidad(NombreEntidad_Combo.Text))
                    {
                        this.archivoDeTrabajo.eliminaEntidad(NombreEntidad_Combo.Text);
                        this.Reload();
                    }
                    else
                    {
                        MessageBox.Show("La entidad que desea eliminar no existe", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }

                    #endregion
                    break;

                default:
                    MessageBox.Show("Opcion no implementada", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    break;
                }
            }
            else
            {
                MessageBox.Show("Por favor abra un archivo", "Advertencia", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
        }