我第一次接触水晶报表,我用vb+水晶9.2的环境,查了很多网站都说要用什么自定义字段,可我设置了没有反应,反而直接加入我的access数据库反而正常,可以出报表了, 我设置只打一条记录,现在也只能打最新的一条了,我现在的窗体都正常了,就这报表查了很多网站都没有资料,谁能告诉我到底改怎么弄,代码该如何写,才能让我可以查询后把结果输入到指定的模板上?如果有好心人愿意单独教我的话,我的QQ57495043.
解决方案 »
- VB6.0软件在调试时正常,生成EXE文件就不能运行了
- MSHFlexGrid中如何显示数据库中图片,请教各位高手!!!!
- 散分帖!并留下对她(他)de祝福!
- 触发器出问题了,帮忙看看怎么回事?
- 为什么我不能使用mid()、right()和left()函数
- Win2000下VB6编译的EXE(程序内嵌有一个自定义控件)为啥不能在win98下运行
- 希望不是又白问~~~~~~~~~~~~~~~~~!
- 如何定义data report的纸张大小?
- 怎样控制IE?
- “System.NullReferenceException”类型的未经处理的异常 其他信息: 未将对象引用设置到对象的实例。
- 怎么才能给VB设计的软件加上立体点的图标呢!
- 如何将桌面设成HTM网页?
Private objCRReport As New CRAXDRT.Report '报表对象
Dim rs As ADODB.Recordset
Dim msgtext As StringPrivate Sub cmdsearch_Click() '清除报表中保持的数据
objCRReport.DiscardSavedData
'形成数据集
'单个表适合用sql语句
strsql = "select * from clerk where clerk_bm='" & Combo1.Text & "'"
'注意:多个表筛取数据 必须要用视图,是数据形成一个表,水晶报表不能用sql语句
'strsql="select * from a,b where a.a1=b.a1" '水晶报表不支持这样的sql语句
'strsql = "select * from clerk_organ_view where clerk_bm='" & Combo1.Text & "'"
Set rs = ExecuteSQL(strsql, msgtext) 'Executesql是执行sql语句,你可以自己写
'赋给报表数据
objCRReport.Database.SetDataSource rs
CRViewer91.ReportSource = objCRReport '指定报表来源
CRViewer91.ReportSource = objCRReport
'显示报表
CRViewer91.ViewReport
End SubPrivate Sub Form_Load()
Dim strsql As String
strsql = "select distinct clerk_bm from clerk"
Set rs = ExecuteSQL(strsql, msgtext)
Do While Not rs.EOF
Combo1.AddItem rs(0)
rs.MoveNext
Loop
'加载报表模板
'单个数据表形成的报表
Set objCRReport = objCRApp.OpenReport(App.Path & "\1.rpt", 1)
'多个数据表形成的报表
Set objCRReport = objCRApp.OpenReport(App.Path & "\2.rpt", 1)
End SubPrivate Sub Form_Resize()
' CRViewer91.Top = 50
' CRViewer91.Left = 0
' CRViewer91.Height = ScaleHeight - Combo1.Height
' CRViewer91.Width = ScaleWidth
End Sub