private void btExcluir_Click(object sender, EventArgs e) { try { DialogResult d = MessageBox.Show("Deseja excluir o registro?", "Aviso", MessageBoxButtons.YesNo); if (d.ToString() == "Yes") { int codigo = Convert.ToInt32(txtComCod.Text); int qtde = Convert.ToInt32(cbNParcelas.Text); //conexao e bll da compra DAOConexao cx = new DAOConexao(DAOBanco.StringDeConexao); BLLCompra bblc = new BLLCompra(cx); //determina a quantidade de parcelas pagas qtde -= bblc.QtdeParcelasNaoPagas(codigo); if (qtde == 0)//parcela foi paga { cx.Conectar(); cx.IniciarTransacao(); try { //exlcuir as parcelas da compra BLLParcelasCompra bllp = new BLLParcelasCompra(cx); bllp.ExcluirTodasParcelas(codigo); //excluir itens da compra BLLItensCompra blli = new BLLItensCompra(cx); blli.ExcluirTodosItens(codigo); //excluir compra bblc.Excluir(codigo); MessageBox.Show("Registro excluído."); cx.TerminarTransacao(); cx.Desconectar(); this.LimpaTela(); this.alteraBotoes(1); } catch (Exception erro) { MessageBox.Show(erro.Message); cx.CancelarTransacao(); cx.Desconectar(); } } else { MessageBox.Show("Impossível excluir o registro. \n Registro possui parcelas pagas."); } } } catch { MessageBox.Show("Impossível excluir o registro. \n O registro está sendo utilizado em outro local."); this.alteraBotoes(3); } }
private void btExcluir_Click(object sender, EventArgs e) { try { DialogResult d = MessageBox.Show("Deseja excluir o Registro?", "Aviso", MessageBoxButtons.YesNo); if (d.ToString() == "Yes") { int codigo = Convert.ToInt32(txtCodCom.Text); int qtde = Convert.ToInt32(cbNParcelas.Text); //conexao e bll da compra DALConexao cx = new DALConexao(DadosDaConexao.StringDeConexao); BLLCompra bllc = new BLLCompra(cx); qtde -= bllc.QuantidadeParcelasNaoPagas(codigo); if (qtde == 0)//nao paguei nenhuma parcela { cx.Conectar(); cx.IniciarTransacao(); try { //excluir as parcelas da compra BLLParcelaCompra bllp = new BLLParcelaCompra(cx); bllp.ExcluirTodasAsParcelas(codigo); //excluir os itens da compra BLLItensCompra blli = new BLLItensCompra(cx); blli.ExcluirTodosOsItens(codigo); //excluir a compra bllc.Excluir(codigo); cx.TerminarTransacao(); cx.Desconectar(); this.LimpaTela(); this.alteraBotoes(1); } catch (Exception erro) { MessageBox.Show(erro.Message); cx.CancelaTransacao(); cx.Desconectar(); } } else { MessageBox.Show("Impossivel excluir o registro. \n O registro possui parcelas pagas"); } } } catch { MessageBox.Show("Impossivel excluir o registro. \n O registro esta sendo usado em outro local"); this.alteraBotoes(3); } }
//botão excluir compra private void btnExcluir_Click(object sender, EventArgs e) { try { //Aqui ele executa um diálogo perguntando se o usuário deseja ou não excluir o registro. if (MessageBox.Show("Deseja excluir o registro?", "Atenção", MessageBoxButtons.YesNo) == DialogResult.Yes) { /*Caso "sim", é aberto a conexão com o banco e executado o método de excluir. */ //Método de excluir sendo chamado. BLLCompra.Excluir(int.Parse(dgvCompra.CurrentRow.Cells[0].Value.ToString())); dgvCompra.DataSource = DALCompra.CarregarGrid(); } } catch { //Caso apresente algum erro. Será retornado esta mensagem. MessageBox.Show("Impossível excluir o registro. \n O registro está sendo utilizado em outro local"); } }
private void btExcluir_Click(object sender, EventArgs e) { try { DialogResult d = MessageBox.Show("Deseja excluir o registro?", "Aviso", MessageBoxButtons.YesNo); if (d.ToString() == "Yes") { DALConexao cx = new DALConexao(DadosConexao.StringDeConexao); BLLCompra bll = new BLLCompra(cx); bll.Excluir(Convert.ToInt32(txtCodigo.Text)); this.LimpaTela(); this.alteraBotoes(1); } } catch { MessageBox.Show("Impossível excluir o registro. \n O registro está sendo utilizado"); this.alteraBotoes(2); } }
private void btnExcluir_Click(object sender, EventArgs e) { try { DialogResult d = MessageBox.Show("Deseja excluir o registro?", "Aviso", MessageBoxButtons.YesNo); if (d.ToString() == "Yes") { DALConexao cx = new DALConexao(DadosDaConexao.StringDeConexao); BLLCompra bll = new BLLCompra(cx); bll.Excluir(Convert.ToInt32(txtCodCom.Text)); this.LimpaTela(); this.AlteraBotoes(1); } } catch { MessageBox.Show("Impossível excluir esse registro. \nO registro está sendo utilizado em outro local."); this.AlteraBotoes(3); } }
//============================================================================================================= private void btExcluir_Click(object sender, EventArgs e) // https://youtu.be/U_JhTWIVRro?list=PLfvOpw8k80Wqj1a66Qsjh8jj4hlkzKSjA { //tem que excluir os itens relacionados em todas as tabelas em um sequencia logica: //tem que excluir na sequencia inversa em que se gravou a compra //----------------------------------------------------------------------------------------------------------------------- //CONEXAO: //----------------------------------------------------------------------------------------------------------------------- DALConexao cx = new DALConexao(DadosDaConexao.StringDeConexao); //Recebe a string da conexão da classe DadosDaConexão try //CONEXAO: { //++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ //CONEXAO: INCIAR TRANSAÇÃO //++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ cx.Conectar(); //CONECTAR NO BANCO - para poder usar a transação, tem que ser usado aénas uma conexao, antes cada tabela teinha seu conetar cx.IniciarTransacao(); //inicia transação no banco SQL - Feito para acoes que envolvem mais de uma tabela https://youtu.be/fA_T1ywEXqw //Validar, excluir compra se ja tiver sido efetuado alguma pagamento: try { DialogResult d = MessageBox.Show("Deseja excluir o registro?", "Aviso", MessageBoxButtons.YesNo);//confirmar antes de excluir //caso responder sim... if (d.ToString() == "Yes") { //pega o codigo da compra: int CodigoCompra = Convert.ToInt32(txtComCod.Text); //criar objetos BLL: BLLParcelasCompra bllPar = new BLLParcelasCompra(cx); BLLItensCompra bllITen = new BLLItensCompra(cx); BLLCompra bllCP = new BLLCompra(cx); //passa a string de conexao //verificar se tem parcelas pagas: int Qtde = bllCP.QuantidadeParcePagas(CodigoCompra); if (Qtde > 0) //se tiver parcelas pagas { DialogResult g = MessageBox.Show("Esta Compra possui Parcelas Pagas Deseja! \n Deseja excluir o registro?", "Aviso", MessageBoxButtons.YesNo); //confirmar antes de excluir //caso responder sim... if (g.ToString() == "No") { //cancela esta ação: cx.TerminarTransacao(); //Efetua um comit, confirmar as alterações no banco cx.Desconectar(); //desconetar do banco return; } } //--------------------------------------------------------------------------------------------------------------------------- //03 - Excluir as parcelas da compra: //--------------------------------------------------------------------------------------------------------------------------- bllPar.ExcluirTodasAsParcelas(CodigoCompra); //--------------------------------------------------------------------------------------------------------------------------- //02 - Excluir itens da compra: //--------------------------------------------------------------------------------------------------------------------------- bllITen.ExcluirTodosOsItens(CodigoCompra); //--------------------------------------------------------------------------------------------------------------------------- //01 - Excluir compra: //--------------------------------------------------------------------------------------------------------------------------- bllCP.Excluir(Convert.ToInt32(txtComCod.Text));//retorna erro se este codigo ja estiver sendo utilizado como chave em outra tabela //Mensagem de sucesso: MessageBox.Show("Cadastro excluido com sucesso!"); } } catch // sem o Exception, qualquer tipo de erro { MessageBox.Show("Impossível excluir o registro. \n O registro esta sendo utilizado em outro local."); this.alteraBotoes(3); cx.CancelarTransacao(); //caso de erro desfaz todas as ações cx.Desconectar(); //desconetar do banco } this.LimpaTela(); this.alteraBotoes(1); //++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ //CONEXAO: TERMINAR TRANSAÇÃO //++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ //so vai gravar, se for nas tres tabelas cx.TerminarTransacao(); //Efetua um comit, confirmar as alterações no banco cx.Desconectar(); //desconetar do banco } catch (Exception erro) // caso der algum erro...(não limpa a tela) { MessageBox.Show("Erro ao gravar dados da Compra : \n" + erro.Message); //retorna mensagem do sistema, melhorar mensagem para o usuario cx.CancelarTransacao(); //caso de erro desfaz todas as ações cx.Desconectar(); //desconetar do banco } }