水晶报表为何总是要等一段时间才能更新数据?

prefix 2002-04-24 01:00:20
我把数据写入数据库,然后马上看看数据库更新没有,结果是更新已经完成了,但这时马上使用水晶报表预览,却发现数据是以前的,就算我已经删除了以前的数据,用新数据更新同一条记录,它显示成之前的数据。我现在的做法是让程序延时一秒,这样水晶报表就可以看到正确结果,但是这样我不知道一秒对于多个记录的更新够不够,现在我是在测试中,所以记录比较少,但真正使用时数据量将会有非常大,这个时候就不知延时多久才行了,所以这个我想不应该使用这个方法。但是我不知道有什么好办法可以在数据库更新后,水晶报表也可以马上取到最新的数据,应该怎么办?
...全文
90 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
prefix 2002-04-29
  • 打赏
  • 举报
回复
另外,我在WIN2K下试了一下,似乎却没有发现这个问题?这是怎么回事呢?如何WIN98下这个问题?等待高人指点。
prefix 2002-04-29
  • 打赏
  • 举报
回复
m_yangl(),不是吧?这么夸张?
m_yangl 2002-04-28
  • 打赏
  • 举报
回复
我操作水晶报表,更新时直接将原数据表删除,然后生成新的数据表,这样一般没有问题。
sundy_RAO 2002-04-28
  • 打赏
  • 举报
回复
请问各位哪儿有水晶报表下载?
有源码实例吗?
谢谢啦!
wenw 2002-04-28
  • 打赏
  • 举报
回复
我也是遇到了这种问题,用的是
Sleep 来解决的 ,其实用msgbox 也可以。
prefix 2002-04-26
  • 打赏
  • 举报
回复
wgjn25,我要的就是不要用延时的办法。我上面已经说过自己用延时了。
Tadpole0510 2002-04-25
  • 打赏
  • 举报
回复
只好加msgbox("是否预览打印?",32+vbyesno,"信息提示")=vbyes
喽,阻断一下
wgjn25 2002-04-25
  • 打赏
  • 举报
回复
我说的这个是vb6里自带的报表,不知道水晶报表行不行。我在6.0里已经成功解决了这个问题!
wgjn25 2002-04-25
  • 打赏
  • 举报
回复
UnLoad DataEnvironment 'Unlaod和报表关联的DataEnvironment,让 DataEnvironment重新连接数据库。
Sleep 500 '如果数据库更新和DataReport.Show放在一起,经常UnLoad DataEnvironment以后再显示报表显示出的数据还是旧的。还要让程序Sleep一会儿,100毫秒以上。
DataReport.Show

Sleep是api函数。其他方法停止程序执行的方法也行。如果数据库更新和DataReport.show 不在同一个函数,可要可不要都行,但是 UnLoad DataEnvironment 一定要.
用这个时必须要在"模块"里调用sleep函数才行!
bird_cai 2002-04-24
  • 打赏
  • 举报
回复
我也试了一下,没有你说的延迟现象.事实上也不应该这样
bird_cai 2002-04-24
  • 打赏
  • 举报
回复
我也试了一下,没有你说的延迟现象.事实上也不应该这样
prefix 2002-04-24
  • 打赏
  • 举报
回复
我试过了,还是一样。
watt 2002-04-24
  • 打赏
  • 举报
回复
use the property "DiscardSavedData"

809

社区成员

发帖
与我相关
我的任务
社区描述
VB 多媒体
社区管理员
  • 多媒体
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