0

我正在尝试使用 CR 13.1 将数据集连接到我在 VS 2010 中的报告。四年前用旧版本做到了这一点,现在它不正常了。我在查询后检查了数据集的内容,它得到了我正在寻找的内容,因此 getdata 函数不是问题。我尝试使用报表对象和一个空的报表文档将数据集连接到报表。(CrystalReportSource 已经硬连线到报告中 - 这是另一个问题。)

我在表单上有一个按钮以及查看器和源对象,因此我可以尝试替代方法。两种方法都不会填充报告,我在任何地方都找不到任何代码来澄清问题。

这是代码:

Public Class WebForm1
    Inherits System.Web.UI.Page
    Private ds As New DataSe
    Private da As New OleDb.OleDbDataAdapter
    Private dsUORInfoT As New DataSet
    Private rptUOR As New CrystalReport
    Private UORrpt As New ReportDocument
    Private reportPath As String = Server.MapPath("CrystalReport1.rpt")



    Private ConnectionString As String

    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        Session("dbName") = "VAPD"
        GetData("select * from t_offense where offense_nbr ='201305170216-3529'", dsUORInfoT)
        UORrpt.Load(reportPath)
        'rptUOR.SetDataSource(dsUORInfoT)
        UORrpt.SetDataSource(dsUORInfoT)
        CrystalReportViewer1.ReportSource = UORrpt
        'CrystalReportSource1.Report.

    End Sub
4

1 回答 1

0

嗯,有点乱。我想我忘了提到我正在使用 Oracle 数据库。这是什么意思?这意味着对数据集对象的支持充其量是平庸的。我创建了一个多表数据集,期望事情会像宣传的那样。事实证明,数据集对象的 .FILL 包括命名表的能力,而对于 SQLServer,它将填充适当的表。对于甲骨文,没有那么多。

所以显示的代码在一定程度上确实有效,但我没有填写数据集中的所有表格,所以它无论如何都不会工作,当我试图填充它们时,它不起作用。

我已经切换到基于视图的模型,在该模型中,我使用结构化视图为报告提供所需的数据。这消除了对多表数据集的需求,这可能会更酷或更高效,但实际上并没有真正起作用。

于 2013-07-31T15:15:10.620 回答