我使用Crystal Reports 8.5(report1)创建了一个新报告,该报告使用存储过程作为其数据源。存储过程有2个输入参数(@ p1和@ p2),当我在水晶报表IDE中输入@ p1和@ p2的一些测试数据时,每件事都可以。然后,我在visual basic 6.0 IDE中添加了report1,并在form1上添加了一个新表单(form1)和一个水晶报表查看器控件。现在请帮助我:我想展示报告1。我应该编写什么代码来显示它?如何通过应用程序将用户输入的数据输入到存储过程参数中? 我也得到这个错误消息:服务器尚未打开“
怎么了?
答案 0 :(得分:0)
假设已将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