【问题标题】:Using stored procedure in crystal report 8.5?在水晶报表 8.5 中使用存储过程?
【发布时间】:2010-12-19 20:11:51
【问题描述】:

我使用 Crystal Reports 8.5 (report1) 创建了一个新报表,该报表使用存储过程作为其数据源。存储过程有 2 个输入参数(@p1 和 @p2),当我在水晶报表 IDE 中输入 @p1 和 @p2 的一些测试数据时,一切都很好。然后,我在 Visual Basic 6.0 IDE 中添加了 report1,并在 form1 上添加了一个新表单(form1)和一个水晶报表查看器控件。现在请帮助我:我想显示报告1。我应该写什么代码来显示它?发送数据用户如何通过应用程序输入存储过程参数? 我也收到此错误消息:服务器尚未打开”

怎么了?

【问题讨论】:

  • 我认为赏金会吸引更多人紧急回答......
  • 您不能针对过去 48 小时内未提出的问题开始悬赏...

标签: stored-procedures vb6 crystal-reports parameters


【解决方案1】:

Specifying a report

假设 SampleReport 已添加到您的 .Net 项目中:

Dim parameter1 As CrystalDecisions.Shared.ParameterField
Dim parameter2 As CrystalDecisions.Shared.ParameterField

With SampleReport
    .SetDatabaseLogon("user", "password", "server", "database")
    'locate first parameter in report
    parameter1 = .ParameterFields.Find("@p1", "")
    'locate second parameter in report
    parameter2 = .ParameterFields.Find("@p2", "")
End With

'create a new discrete-parameter value
Dim stringValue As New CrystalDecisions.Shared.ParameterDiscreteValue()
stringValue.Value = "USA"

'assign it to the parameter's current values collection
parameter1.CurrentValues.Add(stringValue)

'create a new discrete-parameter value
Dim numberValue As New CrystalDecisions.Shared.ParameterDiscreteValue()
numberValue.Value = 100

'assign it to the parameter's current values collection
parameter2.CurrentValues.Add(numberValue)

With Me.CrystalReportViewer1
    .ReportSource = SampleReport
End With

【讨论】:

  • 克雷格,正如我所说,我已将报告添加到 VB6 项目并按照您所说的做了(上面 3 行),但我仍然无法显示它。现在我有 3 个问题: 1 - 我需要在运行时填充记录集作为报表的数据源吗? 2 - 如何将参数发送到存储过程以显示报告? 3- 消息如何:“服务器尚未打开”?
  • 1.如果您将存储过程作为“表”添加到报告中,那么 CR 将完成所有工作。您可以在代码中动态分配记录集,但这比仅将其添加到设计器中的报表更复杂。 2. 我会将存储过程作为其唯一的“表”添加到报告中。您可以在 Crystal Reports | 中执行此操作。数据库 | Database Expert.. 该报告将识别 SP 的参数。当您运行报表时,您可以在代码中设置参数的值,或者只是让报表提示用户。
  • 哦,终于找到了....:) 1-正如您所说,在设计时将SP添加到报告中后,无需填写记录集。 2 - 如果为每个循环,使用 select 语句,我们选择每个参数并分配其值。 3 - 我们需要使用 SetLogOnInfo 方法 Craig,非常感谢 3 -
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-12-14
  • 2011-10-12
  • 1970-01-01
  • 1970-01-01
  • 2014-06-22
  • 1970-01-01
相关资源
最近更新 更多