Supongo que tienes conectado un clientDataset a un provider y a una tabla...esto se llama "actualizaciones en cache" y en efecto debes hacer applyupdates antes de nada.
Para que un clientDataset se comporte "mas o menos" como nuestras antiguas Tablas podrias hacer esto:
Código:
procedure TForm1.ClientDataSet1AfterPost(DataSet: TDataSet);
begin
TClientDataSet(DataSet).ApplyUpdates(-1);
end;
procedure TForm1.ClientDataSet1AfterDelete(DataSet: TDataSet);
begin
TClientDataSet(DataSet).ApplyUpdates(-1);
end;
El tema de las actualizaciones en cache es algo complicado, ve pensando en encontrar literatura al respecto (la cara oculta de delphi, Ian marteens) o usar los antiguos componentes del BDE