Пример #1
0
        /// <summary>
        /// Exclui o item corrente da lista
        /// </summary>
        /// <returns></returns>
        public override bool Excluir()
        {
            try
            {
                bool ok = contratoPapel.Excluir();
                if (ok)
                {
                    lista.RemoveAt(Indice);
                }

                return(ok);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Пример #2
0
        public override bool Excluir(int id)
        {
            bool blnExcluir = true;
            BD   bdGravar   = null;

            ContratoPapel      contratoPapel      = null;
            ContratoPapelLista contratoPapelLista = null;

            try
            {
                bdGravar = new BD();
                bdGravar.IniciarTransacao();

                if (this.Control.UsuarioID == 0)
                {
                    throw new ContratoException("É necessário informar o usuário que está executando essa operação.");
                }

                #region Exclui os papeis

                contratoPapel      = new ContratoPapel(this.Control.UsuarioID);
                contratoPapelLista = new ContratoPapelLista(this.Control.UsuarioID);

                contratoPapelLista.FiltroSQL = "ContratoID = " + id;
                contratoPapelLista.Carregar();
                if (contratoPapelLista.Primeiro())
                {
                    do
                    {
                        if (!contratoPapel.Excluir(contratoPapelLista.ContratoPapel.Control.ID, bdGravar))
                        {
                            throw new Exception("Não possível excluir o papel do contrato.");
                        }
                    } while (contratoPapelLista.Proximo());
                }

                #endregion

                #region Exclui o contrato

                this.Excluir(id, bdGravar);

                #endregion

                bdGravar.FinalizarTransacao();
            }
            catch (Exception ex)
            {
                if (bdGravar != null)
                {
                    bdGravar.DesfazerTransacao();
                }

                blnExcluir = false;

                throw ex;
            }

            finally
            {
                if (bdGravar != null)
                {
                    bdGravar.Fechar();
                    bdGravar = null;
                }

                contratoPapel      = null;
                contratoPapelLista = null;
            }


            return(blnExcluir);
        }