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

                return(ok);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Пример #2
0
        private void ExcluirRegistros(int ID)
        {
            try
            {
                Assinatura               oAss    = new Assinatura(this.Control.UsuarioID);
                AssinaturaAno            oAssAno = new AssinaturaAno(this.Control.UsuarioID);
                AssinaturaFormaPagamento oAssFP  = new AssinaturaFormaPagamento(this.Control.UsuarioID);
                AssinaturaCanal          oAssC   = new AssinaturaCanal(this.Control.UsuarioID);
                AssinaturaItem           oAssI   = new AssinaturaItem(this.Control.UsuarioID);

                List <int> lstAno = new List <int>();
                bd.Consulta("SELECT ID FROM tAssinaturaAno WHERE AssinaturaID = " + ID);
                while (bd.Consulta().Read())
                {
                    lstAno.Add(bd.LerInt("ID"));
                }

                bd.FecharConsulta();

                List <int> lstFP = new List <int>();
                bd.Consulta("SELECT ID FROM tAssinaturaFormaPagamento WHERE AssinaturaID = " + ID);
                while (bd.Consulta().Read())
                {
                    lstFP.Add(bd.LerInt("ID"));
                }

                bd.FecharConsulta();

                List <int> lstC = new List <int>();
                bd.Consulta("SELECT ID FROM tAssinaturaCanal WHERE AssinaturaID = " + ID);
                while (bd.Consulta().Read())
                {
                    lstC.Add(bd.LerInt("ID"));
                }

                bd.FecharConsulta();

                List <int> lstI = new List <int>();
                bd.Consulta(@"SELECT tAssinaturaItem.ID 
                                FROM tAssinaturaItem (NOLOCK)
                                INNER JOIN tAssinaturaAno (NOLOCK) ON tAssinaturaAno.ID = tAssinaturaItem.AssinaturaAnoID
                                WHERE tAssinaturaAno.AssinaturaID =  " + ID);
                while (bd.Consulta().Read())
                {
                    lstI.Add(bd.LerInt("ID"));
                }

                bd.FecharConsulta();


                bd.IniciarTransacao();

                foreach (int AnoID in lstAno)
                {
                    oAssAno.Excluir(bd, AnoID);
                }

                foreach (int AssFPID in lstFP)
                {
                    oAssFP.Excluir(bd, AssFPID);
                }

                foreach (int CanalID in lstC)
                {
                    oAssC.Excluir(bd, CanalID);
                }

                foreach (int ItemID in lstI)
                {
                    oAssI.Excluir(bd, ItemID);
                }

                this.Excluir(bd, ID);

                bd.FinalizarTransacao();
            }
            catch (Exception ex)
            {
                bd.DesfazerTransacao();
                throw ex;
            }
            finally
            {
                bd.Fechar();
            }
        }