private void btnAgregar_Click(object sender, EventArgs e) { if (!TextFieldUtils.IsAnyFieldEmpty(this)) { IdRol = ConnectionFactory.Instance().CreateConnection().ExecuteSingleOutputSqlQuery <decimal>("SELECT TOP 1 (id_Rol+1) FROM LOS_DE_GESTION.Rol ORDER BY id_Rol DESC "); StoredProcedureParameterMap inputParameters = new StoredProcedureParameterMap(); inputParameters.AddParameter("@nombreRol", tbRolNombre.Text); inputParameters.AddParameter("@id_rol", IdRol); inputParameters.AddParameter("@habilitado", cbHabilitado.Checked); try { ConnectionFactory.Instance() .CreateConnection() .ExecuteDataTableStoredProcedure(SpNames.AltaRol, inputParameters); inputParameters.RemoveParameters(); foreach (DataGridViewCell c in dgvFuncionalidades.SelectedCells) { inputParameters.AddParameter("@id_Rol", IdRol); decimal id_funcionalidad = ConnectionFactory.Instance() .CreateConnection() .ExecuteSingleOutputSqlQuery <decimal>(@"SELECT id_Funcionalidad FROM LOS_DE_GESTION.Funcionalidad WHERE nombre=" + "'" + c.Value.ToString() + "'"); inputParameters.AddParameter("@funcionalidadRol", id_funcionalidad); ConnectionFactory.Instance() .CreateConnection() .ExecuteDataTableStoredProcedure(SpNames.AgregarFuncionalidadRol, inputParameters); inputParameters.RemoveParameters(); } MessageBox.Show("Rol dado de alta correctamente!"); NavigableFormUtil.BackwardTo(this, CallerForm); } catch (StoredProcedureException ex) { MessageBox.Show(ex.Message); } } else { MessageBox.Show("Por favor rellena todos los campos"); } }
private void btnEliminar_Click(object sender, EventArgs e) { StoredProcedureParameterMap inputParameters = new StoredProcedureParameterMap(); DataGridViewSelectedCellCollection cells = dgvFnsRol.SelectedCells; try { foreach (DataGridViewCell cell in cells) { decimal id_funcionalidad = ConnectionFactory.Instance().CreateConnection().ExecuteSingleOutputSqlQuery <decimal>("SELECT id_Funcionalidad FROM LOS_DE_GESTION.Funcionalidad WHERE nombre=" + "'" + cell.Value.ToString() + "'"); inputParameters.AddParameter("@id_rol", IdRol); inputParameters.AddParameter("@funcionalidad", id_funcionalidad); ConnectionFactory.Instance() .CreateConnection() .ExecuteDataTableStoredProcedure(SpNames.BorrarFuncionalidad, inputParameters); inputParameters.RemoveParameters(); } Refresh(); MessageBox.Show("Funcionalidades eliminadas del rol correctamente!"); } catch (StoredProcedureException ex) { MessageBox.Show(ex.Message); } }