/// <summary>
 /// evento disparado pelo botão salvar
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 protected void btnSalvar_Click(object sender, EventArgs e)
 {
     //verifica se os campos da página estão válidos
     if (Page.IsValid)
     {
         try
         {
             //cria um novo objeto de despesa
             Despesas despesa = new Despesas();
             //atribui os dados que estão na página
             despesa.Descricao = txtDescricao.Text;
             despesa.Valor = decimal.Parse(txtValor.Text);
             despesa.Data = DateTime.Parse(txtData.Text);
             //salva o registro no banco
             despesa.CreateAndFlush();
         }
         catch (Exception ex)
         {
             //grava a mensagemd de erro no banco de dados
             Logger.Error(ex.Message);
             base.ExibirMensagemErro();
         }
         base.ExibirMensagemSucesso(Funcionalidade.Despesa, Operacao.Inclusao);
     }
 }
 /// <summary>
 /// evento disparado pelo botão salvar
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 protected void btnSalvar_Click(object sender, EventArgs e)
 {
     //verifica se os campos da página estão válidos
     if (Page.IsValid)
     {
         try
         {
             //cria um novo objeto de despesa
             Despesas despesa = new Despesas();
             //atribui os dados que estão na página
             despesa.Descricao = txtDescricao.Text;
             despesa.Valor     = decimal.Parse(txtValor.Text);
             despesa.Data      = DateTime.Parse(txtData.Text);
             //salva o registro no banco
             despesa.CreateAndFlush();
         }
         catch (Exception ex)
         {
             //grava a mensagemd de erro no banco de dados
             Logger.Error(ex.Message);
             base.ExibirMensagemErro();
         }
         base.ExibirMensagemSucesso(Funcionalidade.Despesa, Operacao.Inclusao);
     }
 }
        /// <summary>
        /// evento disparado pelo botão converter funcionario em despesa
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected void btnConverter_Click(object sender, EventArgs e)
        {
            try
            {
                //obtem a lista de funcionarios selecionados no grid
                List <int> lista = (List <int>)ViewState["funcionarios"];

                Funcionario funcionario;
                Despesas    despesa;

                //para cada funcionario, gera um registro de despesa
                //considerando o salário como o valor da despesa
                foreach (int item in lista)
                {
                    funcionario       = Funcionario.FindByPrimaryKey(item);
                    despesa           = new Despesas();
                    despesa.Descricao = string.Format("Salário do funcionário {0} - {1}", funcionario.Nome, DateTime.Now.ToString("MM/yyyy"));
                    despesa.Valor     = funcionario.SalarioVigente.Valor;
                    despesa.Data      = DateTime.Today;
                    despesa.CreateAndFlush();
                }
                //refaz a consulta com as novas despesas cadastradas
                PesquisarDespesas();
            }
            catch (Exception ex)
            {
                //grava a mensagemd e erro em um arquivo de texto
                Logger.Error(ex.Message);
                pnlMensagem.ExibirMensagem("ocorreu um erro inesperado no sistema");
            }
        }
        /// <summary>
        /// evento disparado pelo botão converter funcionario em despesa
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected void btnConverter_Click(object sender, EventArgs e)
        {
            try
            {
                //obtem a lista de funcionarios selecionados no grid
                List<int> lista = (List<int>)ViewState["funcionarios"];

                Funcionario funcionario;
                Despesas despesa;

                //para cada funcionario, gera um registro de despesa 
                //considerando o salário como o valor da despesa
                foreach (int item in lista)
                {
                    funcionario = Funcionario.FindByPrimaryKey(item);
                    despesa = new Despesas();
                    despesa.Descricao = string.Format("Salário do funcionário {0} - {1}", funcionario.Nome, DateTime.Now.ToString("MM/yyyy"));
                    despesa.Valor = funcionario.SalarioVigente.Valor;
                    despesa.Data = DateTime.Today;
                    despesa.CreateAndFlush();
                }
                //refaz a consulta com as novas despesas cadastradas
                PesquisarDespesas();
            }
            catch (Exception ex)
            {
                //grava a mensagemd e erro em um arquivo de texto
                Logger.Error(ex.Message);
                pnlMensagem.ExibirMensagem("ocorreu um erro inesperado no sistema");
            }
        }