protected void btnSalvar_Click(object sender, EventArgs e)
        {
            BancosInstrucoesBL banBL = new BancosInstrucoesBL();
            BancosInstrucoes bancos = new BancosInstrucoes();

            bancos.Id = utils.ComparaIntComZero(hfId.Value);
            bancos.Codigo = txtCodigo.Text;
            bancos.Descricao = txtDescricao.Text;
            bancos.Nrdias = ddlObrigDias.SelectedValue == "true";
            bancos.Bancoid = utils.ComparaIntComZero(ddlBanco.SelectedValue);

            if (bancos.Id > 0)
            {
                if (banBL.EditarBL(bancos))
                    ExibirMensagem("Instrução atualizada com sucesso!");
                else
                    ExibirMensagem("Não foi possível atualizar a instrução. Revise as informações");

            }
            else
            {

                if (banBL.InserirBL(bancos))
                {
                    ExibirMensagem("Instrução gravada com sucesso!");
                    LimparCampos();
                }
                else
                    ExibirMensagem("Não foi possível gravar a instrução. Revise as informações");

            }
        }
        private bool IsValid(BancosInstrucoes ban)
        {
            bool valido;
            valido = ban.Descricao.Length <= 70;
            valido = valido && ban.Codigo.Length <= 2 && ban.Bancoid > 0;

            return valido;
        }
        public bool InserirBL(BancosInstrucoes ban)
        {
            if (IsValid(ban))
            {
                BancosInstrucoesDA bancosDA = new BancosInstrucoesDA();

                return bancosDA.InserirDA(ban);
            }
            else
                return false;
        }
        public bool ExcluirBL(BancosInstrucoes ban)
        {
            if (ban.Id > 0)
            {
                BancosInstrucoesDA bancosDA = new BancosInstrucoesDA();

                return bancosDA.ExcluirDA(ban);
            }
            else
                return false;
        }
        public bool EditarBL(BancosInstrucoes ban)
        {
            if (ban.Id > 0 && IsValid(ban))
            {
                BancosInstrucoesDA bancosDA = new BancosInstrucoesDA();

                return bancosDA.EditarDA(ban);
            }
            else
                return false;
        }
        protected void dtgBancos_RowDeleting(object sender, GridViewDeleteEventArgs e)
        {
            BancosInstrucoesBL banBL = new BancosInstrucoesBL();
            BancosInstrucoes bancos = new BancosInstrucoes();
            bancos.Id = utils.ComparaIntComZero(dtgBancos.DataKeys[e.RowIndex][0].ToString());

            if (banBL.ExcluirBL(bancos))
                ExibirMensagem("Registro excluído com sucesso !");
            else
                ExibirMensagem("Não foi possível excluir o registro, existem registros dependentes");
            Pesquisar(null);
        }
        public bool ExcluirDA(BancosInstrucoes ban)
        {
            SqlParameter[] paramsToSP = new SqlParameter[1];

            paramsToSP[0] = new SqlParameter("@id", ban.Id);

            try
            {
                SqlHelper.ExecuteNonQuery(ConfigurationManager.ConnectionStrings["conexao"].ToString(), CommandType.StoredProcedure, "stp_delete_bancosInstrucoes", paramsToSP);

                return true;
            }
            catch (Exception e)
            {
                return false;
            }
        }
        public bool InserirDA(BancosInstrucoes ban)
        {
            SqlParameter[] paramsToSP = new SqlParameter[4];

            paramsToSP[0] = new SqlParameter("@codigo", ban.Codigo);
            paramsToSP[1] = new SqlParameter("@descricao", ban.Descricao.ToUpper());
            paramsToSP[2] = new SqlParameter("@nrdias", ban.Nrdias);
            paramsToSP[3] = new SqlParameter("@bancoid", ban.Bancoid);

            try
            {
                SqlHelper.ExecuteNonQuery(ConfigurationManager.ConnectionStrings["conexao"].ToString(), CommandType.StoredProcedure, "stp_insert_bancosInstrucoes", paramsToSP);

                return true;
            }
            catch (Exception e)
            {
                return false;
            }
        }
        private List<BancosInstrucoes> CarregarObjBancoInstrucoes(SqlDataReader dr)
        {
            List<BancosInstrucoes> bancosInstrucoes = new List<BancosInstrucoes>();
            BancosDA banDA = new BancosDA();
            Int32 id;

            while (dr.Read())
            {
                BancosInstrucoes banInst = new BancosInstrucoes();
                banInst.Id = int.Parse(dr["ID"].ToString());
                banInst.Codigo = dr["CODIGO"].ToString();
                banInst.Descricao = dr["DESCRICAO"].ToString();
                banInst.Nrdias = Boolean.Parse(dr["NRDIAS"].ToString());
                banInst.Bancoid = int.Parse(dr["BANCOID"].ToString());

                if (banInst.Bancoid > 0)
                {
                    id = Convert.ToInt32(banInst.Bancoid);
                    List<Bancos> bancos = banDA.PesquisarDA(id);
                    Bancos ban = new Bancos();
                    foreach (Bancos ltBan in bancos)
                    {
                        ban.Codigo = ltBan.Codigo;
                        ban.Descricao = ltBan.Descricao;
                    }

                    banInst.Bancos = ban;
                }

                bancosInstrucoes.Add(banInst);
            }

            return bancosInstrucoes;
        }