我目前使用水晶報表XI和VB studio 2005.我正面臨着通過winform將參數傳遞給報表的問題。下面是我的代碼:Crystal Reports:通過winform傳遞參數VB.Net
在我的報告形式,其中晶體控制所在:
Public Sub DisplayReport(ByVal formTitle As String)
Dim myConnectionInfo As ConnectionInfo = New ConnectionInfo()
myConnectionInfo.UserID = ""
myConnectionInfo.Password = ""
SetDBLogonForReport(myConnectionInfo, rptDoc)
Me.Text = formTitle
CrystalReportViewer1.ReportSource = rptDoc
CrystalReportViewer1.RefreshReport()
End Sub
Private Sub SetDBLogonForReport(ByVal myConnectionInfo As ConnectionInfo, ByVal myReportDocument As ReportDocument)
Dim myTables As Tables = myReportDocument.Database.Tables
For Each myTable As CrystalDecisions.CrystalReports.Engine.Table In myTables
Dim myTableLogonInfo As TableLogOnInfo = myTable.LogOnInfo
myTableLogonInfo.ConnectionInfo = myConnectionInfo
myTable.ApplyLogOnInfo(myTableLogonInfo)
Next
End Sub
在我打印報表,我所說的報表:
Private Sub ConfigureCrystalReport(ByVal btnPrint As Boolean)
Dim myRptView As New frmReportView
Dim rptFile As String = ""
Dim strSelFormula As String = ""
'getting report path dynamically
Dim rptPath1 As New getAppDBSettingsBLL
rptPath1 = New getAppDBSettingsBLL
Dim rptPath As String = rptPath1.getReportPath(4)
rptFile = rptPath & "\" & "XXX.rpt"
myRptView = New frmReportView
rptDoc.Load(rptFile)
myRptView.DisplayReport(Me.Text)
rptDoc.SetParameterValue("@dateA", Format(Me.DateTimePicker1.Value.Date, "mm/dd/yyyy"))
myRptView.Show()
myRptView.CrystalReportViewer1.Dock = DockStyle.Fill
myRptView.WindowState = FormWindowState.Maximized
End Sub
我從拉數據一個基於參數的連接SQL語句,將在報表中使用。 SQL語句是正確的,並且傳遞的值是正確的。但參數提示框不斷出現,我想壓制它。在提示框中輸入參數時,報告顯示正確。這裏有什麼問題?