protected void grdConta_SelectedIndexChanged(object sender, EventArgs e) { // Pega a data de vencimento do boleto, que pode ter sido alterado bool boletoChegou = ((HiddenField)((GridView)sender).SelectedRow.FindControl("hdfBoletoChegou")).Value.ToLower() == "true"; string idContaPg = ((HiddenField)((GridView)sender).SelectedRow.FindControl("hdfIdContaPg")).Value; string dataVenc = null; if (!boletoChegou) { dataVenc = ((TextBox)((GridView)sender).SelectedRow.FindControl("txtDataVenc")).Text; if (!FuncoesData.ValidaData(dataVenc)) { Glass.MensagemAlerta.ShowMsg("Data inválida.", Page); return; } } ContasPagarDAO.Instance.BoletoChegou(null, !boletoChegou, 0, Glass.Conversoes.StrParaUint(idContaPg), dataVenc); // Desmarca linha da grid como selecionada ((GridView)sender).SelectedIndex = -1; grdConta.DataBind(); }
public RetornoGerar Gerar(uint idCustoFixo, string mesAno, int diaVenc, decimal valorVenc, string obs) { lock (gerarCustoFixo) { using (var transaction = new GDATransaction()) { try { transaction.BeginTransaction(); CustoFixo c = GetElement(transaction, idCustoFixo); RetornoGerar retorno = new RetornoGerar(); retorno.Descricao = c.Descricao; // Verifica se o dia escolhido para gerar o custo fixo é válido. if (!FuncoesData.ValidaData(diaVenc + "/" + mesAno)) { retorno.Tipo = RetornoGerar.TipoRetorno.DataInvalida; return(retorno); } // Verifica se este custo fixo já foi gerado para este mês else if (ContasPagarDAO.Instance.ExistsCustoFixo(transaction, idCustoFixo, mesAno)) { retorno.Tipo = RetornoGerar.TipoRetorno.JaExiste; return(retorno); } ContasPagar contaPagar = new ContasPagar(); contaPagar.IdCustoFixo = c.IdCustoFixo; contaPagar.DataVenc = DateTime.Parse(diaVenc + "/" + mesAno); contaPagar.IdConta = c.IdConta; contaPagar.IdFornec = c.IdFornec; contaPagar.IdLoja = c.IdLoja; contaPagar.Paga = false; contaPagar.ValorVenc = valorVenc; contaPagar.Contabil = c.Contabil; contaPagar.Obs = obs; // Atualizar o valor, a data de vencimento e a data que foi gerado deste custo fixo UpdateValorDiaVenc(transaction, idCustoFixo, valorVenc, diaVenc); // Insere conta a pagar e atualiza o número das parcelas ContasPagarDAO.Instance.Insert(transaction, contaPagar); ContasPagarDAO.Instance.AtualizaNumParcCustoFixo(transaction, idCustoFixo); retorno.Tipo = RetornoGerar.TipoRetorno.OK; transaction.Commit(); transaction.Close(); return(retorno); } catch (Exception ex) { transaction.Rollback(); transaction.Close(); ErroDAO.Instance.InserirFromException("CustoFixoDAO(Gerar). IdCustoFixo:" + idCustoFixo, ex); throw; } } } }