【发布时间】:2014-10-21 14:53:38
【问题描述】:
我正在使用水晶报表打印发票。
它由来自多个表的字段组成。
我已经创建了 oledbcommand、Oledbdataadapter 和 dataset 以在水晶报表中显示结果。
问题:
如果我将客户的详细信息放在水晶报表的“页眉”部分,它只会显示第一条记录
如果我将它们放在水晶报告的“详细信息”部分,它会显示所有记录。
我已经通过在数据网格中显示结果来验证 sql 查询返回的数据,那里返回的数据是正确的。
所以请有人帮我解决这个问题。
附: : 我正在使用 Ms Access 数据库。
而且我对水晶报告只有一点了解,所以我可能犯了一个愚蠢的错误。
如果可能,请上传整个代码以将多个数据库表打印到水晶报表上。
我真的很困所以请帮忙
代码:
bcmd = New OleDbCommand
bcmd.Connection = Functions.dbcon
bcmd.CommandText = "SELECT * from Item where Item_ID = 16"
bcmd.ExecuteNonQuery()
bda = New OleDbDataAdapter(bcmd)
bds = New DataSet
bda.Fill(bds)
rptdoc.load("full absolute path") // file exists here , so no issues with it
rptdoc.setdatasource(bds.tables(0))
repview.reportsource = rptdoc
【问题讨论】:
-
您说如果您将字段放入“详细信息”部分,那么它会显示所有记录...那么究竟是什么问题?
-
它应该显示通过sql查询过滤的特定记录
-
你能发布你的代码吗?
-
@user3762349,你需要更详细一点。你能描述一下你的过滤器吗?您是说报告中的某些值应该被过滤器删除吗?你是说你没有看到你期望的所有列?
-
即使我使用了 where 子句,它也会显示所有记录
标签: database vb.net crystal-reports oledb