private void FPreco_Lancamento_Shown(object sender, EventArgs e) { try { Padroes(); if (Modo == Modo.Cadastrar) { preco = new TB_EST_PRECO(); } else if (Modo == Modo.Alterar) { if (preco == null) { Excessoes.Alterar(); } // Colocado a vericação para que quando não tiver preço no produto lançado no PDV, caia como alteração com os valores pré cadastrados. if (preco.ID_PRECO.TemValor()) { teID_PRECO.Text = preco.ID_PRECO.ToString(); } beID_PRODUTO.Text = preco.ID_PRODUTO.ToString(); beID_PRODUTO_Leave(null, null); rgTP_PRECO.SelectedIndex = preco.TP_PRECO.Validar() == "V" ? 0 : 1; seVL_PRECO.Value = preco.VL_PRECO.Padrao(); } } catch (Exception excessao) { excessao.Validar(); } }
public void Gravar(TB_EST_PRECO preco, ref int posicaoTransacao) { try { Conexao.Iniciar(ref posicaoTransacao); var cancelar = Conexao.BancoDados.TB_EST_PRECOs.Where(a => a.ID_PRODUTO == preco.ID_PRODUTO && a.ID_PRECO != preco.ID_PRECO); foreach (var registro in cancelar) { Deletar(registro, ref posicaoTransacao); } preco.ID_PRECO = (Conexao.BancoDados.TB_EST_PRECOs.Where(a => a.ID_PRODUTO == preco.ID_PRODUTO).Any() ? Conexao.BancoDados.TB_EST_PRECOs.Where(a => a.ID_PRODUTO == preco.ID_PRODUTO).Max(a => a.ID_PRECO) : 0) + 1; Conexao.BancoDados.TB_EST_PRECOs.InsertOnSubmit(preco); Conexao.Enviar(); Conexao.Finalizar(ref posicaoTransacao); } catch (Exception excessao) { Conexao.Voltar(ref posicaoTransacao); throw excessao; } }
public void Deletar(TB_EST_PRECO preco, ref int posicaoTransacao) { try { Conexao.Iniciar(ref posicaoTransacao); var existente = Conexao.BancoDados.TB_EST_PRECOs.FirstOrDefault(a => a.ID_PRODUTO == preco.ID_PRODUTO && a.ST_ATIVO == true); if (existente != null) { existente.ST_ATIVO = false; } Conexao.Enviar(); Conexao.Finalizar(ref posicaoTransacao); } catch (Exception excessao) { Conexao.Voltar(ref posicaoTransacao); throw excessao; } }
public override void Gravar() { try { Validar(); preco = new TB_EST_PRECO(); preco.ID_PRECO = beID_PRODUTO.Text.ToInt32().Padrao(); preco.ID_PRODUTO = beID_PRODUTO.Text.Trim().ToInt32().Padrao(); preco.TP_PRECO = rgTP_PRECO.SelectedIndex == 0 ? "V" : "C"; preco.VL_PRECO = seVL_PRECO.Value; preco.ST_ATIVO = true; var posicaoTransacao = 0; new QPreco().Gravar(preco, ref posicaoTransacao); base.Gravar(); } catch (Exception excessao) { excessao.Validar(); } }