从XML文件通过TXMLTransformProvider将数据集导入ClientDataSet,ClientDataSet其中有一个字段类型是TDataSetField,名为“cdsItem”,cdsItem中本身又有数据集,现在想编辑cdsItem数据集中的一条记录的某一个字段值,不知如何操作?请大吓们帮忙,在线等急死了,解决后立即给分,多谢!!!

解决方案 »

  1.   

    是想修改后原通过TXMLTransformProvider写回XML文件保存
      

  2.   

    设两个ClientDataSet,其中一个cdsNode的DataSetField设为另一个的cdsItem字段,
      cdsNode.Edit;
      cdsNode.FieldByName('read').AsString:='Y';
    //  cdsNode.ApplyUpdates(-1);
    可以看见DbGrid中的值已修改了,如果去掉注释,保存,显示:XML Parse Error. Reason:缺少所需的空白区不知什么原因?读取和保存分别用XML Mapper自动生成的ToDp.xtr和ToXml.xtr,这些都是Delphi XML Mapper自动生成的读取格式文件.