Exemple #1
0
        //=================================================================================================
        // EDITING DATAGRID ITENS
        //=================================================================================================
        #region EDITING DATAGRID ITENS

        private void dgvListagem_CellBeginEdit(object sender, DataGridViewCellCancelEventArgs e)
        {
            //--- impede alteracoes nas colunas
            if (e.ColumnIndex == clnID.Index || e.ColumnIndex == clnImage.Index)
            {
                e.Cancel = true;
                return;
            }

            classGrupo currentItem = (classGrupo)dgvListagem.Rows[e.RowIndex].DataBoundItem;

            if (Sit != EnumFlagEstado.RegistroSalvo && currentItem.RowSit == EnumFlagEstado.RegistroSalvo)
            {
                e.Cancel = true;
                return;
            }

            if (currentItem.IDDespesaTipoGrupo == null)
            {
                Sit = EnumFlagEstado.NovoRegistro;
                currentItem.RowSit = EnumFlagEstado.NovoRegistro;
                dgvListagem.Rows[e.RowIndex].DefaultCellStyle.BackColor = Color.MistyRose;
            }
            else
            {
                Sit = EnumFlagEstado.Alterado;
                currentItem.RowSit = EnumFlagEstado.Alterado;
                dgvListagem.Rows[e.RowIndex].DefaultCellStyle.BackColor = Color.MistyRose;
            }
        }
        // OBTER SALDO DA CAMPANHA E UPDATE
        //------------------------------------------------------------------------------------------------------------
        private void GetSaldo()
        {
            try
            {
                // --- Ampulheta ON
                Cursor.Current = Cursors.WaitCursor;

                if (_campanha.IDCampanha == null)
                {
                    _campanha.CampanhaSaldo = 0;
                }
                else
                {
                    decimal SaldoAtual = cBLL.GetCampanhaSaldo((int)_campanha.IDCampanha);

                    if (SaldoAtual != _campanha.CampanhaSaldo)
                    {
                        _campanha.CampanhaSaldo = cBLL.GetCampanhaSaldo((int)_campanha.IDCampanha);

                        cBLL.UpdateCampanha(_campanha);
                        Sit = EnumFlagEstado.RegistroSalvo;
                    }
                }
            }
            catch (Exception ex)
            {
                AbrirDialog("Uma exceção ocorreu ao Obter o Saldo da Campanha..." + "\n" +
                            ex.Message, "Exceção", DialogType.OK, DialogIcon.Exclamation);
            }
            finally
            {
                // --- Ampulheta OFF
                Cursor.Current = Cursors.Default;
            }
        }
        // OPEN BANDEIRA PROCURA LIST
        //------------------------------------------------------------------------------------------------------------
        private void btnSetBandeira_Click(object sender, EventArgs e)
        {
            if (operadoraList.Count == 0)
            {
                AbrirDialog("Não há BANDEIRAS cadastradas...", "BANDEIRAS",
                            DialogType.OK, DialogIcon.Exclamation);
                return;
            }

            var dic = bandeirasList.ToDictionary(x => (int)x.IDCartaoBandeira, x => x.CartaoBandeira);

            Main.frmComboLista frm = new Main.frmComboLista(dic, txtCartaoBandeira, _taxa.IDCartaoBandeira);

            frm.ShowDialog();

            //--- check return
            if (frm.DialogResult == DialogResult.OK)
            {
                if (Sit == EnumFlagEstado.RegistroSalvo)
                {
                    Sit = EnumFlagEstado.Alterado;
                }

                _taxa.IDCartaoBandeira = frm.propEscolha.Key;
                txtCartaoBandeira.Text = frm.propEscolha.Value;
            }

            //--- select
            txtCartaoBandeira.Focus();
            txtCartaoBandeira.SelectAll();
        }
