Ejemplo n.º 1
0
        private void AMB_ROL_Click(object sender, EventArgs e)
        {
            WindowsFormsApplication1.ABM_Rol.Form1 frm = new WindowsFormsApplication1.ABM_Rol.Form1();

            frm.Show();
            //_conexionSQL conectarBD = _conexionSQL.Instance;
        }
Ejemplo n.º 2
0
        private void btGuardarCambios_Click(object sender, EventArgs e)
        {
            if (String.IsNullOrWhiteSpace(txtNuevoRol.Text))
            {
                MessageBox.Show("Por favor escriba un nombre");
                return;
            }

            //if (String.Compare(txtNuevoRol.Text, _Parametros._SQL_nombreAdministrador)==0)
            if (txtNuevoRol.Text.Contains(_Parametros._SQL_nombreAdministrador) == true)
            {
                MessageBox.Show("No se puede crear un rol con el nombre: " + _Parametros._SQL_nombreAdministrador + ". Este nombre se encuentra reservado");
                return;
            }


            DataTable    resultado2 = new DataTable();
            _conexionSQL conectarBD = _conexionSQL.Instance;

            if (String.Compare(this.gboxCrearModificarGrupo.Text, "Crear Nuevo Rol") == 0)
            {
                //validamos que el rol no exista...
                string sql;
                sql        = @"select count(t1.nombre) 
                            from DALE_SA.rol t1 
                            where t1.nombre = Rtrim(Ltrim('" + this.txtNuevoRol.Text + @"'))
                        ";
                resultado2 = conectarBD.ejecutarUnaQuery(sql);

                if (resultado2.Rows[0][0].Equals(0))
                {
                    //no existia
                }
                else
                {
                    MessageBox.Show("El nombre del rol ya existe en la BD, por favor pruebe otro..");
                    return;
                }
            }

            if (String.Compare(this.gboxCrearModificarGrupo.Text, "Modificar Rol Seleccionado") == 0)
            {
                //tenemos que validar si el usuario existia pero que no sea el mismo...
                string sql;
                sql        = @"select count(t1.nombre) 
                            from DALE_SA.rol t1 
                            where t1.nombre = Rtrim(Ltrim('" + this.txtNuevoRol.Text + @"')) and t1.idrol != " + this.txtIdRol.Text + @"
                        ";
                resultado2 = conectarBD.ejecutarUnaQuery(sql);

                if (resultado2.Rows[0][0].Equals(0))
                {
                    //no existia
                }
                else
                {
                    MessageBox.Show("El nombre del rol ya existe en la BD, por favor pruebe otro..");
                    return;
                }
            }


            List <object> destList = new List <object>();

            foreach (DataGridViewRow row in dgvFuncionesAsignadas.Rows)
            {
                destList.Add(row.DataBoundItem);
            }

            if (destList.Count < 1)
            {
                MessageBox.Show("Por favor Agrege al menos 1 funcionalidad");
                return;
            }



            //_conexionSQL conectarBD = _conexionSQL.Instance;
            int idNuevoRol = 0;

            if (String.Compare(this.gboxCrearModificarGrupo.Text, "Modificar Rol Seleccionado") == 0)
            {
                idNuevoRol = Convert.ToInt32(this.txtIdRol.Text);
            }
            else
            {
                //si no estaba creado el rol, lo creo
                // luego le agrego las funcionalidades...
                idNuevoRol = conectarBD.crearRol(txtNuevoRol.Text);

                if (idNuevoRol == 0)
                {
                    MessageBox.Show("Hubo algun problema al crear el nuevo Rol. Revise si el nombre ya existia");
                    return;
                }
            }
            DataTable dt = new DataTable();

            //dt = (DataTable) (dataGridView3.DataSource);

            //BindingSource bs = (BindingSource)dataGridView3.DataSource; // Se convierte el DataSource
            //DataTable dt = (DataTable)bs.DataSource;

            dt = GetDataTableFromDGV(dgvFuncionesAsignadas);

            Boolean resultado = conectarBD.modificar_Rol_Funcionalidad(idNuevoRol, txtNuevoRol.Text, dt);

            if (!(resultado))
            {
                if (String.Compare(this.gboxCrearModificarGrupo.Text, "Modificar Rol Seleccionado") == 0)
                {
                    MessageBox.Show("Hubo problemas al cambiar el nombre o asignar las funcionalidades del nuevo Rol. Revise si el nombre ya existia.");
                    return;
                }
                else
                {
                    MessageBox.Show("Se creo el nuevo rol pero hubo algun problema al crear las funcionalidades del nuevo Rol.");
                    return;
                }
            }

            MessageBox.Show("Todo bien. Puede que algunos cambios no surtan efecto hasta que se vuelva a ingresar al aplicativo");

            btDeshacerCambios.PerformClick();     //salgo de todo esto

            WindowsFormsApplication1.ABM_Rol.Form1 frm = new WindowsFormsApplication1.ABM_Rol.Form1();
            frm.Show();

            this.Close();
        }