Fórum Excluir registros em um filtro no ClientDataSet #420000
17/07/2012
0
Pessoal gostaria da ajuda de vocês.
Problema: Preciso excluir os registros em um ClientDataSet que forem filtrados em uma determinada condição. Veja o exemplo abaixo.
No caso acima devo excluir todos os registros que retornarem na condição.
A única forma que encontrei para fazer isso e varrendo todos os registros que retornaram do filtro e executando o método Delete. Veja abaixo.
Gostaria de saber se alguém utiliza alguma forma diferente para fazer essa exclusão.
Obrigado a todos.
Problema: Preciso excluir os registros em um ClientDataSet que forem filtrados em uma determinada condição. Veja o exemplo abaixo.
ClientDataSet1.Filtered := False; ClientDataSet1.Filter:= IDT_MUNICIPIO = 1; ClientDataSet1.Filtered := True;
No caso acima devo excluir todos os registros que retornarem na condição.
A única forma que encontrei para fazer isso e varrendo todos os registros que retornaram do filtro e executando o método Delete. Veja abaixo.
ClientDataSet1.Filtered := False; ClientDataSet1.Filter:= IDT_MUNICIPIO = 1; ClientDataSet1.Filtered := True; ClientDataSet1.First; while (not(ClientDataSet1.Eof)) do ClientDataSet1.Delete; ClientDataSet1.Post;
Gostaria de saber se alguém utiliza alguma forma diferente para fazer essa exclusão.
Obrigado a todos.
Johni Marangon
Curtir tópico
+ 0
Responder
Posts
17/07/2012
William
Colega para excluir no clientdataset usando antes um filtro tem q ser assim mesmo, percorrendo todos os registros.
Apesar de alguns profissionais afirmarem que lugar de SQL é no servidor e não no cliente, vc poderia usar uma instrução SQl DELETE FROM TABELA WHERE <CONDIÇÃO>, desse modo a própria instrução iria se encarregar de filtrar e deletar os registros.
Apesar de alguns profissionais afirmarem que lugar de SQL é no servidor e não no cliente, vc poderia usar uma instrução SQl DELETE FROM TABELA WHERE <CONDIÇÃO>, desse modo a própria instrução iria se encarregar de filtrar e deletar os registros.
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)