关于DataReport的问题

gzyip 2004-10-23 04:14:25
假设,在ACCESS中有表sheet1,编排如下
主编号 副编号 数据
1 1 1
1 2 2
1 3 3
2 1 4
2 1 5
3 1 6

我想列出报表如下:
主编号1
副编号 数据
1 1
2 2
3 3
主编号2
副编号 数据
1 4
2 5
主编号3
副编号 数据
1 6

请问我怎样才能用DataReport和DataEnviroment做出这样的报表呢?
...全文
127 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
vbman2003 2004-10-25
  • 打赏
  • 举报
回复
不用数据固固执(ODBC)的代码我了一下,通过了:
With cn
.Provider = "MSDataShape.1" '一定要这句
.Open "Data Provider=Microsoft.Jet.OLEDB.4.0 ;" & _
"Data Source=" & App.Path & "\db1.mdb;" & _
"Persist Security Info=False"
End With
以上注意次序

以上代码和用数据源只是连接数据库的格方式不同,不用DataEnviroment的原因就是可以灵活的调整报表的数据源,你只要修改上述代码中的Sql和strSql,就可以打印出不同要求的报表
vbman2003 2004-10-24
  • 打赏
  • 举报
回复
忘了,miCmd是分组名称,你可以根据你的需要取名
vbman2003 2004-10-24
  • 打赏
  • 举报
回复
不要用DataEnviroment,下面是我通过ODBC数据源连接数据库,用代码解决DataReport分组的方法。
  1.运行VB,选择“工程_引用”命令,引用 Microsoft ActiveX Data Objects 2.5 Library
  2.添加DataReport。插入分组标头
  3.添加Text控件布局。它们的相应属性可以在代码中设置。
  双击DataReport,添加代码如下:

Private Sub DataReport_Initialize()
Dim cn As ADODB.Connection
Dim rs As ADODB.Recordset
Dim Sql, strSql As String

'连接数据库
Set cn = New ADODB.Connection
With cn
.Provider = "MSDataShape.1" '一定要这句
.Open "miGroup", "Admin", "" '通过数据源连接数据库
End With

'设置text控件属性
'分组标头,注意不要设置其DataMember属性
DataReport1.Sections("Section6").Controls("text1").DataField = "id"
'细节标头,其中“miCmd”是分组名称
DataReport1.Sections("Section1").Controls("text2").DataField = "iName"
DataReport1.Sections("Section1").Controls("text2").DataMember = "miCmd"
DataReport1.Sections("Section1").Controls("text3").DataField = "iCode"
DataReport1.Sections("Section1").Controls("text3").DataMember = "miCmd"

'查询表:
Sql = "SELECT * FROM `tb`"
'(这里注意tb不是用单引号括起来的,而是用Tab键上方的那个带~的键上的`括起来的)

'分组并打开查询记录集
strSql = "SHAPE {" & Sql & " } " & _
"AS miCmd COMPUTE miCmd BY 'id' "
Set rs = New ADODB.Recordset
rs.Open strSql, cn, adOpenStatic, adLockReadOnly

Set Me.DataSource = rs
End Sub

你只要将上述代码中的id改为“主编号”,iName改为“付编号”,iCode改为“数据”,就可以了
gzyip 2004-10-24
  • 打赏
  • 举报
回复
如果用ODBC的话,但是我的数据源是不固定的,是让用户选择的,(格式是固定的),这样也可以吗?
jam021 2004-10-24
  • 打赏
  • 举报
回复
关注,帮你顶!

1,216

社区成员

发帖
与我相关
我的任务
社区描述
VB 数据库(包含打印,安装,报表)
社区管理员
  • 数据库(包含打印,安装,报表)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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