起步软件技术论坛-X3

 找回密码
 立即注册
搜索
查看: 976|回复: 12

数据集数据复制

[复制链接]
发表于 2010-9-6 01:33:19 | 显示全部楼层 |阅读模式
http://bbs.justep.com/forum.php?mod=viewthread&tid=19631
如上链接,DataSet1的数据复制到数据集2后,数据集1的数据为什么全部都无法显示了呢?
回复

使用道具 举报

 楼主| 发表于 2010-9-6 09:37:40 | 显示全部楼层
这个怎么回事?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2010-9-6 10:33:41 | 显示全部楼层
怎么没人回复呢
回复 支持 反对

使用道具 举报

发表于 2010-9-6 10:43:49 | 显示全部楼层
请你稍等,正在测试
回复 支持 反对

使用道具 举报

发表于 2010-9-6 11:35:53 | 显示全部楼层
楼主我这边测试的结果没有问题呀。您把代码发上来看看吧。另外您x3是什么版本?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2010-9-6 14:02:48 | 显示全部楼层
EnterPerDataSetBroker.DataSet.Data := TranPerDataSetBroker.DataSet.Data;
if not EnterPerDataSetBroker.DataSet.Active then
      EnterPerDataSetBroker.DataSet.Open;
   EnterPerDataSetBroker.DataSet.DisableControls;
   EnterPerDataSetBroker.DataSet.First;
   while not EnterPerDataSetBroker.DataSet.Eof do
   begin
     EnterPerDataSetBroker.DataSet.Edit;
     EnterPerDataSetBroker.DataSet.FieldByName('per_group_id_fk').AsString := FGroupID;//修改关联字段
     EnterPerDataSetBroker.DataSet.Next;
   end;
   EnterPerDataSetBroker.DataSet.EnableControls;
   EnterPerDataSetBroker.DataSet.ApplyUpdates;

复制完成后,之后我再修改一下EnterPerDataSet里的每条数据的某一关联字段,结果,数据复制成功了,但历史数据的对应关系也跟着变了
回复 支持 反对

使用道具 举报

发表于 2010-9-6 14:27:06 | 显示全部楼层
就是一楼按照参考帖子的做法可以正确复制Dataset的data?
对应关系变了是指什么呀?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2010-9-6 14:38:52 | 显示全部楼层
我注释那一行,复制完了在数据库里没有新增记录,只是将数据集A里的数据复制到B数据集里啦,我修改一下在数据库里主外键关联字段,所以历史记录没有留下来哟!
回复 支持 反对

使用道具 举报

发表于 2010-9-6 14:47:09 | 显示全部楼层
在您未执行EnterPerDataSetBroker.DataSet.ApplyUpdates;这句的时候,EnterPerDataSetBroker.DataSet中复制过来的数据并没有写入数据库,您代码的流程只是先把数据复制进EnterPerDataSetBroker.DataSet中,然后修改了关联字段的值,最后提交数据库。所以在数据库中肯定不会有复制,然后修改关联字段的历史记录的。只会记录您写入EnterPerDataSetBroker.DataSet对应的数据表的操作。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2010-9-6 15:13:28 | 显示全部楼层
我这样试过一次了,两个数据集都提交都不管事,我再试一下吧!不行的话再跟贴
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Justep Inc.

GMT+8, 2025-7-7 07:27 , Processed in 0.040231 second(s), 15 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表