使用ClientDataSet.SaveToFile保存数据集的数据到本地文件,但不能记录ClientDataSet的UpdateStatus属性,给程序处理带来极大不便,现高分求解,急急急!!!!!

解决方案 »

  1.   

    有意思,刚刚在网络编程里边见过这个贴子,呵呵;
    明明是这个版的问题啊;
    Inc(-1)
      

  2.   

    UpdateStatus 有那些?
    为什么不用Append?ClinetDataSet可以拽加数据的;
      

  3.   

    cds 可以保留 UpdateStatus
    作个测试, 在窗口上放 ClientDataSet1, ClientDataSet2, DataSource1, DataSource2, DBGrid1, DBGrid2cds1 放原始数据
    cds2 用于查看 cds1 的 Delta, UpdateStatus 记录在 Delta 里procedure TForm1.SaveClick(Sender: TObject);
    begin
      // 保存 cds1 到 test.cds
      ClientDataSet1.SaveToFile('test.cds');
    end;procedure TForm1.LoadClick(Sender: TObject);
    begin
      // 先关 cds1, 再从 test.cds 中读取
      ClientDataSet1.Close;
      ClientDataSet1.LoadFromFile('test.cds');
    end;procedure TForm1.SeeDeltaClick(Sender: TObject);
    begin
      // 查看 cds1 的 Delta
      ClientDataSet2.Data := ClientDataSet1.Delta;
    end;procedure TForm1.StatusClick(Sender: TObject);
    begin
      if ClientDataSet1.UpdateStatus = usModified then
        ShowMessage('this record has modified');
    end;procedure TForm1.StatusClick(Sender: TObject);
    begin
      // 查看当前记录是查被改动
      if ClientDataSet1.UpdateStatus = usModified then
        ShowMessage('this record has modified');
    end;