public bool isValid(AssociacaoFields fieldInfo)
        {
            try
            {
                //Field fkContato
                if (!(fieldInfo.fkContato > 0))
                {
                    throw new Exception("O campo \"fkContato\" deve ser maior que zero.");
                }


                //Field NumeroConta
                if (fieldInfo.NumeroConta != string.Empty)
                {
                    if (fieldInfo.NumeroConta.Trim().Length > 7)
                    {
                        throw new Exception("O campo \"NumeroConta\" deve ter comprimento máximo de 7 caracter(es).");
                    }
                }
                if ((fieldInfo.NumeroConta == string.Empty) || (fieldInfo.NumeroConta.Trim().Length < 1))
                {
                    throw new Exception("O campo \"NumeroConta\" não pode ser nulo ou vazio e deve ter comprimento mínimo de 1 caracter(es).");
                }

                return(true);
            }
            catch (Exception e)
            {
                this._ErrorMessage = e.Message;
                return(false);
            }
        }
Example #2
0
 /// <summary>
 /// Grava/Persiste as alterações em um objeto AssociacaoFields 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 AssociacaoFields 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, AssociacaoFields FieldInfo)
 {
     try
     {
         this.Cmd             = new SqlCommand("Proc_Associacao_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);
     }
 }
Example #3
0
        /// <summary>
        /// Retorna um objeto AssociacaoFields preenchido com os valores dos campos do SqlDataReader
        /// </summary>
        /// <param name="dr">SqlDataReader - Preenche o objeto AssociacaoFields </param>
        /// <returns>AssociacaoFields</returns>
        private AssociacaoFields GetDataFromReader(SqlDataReader dr)
        {
            AssociacaoFields infoFields = new AssociacaoFields();

            if (!dr.IsDBNull(0))
            {
                infoFields.idAssociacao = dr.GetInt32(0);
            }
            else
            {
                infoFields.idAssociacao = 0;
            }



            if (!dr.IsDBNull(1))
            {
                infoFields.fkContato = dr.GetInt32(1);
            }
            else
            {
                infoFields.fkContato = 0;
            }



            if (!dr.IsDBNull(2))
            {
                infoFields.NumeroConta = dr.GetString(2);
            }
            else
            {
                infoFields.NumeroConta = string.Empty;
            }



            if (!dr.IsDBNull(3))
            {
                infoFields.DataAssociacao = dr.GetDateTime(3);
            }
            else
            {
                infoFields.DataAssociacao = DateTime.MinValue;
            }



            if (!dr.IsDBNull(4))
            {
                infoFields.DataCadastro = dr.GetDateTime(4);
            }
            else
            {
                infoFields.DataCadastro = DateTime.MinValue;
            }


            return(infoFields);
        }
Example #4
0
        /// <summary>
        /// Retorna um ou mais registros da tabela no banco de dados, filtrados pelo campo DataCadastro.
        /// </summary>
        /// <param name="Param_DataCadastro">DateTime</param>
        /// <returns>AssociacaoFields</returns>
        public AssociacaoFields FindByDataCadastro(
            DateTime Param_DataCadastro)
        {
            AssociacaoFields infoFields = new AssociacaoFields();

            try
            {
                using (this.Conn = new SqlConnection(this.StrConnetionDB))
                {
                    using (this.Cmd = new SqlCommand("Proc_Associacao_FindByDataCadastro", this.Conn))
                    {
                        this.Cmd.CommandType = CommandType.StoredProcedure;
                        this.Cmd.Parameters.Clear();
                        this.Cmd.Parameters.Add(new SqlParameter("@Param_DataCadastro", SqlDbType.SmallDateTime)).Value = Param_DataCadastro;
                        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();
                    }
                }
            }
        }
Example #5
0
 /// <summary>
 /// Grava/Persiste um novo objeto AssociacaoFields no banco de dados
 /// </summary>
 /// <param name="FieldInfo">Objeto AssociacaoFields a ser gravado.Caso o parâmetro solicite a expressão "ref", será adicionado um novo valor a algum campo auto incremento.</param>
 /// <returns>"true" = registro gravado com sucesso, "false" = erro ao gravar registro (consulte a propriedade ErrorMessage para detalhes)</returns>
 public bool Add(ref AssociacaoFields FieldInfo)
 {
     try
     {
         this.Conn = new SqlConnection(this.StrConnetionDB);
         this.Conn.Open();
         this.Tran            = this.Conn.BeginTransaction();
         this.Cmd             = new SqlCommand("Proc_Associacao_Add", this.Conn, this.Tran);
         this.Cmd.CommandType = CommandType.StoredProcedure;
         this.Cmd.Parameters.Clear();
         this.Cmd.Parameters.AddRange(GetAllParameters(FieldInfo, SQLMode.Add));
         if (!(this.Cmd.ExecuteNonQuery() > 0))
         {
             throw new Exception("Erro ao tentar inserir registro!!");
         }
         this.Tran.Commit();
         FieldInfo.idAssociacao = (int)this.Cmd.Parameters["@Param_idAssociacao"].Value;
         return(true);
     }
     catch (SqlException e)
     {
         this.Tran.Rollback();
         //this._ErrorMessage = string.Format(@"Houve um erro imprevisto ao tentar inserir 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 inserir 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 array de parâmetros com campos para atualização, seleção e inserção no banco de dados
        /// </summary>
        /// <param name="FieldInfo">Objeto AssociacaoFields</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( AssociacaoFields FieldInfo, SQLMode Modo )
        {
            SqlParameter[] Parameters;

            switch (Modo)
            {
                case SQLMode.Add:
                    Parameters = new SqlParameter[5];
                    for (int I = 0; I < Parameters.Length; I++)
                       Parameters[I] = new SqlParameter();
                    //Field idAssociacao
                    Parameters[0].SqlDbType = SqlDbType.Int;
                    Parameters[0].Direction = ParameterDirection.Output;
                    Parameters[0].ParameterName = "@Param_idAssociacao";
                    Parameters[0].Value = DBNull.Value;

                    break;

                case SQLMode.Update:
                    Parameters = new SqlParameter[5];
                    for (int I = 0; I < Parameters.Length; I++)
                       Parameters[I] = new SqlParameter();
                    //Field idAssociacao
                    Parameters[0].SqlDbType = SqlDbType.Int;
                    Parameters[0].ParameterName = "@Param_idAssociacao";
                    Parameters[0].Value = FieldInfo.idAssociacao;

                    break;

                case SQLMode.SelectORDelete:
                    Parameters = new SqlParameter[1];
                    for (int I = 0; I < Parameters.Length; I++)
                       Parameters[I] = new SqlParameter();
                    //Field idAssociacao
                    Parameters[0].SqlDbType = SqlDbType.Int;
                    Parameters[0].ParameterName = "@Param_idAssociacao";
                    Parameters[0].Value = FieldInfo.idAssociacao;

                    return Parameters;

                default:
                    Parameters = new SqlParameter[5];
                    for (int I = 0; I < Parameters.Length; I++)
                       Parameters[I] = new SqlParameter();
                    break;
            }

            //Field fkContato
            Parameters[1].SqlDbType = SqlDbType.Int;
            Parameters[1].ParameterName = "@Param_fkContato";
            Parameters[1].Value = FieldInfo.fkContato;

            //Field NumeroConta
            Parameters[2].SqlDbType = SqlDbType.VarChar;
            Parameters[2].ParameterName = "@Param_NumeroConta";
            if (( FieldInfo.NumeroConta == null ) || ( FieldInfo.NumeroConta == string.Empty ))
            { Parameters[2].Value = DBNull.Value; }
            else
            { Parameters[2].Value = FieldInfo.NumeroConta; }
            Parameters[2].Size = 7;

            //Field DataAssociacao
            Parameters[3].SqlDbType = SqlDbType.SmallDateTime;
            Parameters[3].ParameterName = "@Param_DataAssociacao";
            if ( FieldInfo.DataAssociacao == DateTime.MinValue )
            { Parameters[3].Value = DBNull.Value; }
            else
            { Parameters[3].Value = FieldInfo.DataAssociacao; }

            //Field DataCadastro
            Parameters[4].SqlDbType = SqlDbType.SmallDateTime;
            Parameters[4].ParameterName = "@Param_DataCadastro";
            if ( FieldInfo.DataCadastro == DateTime.MinValue )
            { Parameters[4].Value = DBNull.Value; }
            else
            { Parameters[4].Value = FieldInfo.DataCadastro; }

            return Parameters;
        }
 /// <summary> 
 /// Grava/Persiste as alterações em um objeto AssociacaoFields 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 AssociacaoFields 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, AssociacaoFields FieldInfo )
 {
     try
     {
         this.Cmd = new SqlCommand("Proc_Associacao_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> 
        /// Retorna um objeto AssociacaoFields através da chave primária passada como parâmetro
        /// </summary>
        /// <param name="Param_idAssociacao">int</param>
        /// <returns>Objeto AssociacaoFields</returns> 
        public AssociacaoFields GetItem(
                                     int Param_idAssociacao)
        {
            AssociacaoFields infoFields = new AssociacaoFields();
            try
            {
                using (this.Conn = new SqlConnection(this.StrConnetionDB))
                {
                    using (this.Cmd = new SqlCommand("Proc_Associacao_Select", this.Conn))
                    {
                        this.Cmd.CommandType = CommandType.StoredProcedure;
                        this.Cmd.Parameters.Clear();
                        this.Cmd.Parameters.Add(new SqlParameter("@Param_idAssociacao", SqlDbType.Int)).Value = Param_idAssociacao;
                        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 AssociacaoFields 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, AssociacaoFields FieldInfo )
 {
     return Delete(ConnIn, TranIn, FieldInfo.idAssociacao);
 }
Example #10
0
 /// <summary> 
 /// Exclui um registro da tabela no banco de dados
 /// </summary>
 /// <param name="FieldInfo">Objeto AssociacaoFields 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( AssociacaoFields FieldInfo )
 {
     return Delete(FieldInfo.idAssociacao);
 }
        public bool isValid( AssociacaoFields fieldInfo )
        {
            try
            {

                //Field fkContato
                if ( !( fieldInfo.fkContato > 0 ) )
                   throw new Exception("O campo \"fkContato\" deve ser maior que zero.");

                //Field NumeroConta
                if (  fieldInfo.NumeroConta != string.Empty )
                   if ( fieldInfo.NumeroConta.Trim().Length > 7  )
                      throw new Exception("O campo \"NumeroConta\" deve ter comprimento máximo de 7 caracter(es).");
                if ( ( fieldInfo.NumeroConta == string.Empty ) || ( fieldInfo.NumeroConta.Trim().Length < 1 ) )
                   throw new Exception("O campo \"NumeroConta\" não pode ser nulo ou vazio e deve ter comprimento mínimo de 1 caracter(es).");

                return true;

            }
            catch (Exception e)
            {
                this._ErrorMessage = e.Message;
                return false;
            }
        }
Example #12
0
 /// <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 AssociacaoFields 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, AssociacaoFields FieldInfo)
 {
     return(Delete(ConnIn, TranIn, FieldInfo.idAssociacao));
 }
Example #13
0
 /// <summary>
 /// Exclui um registro da tabela no banco de dados
 /// </summary>
 /// <param name="FieldInfo">Objeto AssociacaoFields 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(AssociacaoFields FieldInfo)
 {
     return(Delete(FieldInfo.idAssociacao));
 }
Example #14
0
        /// <summary> 
        /// Retorna um objeto AssociacaoFields preenchido com os valores dos campos do SqlDataReader
        /// </summary>
        /// <param name="dr">SqlDataReader - Preenche o objeto AssociacaoFields </param>
        /// <returns>AssociacaoFields</returns>
        private AssociacaoFields GetDataFromReader( SqlDataReader dr )
        {
            AssociacaoFields infoFields = new AssociacaoFields();

            if (!dr.IsDBNull(0))
            { infoFields.idAssociacao = dr.GetInt32(0); }
            else
            { infoFields.idAssociacao = 0; }

            if (!dr.IsDBNull(1))
            { infoFields.fkContato = dr.GetInt32(1); }
            else
            { infoFields.fkContato = 0; }

            if (!dr.IsDBNull(2))
            { infoFields.NumeroConta = dr.GetString(2); }
            else
            { infoFields.NumeroConta = string.Empty; }

            if (!dr.IsDBNull(3))
            { infoFields.DataAssociacao = dr.GetDateTime(3); }
            else
            { infoFields.DataAssociacao = DateTime.MinValue; }

            if (!dr.IsDBNull(4))
            { infoFields.DataCadastro = dr.GetDateTime(4); }
            else
            { infoFields.DataCadastro = DateTime.MinValue; }

            return infoFields;
        }
Example #15
0
        protected void btnSalvar_Click(object sender, EventArgs e)
        {
            switch (ValidFields())
            {
                case "Numero Conta Em Branco":
                    MessageBox.Show("Situação Associada. Campo Número da Conta é de preenchimento obrigatório.", MessageBox.MessageType.Info);
                    break;
                case "Descricao em Branco":
                    MessageBox.Show("Campo Descrição é de preenchimento obrigatório.", MessageBox.MessageType.Info);
                    break;
                case "Data em Branco":
                    MessageBox.Show("Campo Data é de preenchimento obrigatório.", MessageBox.MessageType.Info);
                    break;
                case "OK":

                    using (TransactionScope scope = new TransactionScope())
                    {
                        try
                        {

                            int idProspect = -1;
                            if (Session["idProspectNew"] != null)
                            {
                                idProspect = Convert.ToInt32(Session["idProspectNew"].ToString());
                            }
                            else if (Session["idProspectHist"] != null)
                            {
                                idProspect = Convert.ToInt32(Session["idProspectHist"].ToString());
                            }

                            ProspectControl prospectData = new ProspectControl();
                            ProspectFields prospectObj = new ProspectFields();

                            prospectObj = prospectData.GetItem(idProspect);
                            NomeProspect = prospectObj.Nome;

                            ContatoControl contatoDal = new ContatoControl();
                            ContatoFields contatoObj = new ContatoFields();

                            contatoObj.DataCadastro = DateTime.Now;
                            contatoObj.DataContato = Convert.ToDateTime(txtDate.Text + " " + DateTime.Now.TimeOfDay);
                            contatoObj.Descricao = DescricaoContato;
                            contatoObj.Situacao = Situacao;
                            contatoObj.Tipo = Tipo;
                            contatoObj.fkProspect = prospectObj.idProspect;
                            int id = -1;

                            if (Convert.ToInt32(hfEditaContato.Value) > 0)
                            {
                                contatoObj.idContato = Convert.ToInt32(hfEditaContato.Value);
                                contatoDal.Update(contatoObj);
                                id = contatoObj.idContato;
                            }
                            else
                            {
                                string situacaoContatoProspect = prospectObj.SituacaoProspect;

                                if (situacaoContatoProspect != "Associada")
                                    id = contatoDal.Add(ref contatoObj);

                                else
                                {
                                    MessageBox.Show("Usuário com situação de Associada, favor verificar.", MessageBox.MessageType.Info);
                                    return;
                                }
                            }

                            if (contatoObj.Tipo == "Associada")
                            {
                                AssociacaoControl associacaoDal = new AssociacaoControl();
                                AssociacaoFields associacaoObj = new AssociacaoFields();

                                associacaoObj.DataCadastro = contatoObj.DataCadastro;
                                associacaoObj.DataAssociacao = contatoObj.DataContato;
                                associacaoObj.NumeroConta = txtNumConta.Text;
                                associacaoObj.fkContato = id;

                                if (Convert.ToInt32(hfEditaContato.Value) > 0)
                                {
                                    AssociacaoFields aux = associacaoDal.FindByfkContato(Convert.ToInt32(hfEditaContato.Value));
                                    if (aux != null)
                                    {
                                        associacaoObj.idAssociacao = aux.idAssociacao;
                                        associacaoDal.Update(associacaoObj);
                                        prospectObj.SituacaoProspect = Situacao;
                                        prospectData.Update(prospectObj);

                                    }
                                    else
                                    {
                                        associacaoDal.Add(ref associacaoObj);
                                        prospectObj.SituacaoProspect = Situacao;
                                        prospectData.Update(prospectObj);
                                    }

                                }
                                else
                                {
                                    string situacaoProspect = string.Empty;

                                    associacaoDal.Add(ref associacaoObj);
                                    prospectObj.SituacaoProspect = Situacao;
                                    prospectData.Update(prospectObj);

                                }
                            }

                            if (Session["idProspectNew"] != null)
                            {
                                CleanFields();
                                MessageBox.Show("Contato adicionado com sucesso.", MessageBox.MessageType.Success);
                            }
                            else if (Session["idProspectHist"] != null)
                            {
                                CleanFields();
                                MessageBox.Show("Contato alterado com sucesso.", MessageBox.MessageType.Success);
                            }

                        }
                        catch (Exception ex)
                        {

                            MessageBox.Show(ex.Message, MessageBox.MessageType.Error);
                        }

                        scope.Complete();
                        break;
                    }

            }
        }
Example #16
0
        /// <summary> 
        /// Grava/Persiste um novo objeto AssociacaoFields no banco de dados
        /// </summary>
        /// <param name="FieldInfo">Objeto AssociacaoFields a ser gravado.Caso o parâmetro solicite a expressão "ref", será adicionado um novo valor a algum campo auto incremento.</param>
        /// <returns>"true" = registro gravado com sucesso, "false" = erro ao gravar registro (consulte a propriedade ErrorMessage para detalhes)</returns> 
        public bool Add( ref AssociacaoFields FieldInfo )
        {
            try
            {
                this.Conn = new SqlConnection(this.StrConnetionDB);
                this.Conn.Open();
                this.Tran = this.Conn.BeginTransaction();
                this.Cmd = new SqlCommand("Proc_Associacao_Add", this.Conn, this.Tran);
                this.Cmd.CommandType = CommandType.StoredProcedure;
                this.Cmd.Parameters.Clear();
                this.Cmd.Parameters.AddRange(GetAllParameters(FieldInfo, SQLMode.Add));
                if (!(this.Cmd.ExecuteNonQuery() > 0)) throw new Exception("Erro ao tentar inserir registro!!");
                this.Tran.Commit();
                FieldInfo.idAssociacao = (int)this.Cmd.Parameters["@Param_idAssociacao"].Value;
                return true;

            }
            catch (SqlException e)
            {
                this.Tran.Rollback();
                //this._ErrorMessage = string.Format(@"Houve um erro imprevisto ao tentar inserir 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 inserir 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();
            }
        }
Example #17
0
        /// <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 AssociacaoFields</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(AssociacaoFields FieldInfo, SQLMode Modo)
        {
            SqlParameter[] Parameters;

            switch (Modo)
            {
            case SQLMode.Add:
                Parameters = new SqlParameter[5];
                for (int I = 0; I < Parameters.Length; I++)
                {
                    Parameters[I] = new SqlParameter();
                }
                //Field idAssociacao
                Parameters[0].SqlDbType     = SqlDbType.Int;
                Parameters[0].Direction     = ParameterDirection.Output;
                Parameters[0].ParameterName = "@Param_idAssociacao";
                Parameters[0].Value         = DBNull.Value;

                break;

            case SQLMode.Update:
                Parameters = new SqlParameter[5];
                for (int I = 0; I < Parameters.Length; I++)
                {
                    Parameters[I] = new SqlParameter();
                }
                //Field idAssociacao
                Parameters[0].SqlDbType     = SqlDbType.Int;
                Parameters[0].ParameterName = "@Param_idAssociacao";
                Parameters[0].Value         = FieldInfo.idAssociacao;

                break;

            case SQLMode.SelectORDelete:
                Parameters = new SqlParameter[1];
                for (int I = 0; I < Parameters.Length; I++)
                {
                    Parameters[I] = new SqlParameter();
                }
                //Field idAssociacao
                Parameters[0].SqlDbType     = SqlDbType.Int;
                Parameters[0].ParameterName = "@Param_idAssociacao";
                Parameters[0].Value         = FieldInfo.idAssociacao;

                return(Parameters);

            default:
                Parameters = new SqlParameter[5];
                for (int I = 0; I < Parameters.Length; I++)
                {
                    Parameters[I] = new SqlParameter();
                }
                break;
            }

            //Field fkContato
            Parameters[1].SqlDbType     = SqlDbType.Int;
            Parameters[1].ParameterName = "@Param_fkContato";
            Parameters[1].Value         = FieldInfo.fkContato;

            //Field NumeroConta
            Parameters[2].SqlDbType     = SqlDbType.VarChar;
            Parameters[2].ParameterName = "@Param_NumeroConta";
            if ((FieldInfo.NumeroConta == null) || (FieldInfo.NumeroConta == string.Empty))
            {
                Parameters[2].Value = DBNull.Value;
            }
            else
            {
                Parameters[2].Value = FieldInfo.NumeroConta;
            }
            Parameters[2].Size = 7;

            //Field DataAssociacao
            Parameters[3].SqlDbType     = SqlDbType.SmallDateTime;
            Parameters[3].ParameterName = "@Param_DataAssociacao";
            if (FieldInfo.DataAssociacao == DateTime.MinValue)
            {
                Parameters[3].Value = DBNull.Value;
            }
            else
            {
                Parameters[3].Value = FieldInfo.DataAssociacao;
            }

            //Field DataCadastro
            Parameters[4].SqlDbType     = SqlDbType.SmallDateTime;
            Parameters[4].ParameterName = "@Param_DataCadastro";
            if (FieldInfo.DataCadastro == DateTime.MinValue)
            {
                Parameters[4].Value = DBNull.Value;
            }
            else
            {
                Parameters[4].Value = FieldInfo.DataCadastro;
            }

            return(Parameters);
        }