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

Delphi

18/02/2003

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

Curtidas 0

Respostas

Dor_poa

Dor_poa

18/02/2003

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;


GOSTEI 0
POSTAR