Exemple #4
0
 // ADD NEW
 private void btnNovo_Click(object sender, EventArgs e)
 {
     bindList.AddNew();
     Sit = EnumFlagEstado.NovoRegistro;
     dgvListagem.CurrentCell = dgvListagem.CurrentRow.Cells[0];
     dgvListagem.BeginEdit(false);
 }
        // CANCELAR ALTERACAO
        //------------------------------------------------------------------------------------------------------------
        private void btnCancelar_Click(object sender, EventArgs e)
        {
            if (Sit == EnumFlagEstado.NovoRegistro)
            {
                var response = AbrirDialog("Deseja cancelar a inserção de um novo registro?",
                                           "Cancelar", DialogType.SIM_NAO, DialogIcon.Question);

                if (response == DialogResult.Yes)
                {
                    new frmCartaoControle().Show();
                    MostraMenuPrincipal();
                    Close();
                }
            }
            else if (Sit == EnumFlagEstado.Alterado)
            {
                bind.CancelEdit();
                Sit = EnumFlagEstado.RegistroSalvo;
                AtivoButtonImage();
            }
            else
            {
                Sit = EnumFlagEstado.RegistroSalvo;
            }
        }
Exemple #6
0
        // FECHAR FORM
        //------------------------------------------------------------------------------------------------------------
        private void btnFechar_Click(object sender, EventArgs e)
        {
            if (Sit == EnumFlagEstado.NovoRegistro)
            {
                AbrirDialog("Esse registro ainda não foi salvo... \n" +
                            "Favor SALVAR ou CANCELAR a edição do registro atual antes de fechar.",
                            "Registro Novo", DialogType.OK, DialogIcon.Exclamation);
                return;
            }
            else if (Sit == EnumFlagEstado.Alterado)
            {
                AbrirDialog("Esse registro de Transferência não pode ser alterado... \n" +
                            "O formulário será fechado, e não será salvo.",
                            "Registro Alterado", DialogType.OK, DialogIcon.Exclamation);
                bind.CancelEdit();
                Sit = EnumFlagEstado.RegistroSalvo;
            }

            if (_formOrigem == null)
            {
                new frmTransfSetorListagem().Show();
            }

            Close();
        }
Exemple #7
0
        private void btnSetComprador_Click(object sender, EventArgs e)
        {
            if (!btnSetComprador.Enabled)
            {
                return;
            }

            frmProvisorioComprador frm = new frmProvisorioComprador(this, txtComprador.Text);

            frm.ShowDialog();

            //--- check return
            if (frm.DialogResult == DialogResult.OK)             // SEARCH COMPRADOR
            {
                if (Sit != EnumFlagEstado.NovoRegistro && _provisoria.Comprador != frm.propEscolha)
                {
                    Sit = EnumFlagEstado.Alterado;
                }

                _provisoria.Comprador = frm.propEscolha;
                txtComprador.Text     = frm.propEscolha;
            }
            else if (frm.DialogResult == DialogResult.Yes)             // SEARCH AUTORIZANTE
            {
                btnInsertComprador_Click(sender, e);
            }
            //--- select
            txtComprador.Focus();
            txtComprador.SelectAll();
        }
        // CANCELAR ALTERACAO
        //------------------------------------------------------------------------------------------------------------
        private void btnCancelar_Click(object sender, EventArgs e)
        {
            if (Sit == EnumFlagEstado.NovoRegistro)
            {
                var response = AbrirDialog("Deseja cancelar a inserção de um novo registro?",
                                           "Cancelar", DialogType.SIM_NAO, DialogIcon.Question);

                if (response == DialogResult.Yes)
                {
                    if (bind.Count == 1)
                    {
                        Close();

                        if (_formOrigem != null && _formOrigem.GetType() == typeof(frmPrincipal))
                        {
                            MostraMenuPrincipal();
                        }
                    }
                    else
                    {
                        bind.CancelEdit();
                    }
                }
            }
            else if (Sit == EnumFlagEstado.Alterado)
            {
                bind.CancelEdit();
                Sit = EnumFlagEstado.RegistroSalvo;
            }
            else
            {
                Sit = EnumFlagEstado.RegistroSalvo;
            }
        }
Exemple #9
0
        // FECHAR FORM
        //------------------------------------------------------------------------------------------------------------
        private void btnFechar_Click(object sender, EventArgs e)
        {
            if (Sit == EnumFlagEstado.NovoRegistro)
            {
                AbrirDialog("Esse registro ainda não foi salvo... \n" +
                            "Favor SALVAR ou CANCELAR a edição do registro atual antes de fechar.",
                            "Registro Novo", DialogType.OK, DialogIcon.Exclamation);
                return;
            }
            else if (Sit == EnumFlagEstado.Alterado)
            {
                AbrirDialog("Esse registro de Entrada não pode ser alterado... \n" +
                            "O formulário será fechado, e não será salvo.",
                            "Registro Alterado", DialogType.OK, DialogIcon.Exclamation);
                bind.CancelEdit();
                Sit = EnumFlagEstado.RegistroSalvo;
            }

            if (!Modal)
            {
                new frmEntradaListagem()
                {
                    MdiParent = Application.OpenForms[0]
                }
            }
Exemple #10
0
        // CREATE SHORTCUT TO TEXTBOX LIST VALUES
        //------------------------------------------------------------------------------------------------------------
        private void Control_KeyPress(object sender, KeyPressEventArgs e)
        {
            if (char.IsDigit(e.KeyChar))
            {
                Control ctr = (Control)sender;
                e.Handled = true;

                if (ctr.Name == "txtPeriodicidade" && dicPeriodicidade.Count > 0)
                {
                    if (dicPeriodicidade.ContainsKey(byte.Parse(e.KeyChar.ToString())))
                    {
                        var tipo = dicPeriodicidade.FirstOrDefault(x => x.Key == byte.Parse(e.KeyChar.ToString()));

                        if (tipo.Key != _tipo.Periodicidade)
                        {
                            if (Sit == EnumFlagEstado.RegistroSalvo)
                            {
                                Sit = EnumFlagEstado.Alterado;
                            }

                            _tipo.Periodicidade   = (byte)tipo.Key;
                            txtPeriodicidade.Text = tipo.Value;
                        }
                    }
                }
            }
        }
 private void RegistroAlterado(object sender, PropertyChangedEventArgs e)
 {
     if (Sit != EnumFlagEstado.Alterado && Sit != EnumFlagEstado.NovoRegistro)
     {
         Sit = EnumFlagEstado.Alterado;
     }
 }
        // SALVAR REGISTRO
        //------------------------------------------------------------------------------------------------------------
        private void btnSalvar_Click(object sender, EventArgs e)
        {
            try
            {
                // --- Ampulheta ON
                Cursor.Current = Cursors.WaitCursor;

                //--- check data
                if (!CheckSaveData())
                {
                    return;
                }

                ContaBLL cBLL = new ContaBLL();

                //--- SAVE: INSERT OR UPDATE
                if (_conta.IDConta == null)                 //--- save | Insert
                {
                    // create ajuste
                    objCaixaAjuste ajuste = null;

                    if (_conta.ContaSaldo > 0)
                    {
                        ajuste = CreateAjuste();
                        if (ajuste == null)
                        {
                            return;
                        }
                    }

                    //--- execute INSERT
                    int ID = cBLL.InsertConta(_conta, ajuste, ContaSaldoLocalUpdate, SetorSaldoLocalUpdate);

                    //--- define newID
                    _conta.IDConta = ID;
                }
                else                 //--- update
                {
                    cBLL.UpdateConta(_conta);
                }

                //--- change Sit
                Sit = EnumFlagEstado.RegistroSalvo;
                //--- emit massage
                AbrirDialog("Registro Salvo com sucesso!",
                            "Registro Salvo", DialogType.OK, DialogIcon.Information);
            }
            catch (Exception ex)
            {
                AbrirDialog("Uma exceção ocorreu ao Salvar Registro de Conta..." + "\n" +
                            ex.Message, "Exceção", DialogType.OK, DialogIcon.Exclamation);
            }
            finally
            {
                // --- Ampulheta OFF
                Cursor.Current = Cursors.Default;
            }
        }
        // CONTROL KEYDOWN: BLOCK (+), CREATE (DELETE), BLOCK EDIT
        //------------------------------------------------------------------------------------------------------------
        private void Control_KeyDown(object sender, KeyEventArgs e)
        {
            Control ctr = (Control)sender;

            if (e.KeyCode == Keys.Add || e.KeyCode == Keys.F4)
            {
                e.Handled = true;

                switch (ctr.Name)
                {
                case "txtCartaoOperadora":
                    btnSetOperadora_Click(sender, new EventArgs());
                    break;

                case "txtCartaoBandeira":
                    btnSetBandeira_Click(sender, new EventArgs());
                    break;

                default:
                    break;
                }
            }
            else if (e.KeyCode == Keys.Delete)
            {
                e.Handled = true;

                switch (ctr.Name)
                {
                case "txtCartaoBandeira":
                    if (_taxa.IDCartaoBandeira != null)
                    {
                        Sit = EnumFlagEstado.Alterado;
                    }
                    txtCartaoBandeira.Clear();
                    _taxa.IDCartaoBandeira = null;
                    break;

                default:
                    break;
                }
            }
            else if (e.Alt)
            {
                e.Handled = false;
            }
            else
            {
                //--- cria um array de controles que serão bloqueados de alteracao
                Control[] controlesBloqueados = { txtCartaoOperadora, txtCartaoBandeira };

                if (controlesBloqueados.Contains(ctr))
                {
                    e.Handled          = true;
                    e.SuppressKeyPress = true;
                }
            }
        }
Exemple #14
0
        // SALVAR REGISTRO
        //------------------------------------------------------------------------------------------------------------
        private void btnSalvar_Click(object sender, EventArgs e)
        {
            try
            {
                // --- Ampulheta ON
                Cursor.Current = Cursors.WaitCursor;

                //--- check data
                if (!CheckSaveData())
                {
                    return;
                }

                MembroBLL cBLL = new MembroBLL(DBPath());

                if (chkDtBatismo.Checked)
                {
                    _membro.BatismoData = null;
                }

                if (_membro.IDMembro == null)
                {
                    //--- save | Insert
                    int ID = (int)cBLL.InsertMembro(_membro);

                    //--- define newID
                    _membro.IDMembro = ID;
                    lblID.DataBindings["Text"].ReadValue();
                }
                else
                {
                    //--- update
                    cBLL.UpdateMembro(_membro);
                }

                //--- change Sit
                Sit = EnumFlagEstado.RegistroSalvo;
                //--- emit massage
                AbrirDialog("Registro Salvo com sucesso!",
                            "Registro Salvo", DialogType.OK, DialogIcon.Information);
            }
            catch (AppException ex)
            {
                AbrirDialog("Uma duplicação de registro irá acontecer ao Salvar Registro de Membro..." + "\n" +
                            ex.Message, "Duplicação", DialogType.OK, DialogIcon.Exclamation);
            }
            catch (Exception ex)
            {
                AbrirDialog("Uma exceção ocorreu ao Salvar Registro de Membro..." + "\n" +
                            ex.Message, "Exceção", DialogType.OK, DialogIcon.Warning);
            }
            finally
            {
                // --- Ampulheta OFF
                Cursor.Current = Cursors.Default;
            }
        }
Exemple #15
0
        private void RegistroAlterado(bool Alterado)
        {
            if (Sit != EnumFlagEstado.Alterado && Sit != EnumFlagEstado.NovoRegistro)
            {
                Sit = EnumFlagEstado.Alterado;
            }

            EP.Clear();
        }
Exemple #16
0
 // CANCEL
 private void btnCancelar_Click(object sender, EventArgs e)
 {
     ObterDados();
     Sit = EnumFlagEstado.RegistroSalvo;
     if (list.Count > 0)
     {
         dgvListagem.CurrentCell = dgvListagem.Rows[dgvListagem.CurrentRow.Index].Cells[1];
     }
 }
        // SALVAR REGISTRO
        //------------------------------------------------------------------------------------------------------------
        private void btnSalvar_Click(object sender, EventArgs e)
        {
            try
            {
                // --- Ampulheta ON
                Cursor.Current = Cursors.WaitCursor;

                //--- check data
                if (!CheckSaveData())
                {
                    return;
                }

                ReuniaoBLL sBLL = new ReuniaoBLL();

                //--- SAVE: INSERT OR UPDATE
                if (_reuniao.IDReuniao == null)                 //--- save | Insert
                {
                    int ID;

                    if (!chkTodasCongregacoes.Checked)
                    {
                        ID = sBLL.InsertReuniao(_reuniao);
                    }
                    else
                    {
                        ID = sBLL.InsertReuniaoAllCongregacoes(_reuniao);
                        txtCongregacao.Text = _reuniao.Congregacao;
                    }

                    //--- define newID
                    _reuniao.IDReuniao = ID;
                }
                else                 //--- update
                {
                    sBLL.UpdateReuniao(_reuniao);
                }

                //--- change Sit
                Sit = EnumFlagEstado.RegistroSalvo;

                //--- emit massage
                AbrirDialog("Registro Salvo com sucesso!",
                            "Registro Salvo", DialogType.OK, DialogIcon.Information);
            }
            catch (Exception ex)
            {
                AbrirDialog("Uma exceção ocorreu ao Salvar Registro de Reuniao..." + "\n" +
                            ex.Message, "Exceção", DialogType.OK, DialogIcon.Exclamation);
            }
            finally
            {
                // --- Ampulheta OFF
                Cursor.Current = Cursors.Default;
            }
        }
        // INSERIR NOVO REGISTRO
        //------------------------------------------------------------------------------------------------------------
        private void btnNovo_Click(object sender, EventArgs e)
        {
            if (Sit != EnumFlagEstado.RegistroSalvo)
            {
                return;
            }

            bind.AddNew();
            Sit = EnumFlagEstado.NovoRegistro;
            txtCartaoDescricao.Focus();
        }
        // CONTROL KEYDOWN: BLOCK (+), CREATE (DELETE), BLOCK EDIT
        //------------------------------------------------------------------------------------------------------------
        private void Control_KeyDown(object sender, KeyEventArgs e)
        {
            Control ctr = (Control)sender;

            if (e.KeyCode == Keys.Add || e.KeyCode == Keys.F4)
            {
                e.Handled = true;

                switch (ctr.Name)
                {
                case "txtSetor":
                    btnSetorEscolher_Click(sender, new EventArgs());
                    break;

                default:
                    break;
                }
            }
            else if (e.KeyCode == Keys.Delete)
            {
                e.Handled = true;

                switch (ctr.Name)
                {
                case "txtSetor":
                    if (_congregacao.IDCongregacaoSetor != null)
                    {
                        Sit = EnumFlagEstado.Alterado;
                    }
                    txtSetor.Clear();
                    _congregacao.IDCongregacaoSetor = null;
                    break;

                default:
                    break;
                }
            }
            else if (e.Alt)
            {
                e.Handled = false;
            }
            else
            {
                //--- cria um array de controles que serão bloqueados de alteracao
                Control[] controlesBloqueados = { txtSetor };

                if (controlesBloqueados.Contains(ctr))
                {
                    e.Handled          = true;
                    e.SuppressKeyPress = true;
                }
            }
        }
        // SALVAR REGISTRO
        //------------------------------------------------------------------------------------------------------------
        private void btnSalvar_Click(object sender, EventArgs e)
        {
            try
            {
                // --- Ampulheta ON
                Cursor.Current = Cursors.WaitCursor;

                //--- check data
                if (!CheckSaveData())
                {
                    return;
                }

                CartaoBLL cBLL = new CartaoBLL();

                //--- SAVE: INSERT OR UPDATE
                if (_taxa.IDCartaoTaxa == null)                 //--- save | Insert
                {
                    int ID = cBLL.InsertCartaoTaxas(_taxa);
                    //--- define newID
                    _taxa.IDCartaoTaxa = ID;
                }
                else                 //--- update
                {
                    cBLL.UpdateCartaoTaxas(_taxa);
                }

                //--- change Sit
                Sit = EnumFlagEstado.RegistroSalvo;
                //--- emit massage
                AbrirDialog("Registro Salvo com sucesso!",
                            "Registro Salvo", DialogType.OK, DialogIcon.Information);
            }
            catch (Exception ex)
            {
                if (((System.Data.SqlClient.SqlException)ex).Number == 2627)                 // operadora + bandeira duplicada
                {
                    AbrirDialog($"As taxas da operadora: {_taxa.CartaoOperadora} já foi inserida com " +
                                (_taxa.IDCartaoBandeira == null ? "bandeiras diversas." : $"a bandeira {_taxa.CartaoBandeira}."),
                                "Duplicação de Cadastro", DialogType.OK, DialogIcon.Exclamation);
                }
                else
                {
                    AbrirDialog("Uma exceção ocorreu ao Salvar Registro de Operadora..." + "\n" +
                                ex.Message, "Exceção", DialogType.OK, DialogIcon.Exclamation);
                }
            }
            finally
            {
                // --- Ampulheta OFF
                Cursor.Current = Cursors.Default;
            }
        }
Exemple #21
0
        // INSERIR NOVO REGISTRO
        //------------------------------------------------------------------------------------------------------------
        private void btnNovo_Click(object sender, EventArgs e)
        {
            if (Sit != EnumFlagEstado.RegistroSalvo)
            {
                return;
            }

            _tipo = new objDespesaTipo(null);
            Sit   = EnumFlagEstado.NovoRegistro;
            AtivoButtonImage();
            bind.DataSource = _tipo;
            txtDespesaTipo.Focus();
        }
        // INSERIR NOVO REGISTRO
        //------------------------------------------------------------------------------------------------------------
        private void btnNovo_Click(object sender, EventArgs e)
        {
            if (Sit != EnumFlagEstado.RegistroSalvo)
            {
                return;
            }

            _credor = new objCredor(null);
            Sit     = EnumFlagEstado.NovoRegistro;
            AtivoButtonImage();
            bind.DataSource = _credor;
            txtCredor.Focus();
        }
        // INSERIR NOVO REGISTRO
        //------------------------------------------------------------------------------------------------------------
        private void btnNovo_Click(object sender, EventArgs e)
        {
            if (Sit != EnumFlagEstado.RegistroSalvo)
            {
                return;
            }

            _taxa = new objCartaoTaxa(null);
            Sit   = EnumFlagEstado.NovoRegistro;
            AtivoButtonImage();
            bind.DataSource = _taxa;
            txtCartaoOperadora.Focus();
        }
Exemple #24
0
        //--- AO PRESSIONAR A TECLA (ENTER) ENVIAR (TAB) NO DATAGRID
        private void dgvListagem_KeyDown(object sender, KeyEventArgs e)
        {
            if (e.KeyCode == Keys.Enter)
            {
                int iColumn = dgvListagem.CurrentCell.ColumnIndex;
                int iRow    = dgvListagem.CurrentCell.RowIndex;

                e.SuppressKeyPress = true;
                e.Handled          = true;

                try
                {
                    if (iColumn == dgvListagem.ColumnCount - 2)
                    {
                        if (dgvListagem.RowCount > (iRow + 1))
                        {
                            dgvListagem.CurrentCell = dgvListagem[1, iRow + 1];
                        }
                        else
                        {
                            SelectNextControl(dgvListagem, true, false, true, true);
                        }
                    }
                    else
                    {
                        dgvListagem.CurrentCell = dgvListagem[iColumn + 1, iRow];
                    }
                }
                catch
                {
                }
            }
            else if (e.KeyCode == Keys.Delete)
            {
                e.SuppressKeyPress = true;
                e.Handled          = true;

                classTitular myItem = (classTitular)dgvListagem.CurrentRow.DataBoundItem;

                if (myItem.RowSit == EnumFlagEstado.NovoRegistro)
                {
                    dgvListagem.Rows.Remove(dgvListagem.CurrentRow);
                }

                if (!list.Exists(x => x.RowSit != EnumFlagEstado.RegistroSalvo))
                {
                    Sit = EnumFlagEstado.RegistroSalvo;
                }
            }
        }
        // INSERIR NOVO REGISTRO
        //------------------------------------------------------------------------------------------------------------
        private void btnNovo_Click(object sender, EventArgs e)
        {
            if (Sit != EnumFlagEstado.RegistroSalvo)
            {
                return;
            }

            _reuniao = new objReuniao(null);
            Sit      = EnumFlagEstado.NovoRegistro;
            AtivoButtonImage();
            bind.DataSource = _reuniao;
            txtReuniao.Focus();
            chkTodasCongregacoes.Checked = false;
        }
        // INSERIR NOVO REGISTRO
        //------------------------------------------------------------------------------------------------------------
        private void btnNovo_Click(object sender, EventArgs e)
        {
            if (Sit != EnumFlagEstado.RegistroSalvo)
            {
                return;
            }

            _campanha = new objCampanha(null);
            Sit       = EnumFlagEstado.NovoRegistro;
            AtivoButtonImage();
            bind.DataSource = _campanha;
            txtCampanha.Focus();
            GetSaldo();
        }
Exemple #27
0
        //=================================================================================================
        // SALVAR REGISTRO
        //=================================================================================================
        #region SALVAR REGISTRO

        private void btnSalvar_Click(object sender, EventArgs e)
        {
            //--- Verifica os valores inseridos
            if (VerificaItems() == false)
            {
                return;
            }

            //--- verifica se é um ROW editado ou novo
            classGrupo myItem;
            bool       everyOK = true;

            foreach (DataGridViewRow row in dgvListagem.Rows)
            {
                try
                {
                    myItem = (classGrupo)row.DataBoundItem;

                    if (myItem.RowSit == EnumFlagEstado.NovoRegistro || myItem.RowSit == EnumFlagEstado.Alterado)
                    {
                        if (myItem.RowSit == EnumFlagEstado.NovoRegistro)
                        {
                            myItem.Ativo = true;                             // define ATIVO
                            var newItem = ItemInserir(myItem);
                            myItem.IDDespesaTipoGrupo = newItem;
                            bindList.ResetBindings(false);
                        }
                        else if (myItem.RowSit == EnumFlagEstado.Alterado)
                        {
                            ItemAlterar(myItem);
                        }

                        myItem.RowSit = EnumFlagEstado.RegistroSalvo;
                    }
                }
                catch
                {
                    everyOK = false;
                    continue;
                }
            }

            if (everyOK)
            {
                ObterDados();
                Sit = EnumFlagEstado.RegistroSalvo;
                AbrirDialog("Registros salvos com sucesso!", "Registros Salvos");
            }
        }
        private void btnSetContaEntrada_Click(object sender, EventArgs e)
        {
            try
            {
                // --- Ampulheta ON
                Cursor.Current = Cursors.WaitCursor;

                frmContaProcura frm = new frmContaProcura(this, _transf.IDContaEntrada);
                frm.ShowDialog();

                //--- check return
                if (frm.DialogResult == DialogResult.OK)
                {
                    // check same CONTA ENTRADA SAIDA
                    if (frm.propEscolha.IDConta == _transf.IDContaSaida)
                    {
                        AbrirDialog("A conta de Entrada não pode ser igual à conta de Saída...",
                                    "Conta de Entrada", DialogType.OK, DialogIcon.Exclamation);
                        return;
                    }

                    if (Sit != EnumFlagEstado.NovoRegistro && _transf.IDContaEntrada != frm.propEscolha.IDConta)
                    {
                        Sit = EnumFlagEstado.Alterado;
                    }

                    _transf.IDContaEntrada      = (int)frm.propEscolha.IDConta;
                    txtContaEntrada.Text        = frm.propEscolha.Conta;
                    contaEntrada                = frm.propEscolha;
                    lblContaEntradaDetalhe.Text = $"Saldo da Conta: {frm.propEscolha.ContaSaldo.ToString("c")} \n" +
                                                  $"Data de Bloqueio até: {frm.propEscolha.BloqueioData?.ToString() ?? ""}";
                }

                //--- select
                txtContaEntrada.Focus();
                txtContaEntrada.SelectAll();
            }
            catch (Exception ex)
            {
                AbrirDialog("Uma exceção ocorreu ao abrir o formulário de procura..." + "\n" +
                            ex.Message, "Exceção", DialogType.OK, DialogIcon.Exclamation);
            }
            finally
            {
                // --- Ampulheta OFF
                Cursor.Current = Cursors.Default;
            }
        }
        private void btnAtivo_Click(object sender, EventArgs e)
        {
            if (Sit == EnumFlagEstado.NovoRegistro)
            {
                MessageBox.Show("Você não pode DESATIVAR uma Nova Conta", "Desativar Conta",
                                MessageBoxButtons.OK, MessageBoxIcon.Information);
                return;
            }

            //--- check saldo existente
            if (_conta.ContaSaldo > 0)
            {
                AbrirDialog("Não é possivel desastivar uma CONTA que possui SALDO...",
                            "Saldo Existente", DialogType.OK, DialogIcon.Exclamation);
                return;
            }

            if (_conta.Ativa == true)             //--- ATIVA
            {
                var response = AbrirDialog("Você deseja realmente DESATIVAR a Conta:\n" +
                                           txtConta.Text.ToUpper(),
                                           "Desativar Conta", DialogType.SIM_NAO, DialogIcon.Question, DialogDefaultButton.Second);
                if (response == DialogResult.No)
                {
                    return;
                }
            }
            else             //--- INATIVO
            {
                var response = AbrirDialog("Você deseja realmente ATIVAR a Conta:\n" +
                                           txtConta.Text.ToUpper(),
                                           "Ativar Conta", DialogType.SIM_NAO, DialogIcon.Question, DialogDefaultButton.Second);
                if (response == DialogResult.No)
                {
                    return;
                }
            }

            _conta.BeginEdit();
            _conta.Ativa = !_conta.Ativa;

            if (Sit == EnumFlagEstado.RegistroSalvo)
            {
                Sit = EnumFlagEstado.Alterado;
            }

            AtivoButtonImage();
        }
        // SALVAR REGISTRO
        //------------------------------------------------------------------------------------------------------------
        private void btnSalvar_Click(object sender, EventArgs e)
        {
            try
            {
                // --- Ampulheta ON
                Cursor.Current = Cursors.WaitCursor;

                //--- check data
                if (!CheckSaveData())
                {
                    return;
                }

                //--- SAVE: INSERT OR UPDATE
                if (_cartao.IDCartaoCredito == null)                 //--- save | Insert
                {
                    int ID = cBLL.InsertCartaoCreditoDespesa(_cartao);

                    //--- define newID
                    ((objAPagarCartao)bind.Current).IDCartaoCredito = ID;
                    bind.EndEdit();
                    bind.ResetBindings(false);
                }
                else                 //--- update
                {
                    cBLL.UpdateCartaoCreditoDespesa(_cartao);
                    bind.EndEdit();
                }

                //--- change Sit
                Sit = EnumFlagEstado.RegistroSalvo;

                //--- emit massage
                AbrirDialog("Registro Salvo com sucesso!",
                            "Registro Salvo", DialogType.OK, DialogIcon.Information);
            }
            catch (Exception ex)
            {
                AbrirDialog("Uma exceção ocorreu ao Salvar Registro de Cartão de Crédito..." + "\n" +
                            ex.Message, "Exceção", DialogType.OK, DialogIcon.Exclamation);
            }
            finally
            {
                // --- Ampulheta OFF
                Cursor.Current = Cursors.Default;
            }
        }