因此,我在第一次嘗試運行報告時遇到Crystal Reports問題,報告顯示爲空。報告顯示了各種分隔符,行,框等,但沒有填寫報告的數據。我正在使用Visual Basic 6編碼。我使用了大量的繼承代碼,處理實際Crystal Reports的代碼是用於其他報告的文件,並且工作正常。所以我敢肯定,問題出在我所做的事情上,我搞亂了一些東西。VB6中的Crystal Reports在第一次運行時顯示爲空
這裏是我到目前爲止的代碼:
Dim rs As ADODB.Recordset
Dim strRptFilePathTemp As String
Dim strRptFileName As String
Dim cSql As String
cSql = "SELECT * FROM TABLE1"
Set rs = DbConn.runStatement(cSql, "rs call", , , , , , , , , , True) 'gets a recordset based on the sql statement above
On Error GoTo ErrHandler
strRptFileName = "ReportName.rpt"
strRptFilePathTemp = App.Path
Screen.MousePointer = vbHourglass
Set frmcrystalreport.ReportRS = rs
DoEvents
frmcrystalreport.reportfile = strRptFilePathTemp & strRptFileName
frmcrystalreport.ReportTitle = _
frmCrystalReportsMainForm.GetRptTitle1("ReportTitle, ") & vbCrLf
gblStrReportFileNameLastRun = frmcrystalreport.reportfile
Screen.MousePointer = vbDefault
DoEvents
frmcrystalreport.Show vbModal
If Not frmcrystalreport.ReportRS Is Nothing Then
frmcrystalreport.ReportRS.Close
Set frmcrystalreport.ReportRS = Nothing
End If
Exit Sub
End If
End Sub
我已經試過玩弄的功能的DoEvents,看是否可以幫助,但還沒有多少運氣吧。在最初的失敗嘗試運行報告後,一切正常。只要我沒有退出該程序,只要我通過該空白報告,就會打印出包含有效數據的報告。謝謝你們可以給我的任何幫助。