要求:
1、用代码创建clientdataset,该clientdataset不与任何数据源连接,包括不从XML等文件读取数据。
2、动态创建fkData类型的字段若干
3、可以通过ClientDataSet1.FieldByName('dd').AsString:='dfsdf';等方式向该clientdataset写入数据。

解决方案 »

  1.   

    var
       F_CData:TClientDataset;
    begin
        F_CData := TClientDataset.Create(nil);
    F_CData.FieldDefs.Add('产品名称',ftString, 30, False);
    F_CData.FieldDefs.Add('本月实际',ftString, 20, False);
    F_CData.FieldDefs.Add('本季累计',ftString, 20, False);
    F_CData.FieldDefs.Add('本年累计',ftString, 20, False);
    F_CData.CreateDataSet;
    F_CData.Open;     while not AdoDatasetOut.Eof do begin
    F_CData.Append;
    F_CData.Fields[0].AsString := AdoDatasetOut.Fields[0].Value;
    F_CData.Fields[1].AsString := AdoDatasetOut.Fields[1].Value;
    F_CData.Fields[2].AsString := AdoDatasetOut.Fields[2].Value;
    F_CData.Fields[3].AsString := AdoDatasetOut.Fields[3].Value;
    AdoDatasetOut.Next;
         end;
    end;