Limpar SQL............

Delphi

11/02/2003

:shock:

- Uso duas tabelas:
Uma mestre - TBCADASS - Tabela de assossiado
Outra detalhe - TBCADDEP - Tabela de dependente do assossiado

- Na string de minha quary qrDeletar está assim:
select * from tbcadass, tbcaddep
where tbcadass.codigoass = tbcaddep.codigoass

- Na tabela TBCADASS, no evento BEFOREDELETE está assim:
with tbcadass do
begin
if qrdeletar.recordcount > 0
then
neste momento coloco mensagem q não pode deletar
abort;
end;
end;

- O q ocorre é o seguinte:
- quando existe item na tabela de dependentes não deixa deletar o titular até ai está certo mas quando vou deletar um titular sem dependente não aceita pois a pesquisa continua indicando q existe dependente;
- Como faço para limpar a pesquisa pra não ocorrer este erro??


Jota

Jota

Curtidas 0

Respostas

Anonymous

Anonymous

11/02/2003

Experimente Fechar e Abrir a Query antes do With;

qrDeletar.Close;
qrDeletar.Open;
With bla´, bá, blá

V c Funciona

Valew

´A Justiça que procuras, é a força de ir buscá -la...´


GOSTEI 0
Jota

Jota

11/02/2003

Caro amigo, sua dica não funcionou não sei porque, tem outra dica ???


GOSTEI 0
Navoid

Navoid

11/02/2003

tente com o select assim

´select count(*) contar from tbcaddep where (codigoass = :pcodigoass)´

ai vc faiz isso
qrydeletar.parambyname(´pcodigoass´).asinteger := codigo;
qrydeletar.active:= true
podedeletar := (qrydeletar.fieldbyname(´contar´).asinteger = 0);
qrydeletar.active:= false

creio que resolva


GOSTEI 0
POSTAR