Exemplo n.º 1
0
        private void frmAdvancedSearch_FormClosed(object sender, FormClosedEventArgs e)
        {
            FormSet f = ((FormSet)Propriedades.FormMain.ActiveMdiChild);
            Funcoes func;

            func.TratarStatus_BarraFerramentas(f.FormStatus, f.Tipo_Formulario);
            f.Movimentar_Registro(Movimento.Atualizar_Atual);
        }
Exemplo n.º 2
0
        /// <summary>
        /// Excluir os registros das tabelas filhas e depois os da tabela pai.
        /// </summary>
        /// <param name="fForm">Formulário que está sendo trabalhado.</param>
        /// <returns>true/false caso consiga atualizar tudo.</returns>
        public bool Excluir_Dados(FormSet fForm)
        {
            bool bRetorno = false;

            SqlConnection db = new SqlConnection(Propriedades.StringConexao);

            try
            {
                db.Open();

                //-- filtra somente tabelas pai.
                IList <Controle_Tabelas> iTab = ((List <Controle_Tabelas>) fForm.Tabelas).FindAll(
                    new Predicate <Controle_Tabelas>(delegate(Controle_Tabelas obj)
                                                     { return(obj.TipoTabela == Controle_Tabelas.TiposTabelas.Filha); }));

                //-- Loop para atualiza todos os filhos
                foreach (Controle_Tabelas ct in iTab)
                {
                    //-- Monta todas os updates para atualização no banco de dados.
                    SqlDataAdapter da = new SqlDataAdapter(string.Format("select * from {0}", ct.NomeTabela), db);

                    try
                    {
                        SqlCommandBuilder cb = new SqlCommandBuilder(da);
                        cb.ConflictOption  = ConflictOption.CompareRowVersion;
                        cb.SetAllValues    = false;
                        da.UpdateBatchSize = 100;
                        da.Update(fForm.DataSetLocal, ct.NomeTabela);
                        bRetorno = true;
                    }
                    catch
                    {
                        MsgBox.Show("Não foi possivel excluir registro.", "Alerta - FILHA", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        fForm.DataSetLocal.RejectChanges();
                        bRetorno = false;
                        goto Erro;
                    }
                }

                //-- filtra somente tabelas pai.
                iTab = ((List <Controle_Tabelas>) fForm.Tabelas).FindAll(
                    new Predicate <Controle_Tabelas>(delegate(Controle_Tabelas obj)
                                                     { return(obj.TipoTabela == Controle_Tabelas.TiposTabelas.Pai); }));

                //-- Loop para atualiza todos os pai
                foreach (Controle_Tabelas ct in iTab)
                {
                    //-- Monta todas os updates para atualização no banco de dados.
                    SqlDataAdapter da = new SqlDataAdapter(string.Format("select * from {0}", ct.NomeTabela), db);

                    try
                    {
                        SqlCommandBuilder cb = new SqlCommandBuilder(da);
                        cb.ConflictOption  = ConflictOption.CompareRowVersion;
                        cb.SetAllValues    = false;
                        da.UpdateBatchSize = 100;
                        da.Update(fForm.DataSetLocal, ct.NomeTabela);
                        bRetorno = true;
                    }
                    catch
                    {
                        MsgBox.Show("Não foi possivel excluir registro.", "Alerta - PAI", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        fForm.DataSetLocal.RejectChanges();
                        fForm.Movimentar_Registro(CompSoft.Movimento.Voltar);
                        bRetorno = false;
                        goto Erro;
                    }
                }

                //-- Aceita todas as alterações realizadas.
                fForm.DataSetLocal.AcceptChanges();
            }
            catch (Exception ex)
            {
                MsgBox.Show(string.Format("ERRO AO EXCLUIR DADO REGISTRO DA TABELA.\n{0}", ex.Message), "Alerta", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                bRetorno = false;
            }
            finally
            {
                db.Close();
            }

Erro:
            return(bRetorno);
        }
Exemplo n.º 3
0
 private void frmListaRegistrosPai_FormClosed(object sender, FormClosedEventArgs e)
 {
     //-- Atualiza o registro atual.
     f.Movimentar_Registro(Movimento.Atualizar_Atual);
 }