Esempio n. 1
0
        //Se modifica los campos seleccionados del atributo
        private void ModifAtrib_Click(object sender, EventArgs e)
        {
            //Auxiliar del nombre del atributo seleccionado del combo box
            string aux = ListaAtributos.Text;

            //Ciclo para acceder a la lista de entidades
            foreach (Entidad Ent in LEntidades)
            {
                //Auxiliar para el tamaño de la lista de atributos de la entidad
                int count = Ent.LAtributo1.Count;
                //Ciclo para acceder a la lista de atributos
                for (int i = 0; i < count; i++)
                {
                    //Condicional para encontrar el nombre seleccionado del combo box
                    if (Ent.LAtributo1[i].NA == aux)
                    {
                        //Varialbes auxiliares para los campos a modificar
                        string auxNom  = Ent.LAtributo1[i].NA;
                        char   TDato   = Ent.LAtributo1[i].TD;
                        int    TIndice = Ent.LAtributo1[i].TI;
                        int    LDato   = Ent.LAtributo1[i].LD;
                        //Metodo que realiza el cambio de información
                        ValidaCampos(ref TDato, ref TIndice, ref LDato, ref auxNom);

                        //Se guarda la nueva información en los campos correspondientes de la entidad
                        Ent.LAtributo1[i].NA = auxNom;
                        Ent.LAtributo1[i].ConvierteChar();
                        Ent.LAtributo1[i].TD = TDato;
                        Ent.LAtributo1[i].TI = TIndice;
                        Ent.LAtributo1[i].LD = LDato;
                        break;
                    }
                }
            }
            //Se limpian los campos que se llenaron para hacer modificaciones de un atributo
            NuevoAtrib.Clear();
            CBDatos.Text  = "";
            CBIndice.Text = "";
            txtTDato.Clear();
            ListaAtributos.Text = "";
            ListNombres.Text    = "";
            Actualiza();
            //Se llama al método que hará visualizar la información de los atributos en el DatGrid
            DirSigAtrib();
        }
Esempio n. 2
0
        //Se busca el atributo que se va a eliminar
        private void ElimAtrib_Click(object sender, EventArgs e)
        {
            //Auxiliar del nombre de la entidad seleccionada del combo box
            string aux = ListaAtributos.Text;

            //Ciclo para acceder a a lista de entidades
            foreach (Entidad Ent in LEntidades)
            {
                //Auxiliar para el tamaño de la lista de atributos de cada entidad
                int count = Ent.LAtributo1.Count;
                //Ciclo para acceder a la lista de atributos de una entidad
                for (int i = 0; i < count; i++)
                {
                    //Condición para encontrar el nombre del atributo seleccionado en el combo box
                    if (Ent.LAtributo1[i].NA == aux)
                    {
                        //Se elimina de la lista
                        Ent.LAtributo1.RemoveAt(i);
                        break;
                    }
                }
                //Se actualiza el campo de dirección de atributo que tiene la entidad
                if (Ent.LAtributo1.Count > 0)
                {
                    Ent.DA = Ent.LAtributo1[0].DA;
                }
                //Ent.DA = Ent.LAtributo1[Ent.LAtributo1.Count-1].DA;
            }
            Actualiza();
            //Se limpian los campos que fueron llenados para el atributo
            NuevoAtrib.Clear();
            CBDatos.Text  = "";
            CBIndice.Text = "";
            txtTDato.Clear();
            ListaAtributos.Text = "";
            ListNombres.Text    = "";
            //Se llama al método que hará visualizar la información de los atributos en el DatGrid
            DirSigAtrib();
        }
Esempio n. 3
0
        //Se agrega un nuevo atributo a la entidad seleccionada
        private void AgregarAtrib_Click(object sender, EventArgs e)
        {
            //Se abre el archivo seleccionado
            fs      = File.Open(NomArch, FileMode.Open, FileAccess.Write);
            TamArch = fs.Length;                           //Auxiliar que guarda el tamaño del archivo
            //int TamAtrib = EntModificar.LAtributo1.Count;
            TamArch = fs.Length;                           //Variable que guarda el tamaño del archivo
            EncuentraEntidad();                            //Método que encuentrá la variable a la que se le asignarán los atributos
            char TDato   = Convert.ToChar(CBDatos.Text);   //auxiliar que guarda el tipo de dato
            int  TIndice = Convert.ToInt32(CBIndice.Text); //auxiliar qie guarda el tipo de indice
            int  LDato   = Convert.ToInt32(txtTDato.Text); //auxiliar que guarda la logitud de dato

            //validación para que el nombre del atributo no este vacio
            if (NuevoAtrib.Text != "" || NuevoAtrib.Text != " ")
            {
                //auxiliar que convierte el nombre en arreglo de char
                char[] aux = NuevoAtrib.Text.ToCharArray();
                //Validación del nombre del atributo, que sea menor o igual a 30 caracteres
                if (aux.Length <= 30)
                {
                    //Se posiciona al final del archivo
                    fs.Seek(TamArch, SeekOrigin.Begin);
                    bw = new BinaryWriter(fs); //Se crea un binarywriter
                                               //Se crea un nuevo atributo
                    atributo = new Atributo(NuevoAtrib.Text, TamArch, TDato, LDato, TIndice, -1, -1);
                    bool EncAtrib = EntModificar.EncuentraAtributo(atributo.NA);
                    if (EncAtrib == true)
                    {
                        MessageBox.Show("No pueden existir dos atributos con el mismo nombre");
                        fs.Close();
                    }
                    else
                    {
                        //Se convierte el nombre del atributo en arreglo de char
                        atributo.ConvierteChar();
                        EntModificar.AgregaAtributo(atributo);           //Se agrega el atributo a la lista de atributos de la entidad
                        EntModificar.DA = EntModificar.LAtributo1[0].DA; //Se asigna la dirección del atributo al campo de dirección de atributo de la entidad
                        atributo.EscribeAtributo(bw);                    //se escribe los datos del atributo en el archivo
                        fs.Close();                                      //Se cierra el archivo
                        AgregaAtribDG();                                 //Se muestra la información del atributo en el DatGrid
                    }
                }
                else
                {
                    MessageBox.Show("El nombre del atributo no debe de superar los 30 caracteres");
                }
            }
            else
            {
                MessageBox.Show("Escribe el nombre del nuevo atributo");
            }
            //Método que actualiza la información del archivo
            Actualiza();
            //Método que agrega los nombres de los atributos al combo box
            ComboAtributo();
            //Se limpian los campos que se rellenan con la información del atributo
            ListNombres.Text = "";
            CBDatos.Text     = "";
            CBIndice.Text    = "";
            NuevoAtrib.Clear();
            txtTDato.Clear();
        }