2011-12-06 48 views
0

因此,我在第一次嘗試運行報告時遇到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,看是否可以幫助,但還沒有多少運氣吧。在最初的失敗嘗試運行報告後,一切正常。只要我沒有退出該程序,只要我通過該空白報告,就會打印出包含有效數據的報告。謝謝你們可以給我的任何幫助。

回答

0

磕磕絆絆之後就想通了這個問題根據Crystal Reports中的內容。我必須在文件菜單下的報告文件中關閉具有報告功能的保存數據。

0

嗯,它已經有一段時間,因爲我用VB6和CR,但我有點記住,你需要設置觀衆面前放棄保存的數據報表源

Report.DiscardSavedData 
CRViewer1.ReportSource = Report 
相關問題