Eliminar fisicamente Registros de tabela .DBF

Delphi

28/05/2004

Alguém tem o código do programa para que do DELPHI eu consiga excluir fisicamente todos os registros deletados do DBASE.

Agradeço

Jairo


Jairo Norenberg

Jairo Norenberg

Curtidas 0

Respostas

Sam

Sam

28/05/2004

procedure TF_Form1.PackDBF(Tabela: TTAble);
begin
Tabela.Active := false;
try
Tabela.Exclusive := true;
tabela.Active := true;
DbiPackTable(Tabela.DBHandle, Tabela.Handle, nil, szdBASE, true);
Tabela.Active := false;
Tabela.Exclusive := false;
finally
Tabela.Active := true;
end;
end;

Espero ter ajudado !!!!


GOSTEI 0
Jairo Norenberg

Jairo Norenberg

28/05/2004

Sam

Quando o programa executa
Tabela.Exclusive := true;
está dando erro ´Table is busy´
Só que ela não está sendo usada.

Oque poderia ser?

Grato pela atenção

Jairo


GOSTEI 0
Sam

Sam

28/05/2004

A tabela deverá estar fechada.

Ou seja

Tabela.close;
PackDbf(Tabela);

Espero ter ajudado !!!


GOSTEI 0
Aroldo Zanela

Aroldo Zanela

28/05/2004

Colega,

Verifique se não existem tabelas abertas em outros formulários ativos (auto-create) ou no data module, ou em outro programa externo, senão, a tabela não pode ser colocada em modo exclusivo.


GOSTEI 0
POSTAR