Tecnobyte Informática

Delphi - ClientDataSet

Como limpar a propriedade Delta do ClientDataSet?

A propriedade Delta do ClientDataSet armazena um histórico dos dados inseridos, modificados ou excluídos. Você pode desativar este histórico alterando a propriedade LogChanges para False, o que deve ser feito com o ClientDataSet aberto, conforme exemplo abaixo:

procedure TForm1.ClientDataSet1AfterOpen(DataSet: TDataSet);
begin
  ClientDataSet1.LogChanges := False;
end;
Mas a propriedade LogChanges não deve ser alterada para False se o ClientDataSet estiver conectado a um DataSetProvider. Se por este ou outro motivo você precisa manter LogChances como True, mas ainda deseja limpar este histórico, poderá executar o método MergeChangeLog, como segue:
ClientDataSet1.MergeChangeLog;