ME ajudem - Pesquisa Varrendo a tabela?????

18/02/2003

0

Olá Amigos, estou usando o seguinte código ao excluir um convenio que é o seguinte:
Ta baela clienetes tenho o campo CodConvenio para que cada cliente cadastrado eu seleciono o comvenio que ele pertence...porém eu só posso excluir um convenio se nenhum cliente deste convênio esta em débito (campo DEVE <>0) vejam a baixo:

procedure TfrmConvenios.btexcluirClick(Sender: TObject);
begin
dmprincipal.tblClientes.DisableControls;
if gmsgpergunta(´´,´Deseja excluir o convênio ´+ dmprincipal.tblConvenioDescricao.Value,False)= mryes then
while not dmprincipal.tblClientes.Eof do
begin
if(dmprincipal.tblClientes.Locate(´CODCON´,DMPRINCIPAL.tblConvenioCODCON.Value,[]))AND
(DMPRINCIPAL.tblClientesDEVE.Value <> 0)then
GMSGINFORMA(´´,´Ha Débitos para este convênio!´+#13+ ´Não pode ser excluido!´,False);
dmprincipal.tblClientes.Next end else
dmprincipal.tblClientes.Delete;
dmprincipal.tblClientes.EnableControls;
end;

Por favor ajudem...o código acima trava o sistema da pau em tudo e nem funciona!!


Anonymous

Anonymous

Responder

Posts

18/02/2003

Dor_poa

O seu problema é que ele não esta avançando o registro... Acho que vc. tambem deveria usar um repeat...

dmprincipal.tblClientes.first;
repeat
if dmprincipal.tblClientes.Locate (´CODCON´,DMPRINCIPAL.tblConvenioCODCON.Value,[])) then
begin
if (DMPRINCIPAL.tblClientesDEVE.Value <> 0)then
begin
GMSGINFORMA(´´,´Ha Débitos para este convênio!´+#13+ ´Não pode ser excluido!´,False);
dmprincipal.tblClientes.Next
end else dmprincipal.tblClientes.Delete ;
end else
begin
dmprincipal.tblClientes.Next;
end;
until dmprincipal.tblClientes.eof;


Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar