protected void ButtonExcluir_Click(object sender, EventArgs e)
        {
            NgTurma objNegocios = new NgTurma();
            Turma   objTurma    = new Turma();

            limparLabelMsg();
            NgPainel objNegocioPainel = new NgPainel();

            try
            {
                objTurma.codigo = TextBoxCodigo.Text;
                List <Painel> objRetPainel = objNegocioPainel.testeExcluirTurma(objTurma.codigo);
                if (objRetPainel.Count > 0)
                {
                    LabelMsg.Text = "Erro na exclusão. Antes de realizar essa operação, voce deve excluir o painel onde esta turma se encontra cadastrada.";
                }
                else
                {
                    //Operador ternario
                    LabelMsg.Text = (objNegocios.excluir(objTurma) ?
                                     "Registro Excluido com sucesso" : "Erro na exclusão. Verifique o codigo ou se esta turma se encontra cadastrada nos outros sistemas.");
                }
            }
            catch (Exception ex)
            {
                LabelMsg.Text = ex.Message;
            }
        }
        protected void ButtonExcluir_Click(object sender, EventArgs e)
        {
            NGFuncionario objNegocio     = new NGFuncionario();
            Funcionario   objFuncionario = new Funcionario();

            limparLabelMsg();
            NgPainel objNegocioPainel = new NgPainel();

            try
            {
                objFuncionario.matricula = TextBoxMatricula.Text;

                List <Painel> objRetPainel = objNegocioPainel.testeExcluirFuncionario(objFuncionario.matricula);
                if (objRetPainel.Count > 0)
                {
                    LabelMsg.Text = "Erro na exclusão. Antes de realizar essa operação, voce deve excluir o painel onde este funcionário se encontra cadastrado.";
                }
                else
                {
                    LabelMsg.Text = (objNegocio.Excluir(objFuncionario) ? "Registro excluido com sucesso." : "Erro na exclusão. Verifique a matricula ou se este funcionario se encontra cadastrado nos outros sistemas.");
                }
            }
            catch (Exception ex)
            {
                LabelMsg.Text = ex.Message;
            }
        }
        protected void ButtonExcluir_Click(object sender, EventArgs e)
        {
            NgCurso objNegocio = new NgCurso();
            Curso   objCurso   = new Curso();

            limparLabelMsg();
            NgPainel objNegocioPainel = new NgPainel();



            try
            {
                objCurso.codigo = TextBoxCodigo.Text;
                List <Painel> objRetPainel = objNegocioPainel.testeExcluirDisciplina(objCurso.codigo);
                if (objRetPainel.Count > 0)
                {
                    LabelMsg.Text = "Erro na exclusão. Antes de realizar essa operação, voce deve excluir o painel onde este curso se encontra cadastrado.";
                }
                else
                {
                    LabelMsg.Text = (objNegocio.excluir(objCurso) ?
                                     "Registro Excluido com sucesso" : "Erro na exclusão. Verifique o codigo ou se este curso se encontra cadastrado nos outros sistemas.");
                }
            }
            catch (Exception ex)
            {
                LabelMsg.Text = ex.Message;
            }
        }
        protected void ButtonExcluir_Click(object sender, EventArgs e)
        {
            Painel   objMetaDados = new Painel();
            NgPainel objNegocio   = new NgPainel();

            try
            {
                objMetaDados.codigo = TextBoxCodigo.Text;

                LabelMsg.Text = objNegocio.excluirPainelCodigo(objMetaDados.codigo) ? "Registro Excluido com sucesso." : "Erro na exclusão. Verifique o codigo.";
            }
            catch (Exception ex)
            {
                LabelMsg.Text = ex.Message;
            }
        }
        protected void GridView1_SelectedIndexChanged(object sender, EventArgs e)
        {
            Painel   objMetaDados = new Painel();
            NgPainel objNegocios  = new NgPainel();

            objMetaDados.codigo = GridView1.SelectedRow.Cells[1].Text;

            List <Painel> objRetornaConsulta = objNegocios.consultarPainel(objMetaDados.codigo);

            if (objRetornaConsulta.Count > 0)
            {
                TextBoxCodigo.Text                   = objRetornaConsulta[0].codigo;
                DropDownListSala.SelectedValue       = objRetornaConsulta[0].idSala;
                DropDownListTurma.SelectedValue      = objRetornaConsulta[0].idTurma;
                DropDownListCurso.SelectedValue      = objRetornaConsulta[0].idCurso;
                DropDownListDisciplina.SelectedValue = objRetornaConsulta[0].idDisciplina;
                DropDownListProfessor.SelectedValue  = objRetornaConsulta[0].idFuncionario;
            }
        }
        protected void ButtonAlterar_Click(object sender, EventArgs e)
        {
            NgPainel objNegocio   = new NgPainel();
            Painel   objMetaDados = new Painel();

            try
            {
                objMetaDados.codigo        = TextBoxCodigo.Text;
                objMetaDados.idSala        = DropDownListSala.SelectedValue;
                objMetaDados.idFuncionario = DropDownListProfessor.SelectedValue;
                objMetaDados.idDisciplina  = DropDownListDisciplina.SelectedValue;
                objMetaDados.idTurma       = DropDownListTurma.SelectedValue;
                objMetaDados.idCurso       = DropDownListCurso.SelectedValue;

                LabelMsg.Text = objNegocio.alterarPainel(objMetaDados) ? "Alteração efetuada com sucesso." : "Erro na alteração.";
            }
            catch (Exception ex)
            {
                LabelMsg.Text = ex.Message;
            }
        }
        protected void btAddRecord_Click(object sender, EventArgs e)
        {
            NgPainel objNegocio   = new NgPainel();
            Painel   objMetaDados = new Painel();

            LabelMsg.Text       = string.Empty;
            objMetaDados.codigo = TextBoxCodigo.Text;
            List <Painel> objRetornaPainel = objNegocio.VerificarCadastroBD(objMetaDados.codigo);

            if (objRetornaPainel.Count > 0)
            {
                LabelMsg.Text = "Codigo já cadastrado.";
            }
            else
            {
                //Cria um novo registro

                PainelVO registro    = new PainelVO();
                PainelVO painelValor = new PainelVO();
                //atribuiu os valores digitados

                registro.cod    = Convert.ToString(TextBoxCodigo.Text);
                registro.idDisc = Convert.ToString(DropDownDisciplina.SelectedItem);
                registro.idTur  = Convert.ToString(DropDownTurma.SelectedItem);
                registro.idCur  = Convert.ToString(DropDownCurso.SelectedItem);
                registro.idFun  = Convert.ToString(DropDownProfessor.SelectedItem);
                registro.idSal  = Convert.ToString(DropDownSala.SelectedItem);
                registro.turn   = Convert.ToString(DropDownTurno.SelectedItem);
                registro.dSem   = Convert.ToString(DropDownDsemana.SelectedItem);

                painelValor.cod    = Convert.ToString(TextBoxCodigo.Text);
                painelValor.idDisc = Convert.ToString(DropDownDisciplina.SelectedValue);
                painelValor.idTur  = Convert.ToString(DropDownTurma.SelectedValue);
                painelValor.idCur  = Convert.ToString(DropDownCurso.SelectedValue);
                painelValor.idFun  = Convert.ToString(DropDownProfessor.SelectedValue);
                painelValor.idSal  = Convert.ToString(DropDownSala.SelectedValue);
                painelValor.turn   = Convert.ToString(DropDownTurno.SelectedItem);
                painelValor.dSem   = Convert.ToString(DropDownDsemana.SelectedItem);



                ArrayList _listRegitros = new ArrayList();

                _listRegitros.Add(registro);

                //Percorre todos os items ja adicionados
                //na propriedade paineis para verificar se o registro ja foi adicionado

                for (int i = 0; i <= (Paineis.Count - 1); i++)
                {
                    PainelVO registro1 = (PainelVO)Paineis[i];

                    if (registro.cod.Equals(registro1.cod) && (registro.idDisc.Equals(registro1.idDisc) &&
                                                               (registro.idTur.Equals(registro1.idTur) && (registro.idCur.Equals(registro1.idCur) &&
                                                                                                           (registro.idFun.Equals(registro1.idFun) && (registro.idSal.Equals(registro1.idSal) &&
                                                                                                                                                       (registro.dSem.Equals(registro1.dSem) && (registro.turn.Equals(registro1.turn)))))))))
                    {
                        // Se sim limpa a lista e sai do for.

                        _listRegitros.Clear();

                        break;
                    }
                }

                // Verifica se a list está não está vazia

                if (_listRegitros.Count != 0)
                {
                    // Se sim adiciona o telefone a propriedade

                    // ViewState e carrega o GridTel.

                    Paineis.Add(registro);

                    PaineilValue.Add(painelValor);

                    carregarGridPainel();
                }

                else
                {
                    // Se não mostra mensagem

                    String _message = "window.alert(Telefone já Adicionado.);";

                    Page.ClientScript.RegisterStartupScript(this.GetType(), "Error", _message, true);
                }

                string        conex = "Data Source=ALU14024\\SQLEXPRESS;Initial Catalog=SYSO;Persist Security Info=True;User ID=sa;Password=alunolab";
                SqlConnection con   = new SqlConnection(conex);

                con.Open();

                // Cria a Transaction

                SqlTransaction tn = con.BeginTransaction();

                int p = 0;

                // Percorre todos os telefones informados e salva um por um

                try
                {
                    SqlCommand cmmd = new SqlCommand();



                    ConnectionManager objConnManager = new ConnectionManager();


                    StringBuilder insertSQL = new StringBuilder();

                    //DropDownSala.SelectedValue = insertSQL.ToString();
                    //DropDownCurso.SelectedValue = insertSQL.ToString();
                    //DropDownTurma.SelectedValue = insertSQL.ToString();
                    //DropDownDisciplina.SelectedValue = insertSQL.ToString();
                    //DropDownProfessor.SelectedValue = insertSQL.ToString();
                    //TextBoxCodigo.Text = insertSQL.ToString();
                    #region comentario insertSQL.Append

                    //insertSQL.Append("insert into painel (idSala,idTurma,idCurso,idDisc,matricula,codigo) values ");

                    //insertSQL.Append("(" + pan.idSal.ToString() + ",");
                    //insertSQL.Append("" + pan.idTur.ToString() + ", ");
                    //insertSQL.Append("" + pan.idCur.ToString() + ", ");
                    //insertSQL.Append("" + pan.idDisc.ToString() + ", ");
                    //insertSQL.Append("" + pan.idFun.ToString() + ", ");
                    //insertSQL.Append("" + pan.cod + " )");

                    //// Adicionas os parâmetros da variávl comando



                    //cmmd.CommandText = insertSQL.ToString();


                    //cmmd.CommandType = CommandType.Text;

                    //cmmd.Connection = con;

                    //cmmd.Transaction = tn;

                    //// Executa o comando

                    //i = cmmd.ExecuteNonQuery();
                    #endregion

                    string strSql = "insert into painel (idTurma,idSala,idDisc,matricula,idCurso,codigo,data,turno) " +
                                    "values (@pidTurma,@pidSala,@pidDisciplina,@pmatricula,@pidCurso,@pCodigo,@pData,@pTurno)";

                    List <SqlParameter> objParams = new List <SqlParameter>();
                    objParams.Add(new SqlParameter("@pidTurma", DropDownTurma.SelectedValue));
                    objParams.Add(new SqlParameter("@pidSala", DropDownSala.SelectedValue));
                    objParams.Add(new SqlParameter("@pidDisciplina", DropDownDisciplina.SelectedValue));
                    objParams.Add(new SqlParameter("@pmatricula", DropDownProfessor.SelectedValue));
                    objParams.Add(new SqlParameter("@pidCurso", DropDownCurso.SelectedValue));
                    objParams.Add(new SqlParameter("@pCodigo", TextBoxCodigo.Text));
                    objParams.Add(new SqlParameter("@pData", DropDownDsemana.SelectedValue));
                    objParams.Add(new SqlParameter("@pTurno", DropDownTurno.SelectedValue));


                    objConnManager.executarComando(strSql, objParams);
                }

                catch
                {
                    tn.Rollback();

                    con.Close();
                }



                if (p > 0)
                {
                    tn.Commit();

                    con.Close();

                    String _message = "window.alert(Linha Adicionad com Sucesso.);";

                    Page.ClientScript.RegisterStartupScript(this.GetType(), "Error", _message, true);
                }
            }
        }