找回密码
 立即注册

QQ登录

只需一步,快速开始

dc22wt

论坛元老

21

主题

95

帖子

9445

积分

论坛元老

积分
9445

活字格认证

dc22wt
论坛元老   /  发表于:2012-5-30 10:25  /   查看:9062  /  回复:13
调试了几天,终于发现还是该表单分组的问题,有两个问题:1.当我的数据量达到11万的时候,要求分组的话,基本上就卡在那里不动了。2。这个问题就更诡异了,当我第一次查询的结果集少,大概3000条数据,用的是分组模式,然后再更换条件查询时,结果集可能就要11万多,这个时候我不采用分组,先用这个 fpSpread1_Sheet1.Models.Data = ((FarPoint.Win.Spread.Model.GroupDataModel)fpSpread1_Sheet1.Models.Data).TargetModel 语句取消上次查询的分组模式,然后程序就会一直卡在DATASET填充,后来我把第二次查询的结果集11玩改成500,结果就不会卡了,顺利执行,或者我把第一次的查询也不用分组模式,第二次查询的结果集依然是11万,也不会卡住,顺利执行。请问下斑竹,这个问题因该如何解决!急!!!!

13 个回复

正序浏览
ZenosZeng讲师达人认证 悬赏达人认证
超级版主   /  发表于:2012-5-31 17:46:00
14#
通过以下代码判断是否存在分组:
  1.     if (fpSpread1_Sheet1.Models.Data is FarPoint.Win.Spread.Model.GroupDataModel)
  2.     {
  3.         MessageBox.Show("分组数据!!!");
  4.     }
  5.     else
  6.     {
  7.         MessageBox.Show("不是分组数据!!!");
  8.     }
复制代码
回复 使用道具 举报
ZenosZeng讲师达人认证 悬赏达人认证
超级版主   /  发表于:2012-5-31 17:42:00
13#
可以通过fpSpread1.Sheets[0].Reset();重置Sheet
回复 使用道具 举报
dc22wt
论坛元老   /  发表于:2012-5-31 14:56:00
12#

RE:斑竹

你说的那个RESET()引用不了,而且我这里还有个新问题 QQ截图未命名.png (44.29 KB, 下载次数: 54)
回复 使用道具 举报
ZenosZeng讲师达人认证 悬赏达人认证
超级版主   /  发表于:2012-5-30 17:22:00
11#
11w条数据如果只是显示不会有太大的问题,但是分组操作是在内存中进行的,所以对cpu和内存的要求会更高一些

此外,你可以测一下将fpSpread1_Sheet1.Models.Data = ((FarPoint.Win.Spread.Model.GroupDataModel)fpSpread1_Sheet1.Models.Data).TargetModel 修改为fpSpread1_Sheet1.ReSet(); 然后设置新的数据源,看性能是不是要好一些。
回复 使用道具 举报
dc22wt
论坛元老   /  发表于:2012-5-30 17:12:00
10#
就是卡住了,运行不下去了,除了分组,没有什么其他功能,如果说我把那11万条数据改成500条数据就什么问题都没有。。。
回复 使用道具 举报
ZenosZeng讲师达人认证 悬赏达人认证
超级版主   /  发表于:2012-5-30 16:56:00
9#
你那边现在实际需要等多长时间才能重写加载10W行数据,处理最基本的安装某列分组之外,还有什么功能,能否在3楼Demo的基础上演示你的使用方法,然后上传给我调试一下。
回复 使用道具 举报
dc22wt
论坛元老   /  发表于:2012-5-30 16:48:00
8#
斑竹快帮忙看下啊
回复 使用道具 举报
dc22wt
论坛元老   /  发表于:2012-5-30 16:10:00
7#
那你看下我这个分组代码有问题吗?
回复 使用道具 举报
ZenosZeng讲师达人认证 悬赏达人认证
超级版主   /  发表于:2012-5-30 16:07:00
6#
抱歉,我们网络受限,还不能使用QQ
回复 使用道具 举报
12下一页
您需要登录后才可以回帖 登录 | 立即注册
返回顶部