protected void btnSalvar_Click(object sender, EventArgs e) { UAControl uaDal = new UAControl(); UAFields uaObj = new UAFields(); UAValidator uaBus = new UAValidator(); uaObj.Nome = txtNomeUA.Text; try { if (uaBus.isValid(uaObj)) { uaDal.Add(ref uaObj); MessageBox.Show("Unidade de Atendimento Cadastrada com sucesso.", MessageBox.MessageType.Success); txtNomeUA.Text = string.Empty; gvPrincipal.DataBind(); } else { MessageBox.Show("Campo Nome UA é de preenchimento obrigatório", MessageBox.MessageType.Info); } } catch (Exception ex) { MessageBox.Show(ex.Message, MessageBox.MessageType.Error); } }
public bool isValid(UAFields fieldInfo) { try { //Field Nome if (fieldInfo.Nome != string.Empty) { if (fieldInfo.Nome.Trim().Length > 50) { throw new Exception("O campo \"Nome\" deve ter comprimento máximo de 50 caracter(es)."); } } return(true); } catch (Exception e) { this._ErrorMessage = e.Message; return(false); } }
/// <summary> /// Retorna um objeto UAFields preenchido com os valores dos campos do SqlDataReader /// </summary> /// <param name="dr">SqlDataReader - Preenche o objeto UAFields </param> /// <returns>UAFields</returns> private UAFields GetDataFromReader(SqlDataReader dr) { UAFields infoFields = new UAFields(); if (!dr.IsDBNull(0)) { infoFields.idUA = dr.GetInt32(0); } else { infoFields.idUA = 0; } if (!dr.IsDBNull(1)) { infoFields.Nome = dr.GetString(1); } else { infoFields.Nome = string.Empty; } return infoFields; }
/// <summary> /// Retorna um array de parâmetros com campos para atualização, seleção e inserção no banco de dados /// </summary> /// <param name="FieldInfo">Objeto UAFields</param> /// <param name="Modo">Tipo de oepração a ser executada no banco de dados</param> /// <returns>SqlParameter[] - Array de parâmetros</returns> private SqlParameter[] GetAllParameters(UAFields FieldInfo, SQLMode Modo) { SqlParameter[] Parameters; switch (Modo) { case SQLMode.Add: Parameters = new SqlParameter[2]; for (int I = 0; I < Parameters.Length; I++) Parameters[I] = new SqlParameter(); //Field idUA Parameters[0].SqlDbType = SqlDbType.Int; Parameters[0].Direction = ParameterDirection.Output; Parameters[0].ParameterName = "@Param_idUA"; Parameters[0].Value = DBNull.Value; break; case SQLMode.Update: Parameters = new SqlParameter[2]; for (int I = 0; I < Parameters.Length; I++) Parameters[I] = new SqlParameter(); //Field idUA Parameters[0].SqlDbType = SqlDbType.Int; Parameters[0].ParameterName = "@Param_idUA"; Parameters[0].Value = FieldInfo.idUA; break; case SQLMode.SelectORDelete: Parameters = new SqlParameter[1]; for (int I = 0; I < Parameters.Length; I++) Parameters[I] = new SqlParameter(); //Field idUA Parameters[0].SqlDbType = SqlDbType.Int; Parameters[0].ParameterName = "@Param_idUA"; Parameters[0].Value = FieldInfo.idUA; return Parameters; default: Parameters = new SqlParameter[2]; for (int I = 0; I < Parameters.Length; I++) Parameters[I] = new SqlParameter(); break; } //Field Nome Parameters[1].SqlDbType = SqlDbType.VarChar; Parameters[1].ParameterName = "@Param_Nome"; if ((FieldInfo.Nome == null) || (FieldInfo.Nome == string.Empty)) { Parameters[1].Value = DBNull.Value; } else { Parameters[1].Value = FieldInfo.Nome; } Parameters[1].Size = 50; return Parameters; }
/// <summary> /// Grava/Persiste as alterações em um objeto UAFields no banco de dados /// </summary> /// <param name="ConnIn">Objeto SqlConnection responsável pela conexão com o banco de dados.</param> /// <param name="TranIn">Objeto SqlTransaction responsável pela transação iniciada no banco de dados.</param> /// <param name="FieldInfo">Objeto UAFields a ser alterado.</param> /// <returns>"true" = registro alterado com sucesso, "false" = erro ao tentar alterar registro (consulte a propriedade ErrorMessage para detalhes)</returns> public bool Update(SqlConnection ConnIn, SqlTransaction TranIn, UAFields FieldInfo) { try { this.Cmd = new SqlCommand("Proc_UA_Update", ConnIn, TranIn); this.Cmd.CommandType = CommandType.StoredProcedure; this.Cmd.Parameters.Clear(); this.Cmd.Parameters.AddRange(GetAllParameters(FieldInfo, SQLMode.Update)); if (!(this.Cmd.ExecuteNonQuery() > 0)) throw new Exception("Erro ao tentar atualizar registro!!"); return true; } catch (SqlException e) { //this._ErrorMessage = string.Format(@"Houve um erro imprevisto ao tentar atualizar o(s) registro(s) solicitados: Código do erro: {0}, Mensagem: {1}, Procedimento: {2}, Linha do erro {3}.", e.ErrorCode, e.Message, e.Procedure, e.LineNumber); this._ErrorMessage = string.Format(@"Houve um erro imprevisto ao tentar atualizar o(s) registro(s) solicitados: {0}.", e.Message); return false; } catch (Exception e) { this._ErrorMessage = e.Message; return false; } }
/// <summary> /// Grava/Persiste as alterações em um objeto UAFields no banco de dados /// </summary> /// <param name="FieldInfo">Objeto UAFields a ser alterado.</param> /// <returns>"true" = registro alterado com sucesso, "false" = erro ao tentar alterar registro (consulte a propriedade ErrorMessage para detalhes)</returns> public bool Update(UAFields FieldInfo) { try { this.Conn = new SqlConnection(this.StrConnetionDB); this.Conn.Open(); this.Tran = this.Conn.BeginTransaction(); this.Cmd = new SqlCommand("Proc_UA_Update", this.Conn, this.Tran); this.Cmd.CommandType = CommandType.StoredProcedure; this.Cmd.Parameters.Clear(); this.Cmd.Parameters.AddRange(GetAllParameters(FieldInfo, SQLMode.Update)); if (!(this.Cmd.ExecuteNonQuery() > 0)) throw new Exception("Erro ao tentar atualizar registro!!"); this.Tran.Commit(); return true; } catch (SqlException e) { this.Tran.Rollback(); //this._ErrorMessage = string.Format(@"Houve um erro imprevisto ao tentar atualizar o(s) registro(s) solicitados: Código do erro: {0}, Mensagem: {1}, Procedimento: {2}, Linha do erro {3}.", e.ErrorCode, e.Message, e.Procedure, e.LineNumber); this._ErrorMessage = string.Format(@"Houve um erro imprevisto ao tentar atualizar o(s) registro(s) solicitados: {0}.", e.Message); return false; } catch (Exception e) { this.Tran.Rollback(); this._ErrorMessage = e.Message; return false; } finally { if (this.Conn != null) if (this.Conn.State == ConnectionState.Open) { this.Conn.Dispose(); } if (this.Cmd != null) this.Cmd.Dispose(); } }
/// <summary> /// Retorna um objeto UAFields através da chave primária passada como parâmetro /// </summary> /// <param name="Param_idUA">int</param> /// <returns>Objeto UAFields</returns> public UAFields GetItem( int Param_idUA) { UAFields infoFields = new UAFields(); try { using (this.Conn = new SqlConnection(this.StrConnetionDB)) { using (this.Cmd = new SqlCommand("Proc_UA_Select", this.Conn)) { this.Cmd.CommandType = CommandType.StoredProcedure; this.Cmd.Parameters.Clear(); this.Cmd.Parameters.Add(new SqlParameter("@Param_idUA", SqlDbType.Int)).Value = Param_idUA; this.Cmd.Connection.Open(); using (SqlDataReader dr = this.Cmd.ExecuteReader(CommandBehavior.SequentialAccess)) { if (!dr.HasRows) return null; if (dr.Read()) { infoFields = GetDataFromReader(dr); } } } } return infoFields; } catch (SqlException e) { //this._ErrorMessage = string.Format(@"Houve um erro imprevisto ao tentar selecionar o(s) registro(s) solicitados: Código do erro: {0}, Mensagem: {1}, Procedimento: {2}, Linha do erro {3}.", e.ErrorCode, e.Message, e.Procedure, e.LineNumber); this._ErrorMessage = string.Format(@"Houve um erro imprevisto ao tentar selecionar o(s) registro(s) solicitados: {0}.", e.Message); return null; } catch (Exception e) { this._ErrorMessage = e.Message; return null; } finally { if (this.Conn != null) if (this.Conn.State == ConnectionState.Open) { this.Conn.Dispose(); } } }
/// <summary> /// Exclui um registro da tabela no banco de dados /// </summary> /// <param name="ConnIn">Objeto SqlConnection responsável pela conexão com o banco de dados.</param> /// <param name="TranIn">Objeto SqlTransaction responsável pela transação iniciada no banco de dados.</param> /// <param name="FieldInfo">Objeto UAFields a ser excluído.</param> /// <returns>"true" = registro excluido com sucesso, "false" = erro ao tentar excluir registro (consulte a propriedade ErrorMessage para detalhes)</returns> public bool Delete(SqlConnection ConnIn, SqlTransaction TranIn, UAFields FieldInfo) { return Delete(ConnIn, TranIn, FieldInfo.idUA); }
/// <summary> /// Exclui um registro da tabela no banco de dados /// </summary> /// <param name="FieldInfo">Objeto UAFields a ser excluído.</param> /// <returns>"true" = registro excluido com sucesso, "false" = erro ao tentar excluir registro (consulte a propriedade ErrorMessage para detalhes)</returns> public bool Delete(UAFields FieldInfo) { return Delete(FieldInfo.idUA); }
public bool isValid( UAFields fieldInfo ) { try { //Field Nome if ( fieldInfo.Nome != string.Empty ) if ( fieldInfo.Nome.Trim().Length > 50 ) throw new Exception("O campo \"Nome\" deve ter comprimento máximo de 50 caracter(es)."); return true; } catch (Exception e) { this._ErrorMessage = e.Message; return false; } }