vb.net - 如何将参数从 vb.net 代码传递给 Crystal 报表

标签 vb.net crystal-reports

我创建了一个 Crystal 报表(交叉表)。我没有使用任何数据集,而是使用 Crystal 报表中的向导从我的数据库模式中调用过程 (提供者是用于 Oracle 的 Microsoft OLEDB 提供者,之后我提供了我的数据库凭据(即模式、用户名、密码)并选择了过程并选择了我想在报告中显示的列)。

我需要从前端传递 5 个参数来生成报告。查看 Crystal 报表预览时,通过给定参数,报表可以正常运行。

现在我想从前端 (vb.net) 传递这 5 个参数以在 CrystalReportViewer 中显示报告。请建议将代码写入 aspx.vb 文件。 (PS:- 我确实浏览了其他论坛并找到了一些代码,但他们都给出了一些或其他错误,所以我发布了一个这样我可以获得特定于我的要求的代码)。

提前致谢..

最佳答案

我已经让报告开始工作了... 我写了下面的代码:

    Dim RptDocument As New ReportDocument

    RptDocument.Load(Server.MapPath("rpt\Report.rpt"))

    RptDocument.SetParameterValue("param1", Session("param1"))
    RptDocument.SetParameterValue("param2", ddlparam2.SelectedValue)
    RptDocument.SetParameterValue("param3", param3.text)
    RptDocument.SetParameterValue("param4", param4.text)
    RptDocument.SetParameterValue("param5", param5.text)

    'Set login info
    Dim myLogin As CrystalDecisions.Shared.TableLogOnInfo

    Dim myTable As Table
    For Each myTable In RptDocument.Database.Tables
        myLogin = myTable.LogOnInfo
        myLogin.ConnectionInfo.ServerName = "server name"
        myLogin.ConnectionInfo.DatabaseName = ""
        myLogin.ConnectionInfo.UserID = "userid"
        myLogin.ConnectionInfo.Password = "pwd"
        myTable.ApplyLogOnInfo(myLogin)
        myTable.Location = myTable.Location

    CrystalReportViewer1.ReportSource = RptDocument

创建了一个系统 DNS 并且必须添加 Oracle.DataAccess.dll 来引用和一个类文件(功能与 connectooracle.vb 类文件中的相同,但名称不同),也设置global.asax 中的连接以引用该类连接并使用 Imports Oracle.DataAccess.Client 而不是 Imports System.Data.OracleClient(以避免歧义)...

这以某种方式使它起作用,并且可能有一些其他解决方案..:)

(For ref:- Adding  myLogin.ConnectionInfo.IntegratedSecurity = True  gave me this error--
Logon failed. Error in File C:\DOCUME~1\Username\LOCALS~1\Temp\Report {1AG3DD86-141D-43YA-B6A2-AEDF3459AE49}.rpt: Unable to connect: incorrect log on parameters.)

关于vb.net - 如何将参数从 vb.net 代码传递给 Crystal 报表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11322735/

相关文章:

vb.net 字符集

c# - SaveAs方法配置为需要root路径,而路径 '~/Images/FleaMarket/uploadedImages/mitali2054/5.jpg'不是root路径

c# - 使用 Crystal Reports ReportDocument

crystal-reports - Crystal 报表 - 最后一页为空白

crystal-reports - 在没有 Crystal Reports Server 的情况下在 Crystal Reports 之间共享函数?

open-source - 有 Crystal 报表的开源替代品吗?

.net - WPF RichTextBox – 迭代文本的单词并更改其内容和格式

无法打开引用 vector 文件。它是什么?

vb.net - VB .net 输出中的 AES 加密与网站不匹配

c# - 如何将文本框的值设置到 Crystal 报表的公式字段中