示例#1
0
        ///// <summary>
        /////     ''' Cambia el status a una accion (Permitir/no permitir) del sistema
        /////     ''' </summary>
        /////     ''' <param name="n"></param>
        /////     ''' <param name="Status"></param>
        /////     ''' <remarks></remarks>
        /////     '''
        private void CambiaStatusAccion(TreeNode n, bool Status)
        {
            if (n.Tag != null & (string)n.Tag != "" & n.Checked != Status)
            {
                Sis.PERMISOS_PERFIL objenPermisoPerfil = new Sis.PERMISOS_PERFIL
                {
                    IdPerfil   = (int)DgvPerfilUsuario.SelectedRows[0].Cells["IdPerfil"].Value,
                    IdAccion   = int.Parse(n.Tag.ToString()),
                    Habilitado = Status == true ? "1" : "0"
                };


                try
                {
                    ObjLnSistema.ABCPermisosPerfil('A', objenPermisoPerfil);

                    n.Checked            = Status;
                    n.ImageIndex         = n.Checked ? 1 : 0;
                    n.SelectedImageIndex = n.Checked ? 1 : 0;
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
            }
        }
示例#2
0
        public int ABCPermisosPerfil(char op, Sis.PERMISOS_PERFIL permisoPerfil)
        {
            const string querySql = "Sis.prPERMISOS_PERFIL";
            int          IntReturn;

            try
            {
                // Definir la conexion a la base de datos mediante un "SqlConnection"
                using (SqlConnection connection = _objPersistencia.GetSqlConnection())
                {
                    // Abrir la conexion
                    connection.Open();

                    // Definir un "SqlCommand" con funcionalidad de "Stored Procedure"
                    using (SqlCommand sqlCmnd = _objPersistencia.GetSqlCommand(connection, querySql, CommandType.StoredProcedure))
                    {
                        // Asignar los parametros del SP
                        sqlCmnd.Parameters.Add("@Op", SqlDbType.Char);
                        sqlCmnd.Parameters["@Op"].Value = op;

                        sqlCmnd.Parameters.Add("@IdPerfil", SqlDbType.Int);
                        sqlCmnd.Parameters["@IdPerfil"].Value = permisoPerfil.IdPerfil;

                        sqlCmnd.Parameters.Add("@idAccion", SqlDbType.Int);
                        sqlCmnd.Parameters["@idAccion"].Value = permisoPerfil.IdAccion;

                        sqlCmnd.Parameters.Add("@habilitado", SqlDbType.Bit);
                        //sqlCmnd.Parameters["@habilitado"].Value = IIf(IsNothing(permisoPerfil.Habilitado), DBNull.Value, IIf(permisoPerfil.Habilitado == 1, "True", "False"));

                        switch (permisoPerfil.Habilitado)
                        {
                        case null:
                            sqlCmnd.Parameters["@habilitado"].Value = DBNull.Value;
                            break;

                        case "1":
                            sqlCmnd.Parameters["@habilitado"].Value = true;
                            break;

                        default:
                            sqlCmnd.Parameters["@habilitado"].Value = false;
                            break;
                        }

                        // Ejecutar el comando
                        using (SqlDataReader reader = sqlCmnd.ExecuteReader())
                        {
                            if (!reader.Read())
                            {
                                throw new Exception("La ejecución del Store Procedure no arrojó ningun dato");
                            }

                            // Asignar los valores obtenidos de la ejecución del comando
                            // Verificamos el resultado de la ejecucion de sp 0 = correcto y 1 existe algun error
                            IntReturn = (int)reader["Result"];

                            // Revisar si el SP generó un resultado de error
                            if (IntReturn == 1)
                            {
                                throw new Exception((string)reader["MensajeError"]);
                            }

                            // Cerrar el Reader
                            reader.Close();
                        }

                        // Cerrar la conexion
                        connection.Close();
                    }
                }

                return(IntReturn);
            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message + "\n\n" + "SP: " + querySql);
            }
        }
示例#3
0
 public int ABCPermisosPerfil(char op, Sis.PERMISOS_PERFIL PermisoPerfil)
 {
     return(_objAdSistema.ABCPermisosPerfil(op, PermisoPerfil));
 }