关于用Data Report和数据环境设计器(DataEnvironment)生成的报表问题。50分求答。

hongtao924 2002-02-27 08:08:38
我的报表已经设计好了,一切OK。问题是:当我第一次运行报表打印后,又重新更新了几个数据,比如又添加了一些记录。再次运行打印程序,打印出来的结果和第一次打印的结果一样,新加入的记录没有打印出来。但我退出程序,重新进入后再打,恢复正常。但再重复以上步骤,又出现前面所讲的问题。是不是程序中要做什么更新之类的工作呢?我不懂,还望哪位高手指点小弟。再次先谢过了。
...全文
47 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
bucher 2002-03-01
  • 打赏
  • 举报
回复
这个是DRD的老问题了,动态产生报表实例即可
例:
public sub cmdPrint_Click()
dim DEDPrint as MyDED 'MyDED是你的数据环境
dim DRDPrint as MyDRD 'MyDRD是你的报表设计器
set DRDPrint=new MyDRD
set DEDPrint.Datasource=DRDPrint '这句可能不对,时间久了记不清了,就是设置数据源的意思
DRDPrint.Show
End Sub()
feihong0233 2002-03-01
  • 打赏
  • 举报
回复
Option Explicit

Private rsTemp As ADODB.Recordset

Private Sub DataReport_Initialize()

Set rsTemp = New ADODB.Recordset
rsTemp.CursorLocation = adUseClient

rsTemp.Open "SELECT * FROM [a]", "DSN=MS Access Database;DBQ=g:\a.mdb"
Set Me.DataSource = rsTemp

End Sub

Private Sub DataReport_Terminate()

rsTemp.Close
Set rsTemp = Nothing

End Sub
sunnycai 2002-03-01
  • 打赏
  • 举报
回复
更新数据后,把数据源也requery一次
hongtao924 2002-03-01
  • 打赏
  • 举报
回复
有知道的吗?
hongtao924 2002-02-28
  • 打赏
  • 举报
回复
小软,我照你的做了,但是系统提示我如下:
“未找到方法或数据成员”

怎么不行?
fanpingli 2002-02-28
  • 打赏
  • 举报
回复
就是要更新记录集.不更新怎么行.
可以每次关闭报表时都同时关闭数据源.打开报表时首先重新读取记录集.
例如:
1.If DataEn.rsComAllServer.State = adStateOpen Then DataEn.rsComAllServer.Close '关闭Recordset
DataEn.ComAllServer '重新读记录集
2.If DataEn.rsComAllServer.State = adStateOpen Then DataEn.rsComAllServer.Close '关闭Recordset
Fanks 2002-02-28
  • 打赏
  • 举报
回复
一个笨办法,先关闭数据源,再打开,重新显示报表,不过最好还是用ADO
hongtao924 2002-02-28
  • 打赏
  • 举报
回复
大家帮忙解决一下嘛。
楼上的我试过了,不行。我很菜,能给我说详细点吗?
hongtao924 2002-02-27
  • 打赏
  • 举报
回复
哪个对嘛。对对,到底是哪个对?
jingxiaoping 2002-02-27
  • 打赏
  • 举报
回复
对对。
gpo2002 2002-02-27
  • 打赏
  • 举报
回复
ado连更简单,用完nothing
royvb 2002-02-27
  • 打赏
  • 举报
回复
将数据源用REFRESH事件,即刷新!

807

社区成员

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

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