problema no Eof
pessoal o laço abaixo deve fazer o seguinte procedimento: Enquanto existir Clientes apague todos os seus telefones e depois o cliente.O laço está funcionando só que qndo chega na linha do eof ele sai mesmo que a condiçao seja false
while not dm.tableClientes.Eof do// antes da tabela cliente chegar ao final ele sai do laço
begin
while not dm.tTelCli.Eof do
begin
dm.tPastMus.Delete;
dm.tPastMus.Next;
end;
dm.tClientes.Delete;
dm.tClientes.Next;
end;
obs: minha tabela esta conectada a um banco de dados Paradox.
while not dm.tableClientes.Eof do// antes da tabela cliente chegar ao final ele sai do laço
begin
while not dm.tTelCli.Eof do
begin
dm.tPastMus.Delete;
dm.tPastMus.Next;
end;
dm.tClientes.Delete;
dm.tClientes.Next;
end;
obs: minha tabela esta conectada a um banco de dados Paradox.
Hviana
Curtidas 0
Respostas
Ltres
09/05/2005
Cara .. se naum me engano naum precisa de next ali.. qdo tu da .delete ele ja pula pro proximo.. tenta fazer sem pra ver se funciona
GOSTEI 0
Rjun
09/05/2005
Você não precisar dar o Next. Mas se é para apagar todos os registros faz um SQL.
GOSTEI 0
Daniel_mc
09/05/2005
É o seguinte meu camarada creio eu que o código correto seria o seguinte:
while not dm.tableClientes.Eof do// antes da tabela cliente chegar ao final ele sai do laço begin while not dm.tTelCli.Eof do begin dm.tPastMus.First; dm.tPastMus.Delete; end; dm.tClientes.First; dm.tClientes.Delete; end;
GOSTEI 0
Nilza
09/05/2005
Oi
Acho que assim funciona:
Caso não funcione, somente exclua o NEXT e teste novamente.
[]´s
Acho que assim funciona:
dm.tClientes.First; dm.tPastMus.First; while not (dm.tableClientes.Eof) do// antes da tabela cliente chegar ao final ele sai do laço begin while not (dm.tTelCli.Eof) do begin dm.tPastMus.Delete; dm.tPastMus.next; end; dm.tClientes.Delete; dm.tClientes.next; end;
Caso não funcione, somente exclua o NEXT e teste novamente.
[]´s
GOSTEI 0
Gandalf.nho
09/05/2005
Se a idéia é excluir todos os telefones e clientes, use DELETE FROM tabela
primeiro nos telefones e depois nos clientes. Bem mais rápido e prático.
primeiro nos telefones e depois nos clientes. Bem mais rápido e prático.
GOSTEI 0