2014-01-08 54 views
1

我創建了一個簡單的報告,2008 vs.net與stimulsoft報告2013年 我使用這些代碼顯示報告:不能顯示stimulsoft報告1倍以上

StiReport1.RegData(ds) 
    StiReport1.Render() 
    StiReport1.Show() 

時我點擊按鈕我可以第一次看到報告正確。 但當我關閉報告查看器的Windows並再次單擊該按鈕時, 報告爲空(我可以看到報頭或頁腳,但報告中沒有加載數據) 我認爲報告數據不會再次加載或保存在緩存中。 請幫助。 謝謝

回答

0

問題解決了。 我應該只是保存報表,每次加載它:

Dim rpt As Stimulsoft.Report.StiReport = New Stimulsoft.Report.StiReport 
    rpt.Load("report/MyReport.mrt") 
    rpt.RegData(ds) 
    rpt.Render() 
    rpt.Show() 
0

您需要在瀏覽器渲染之前復位。在Reg和渲染代碼之前使用ResetReport()函數。

0

已解決 試試看看這個代碼。其工作對我來說

StiReport1.Dictionary.DataStore.Clear(); 
StiReport1.Dictionary.Databases.Clear(); 
StiReport1.Dictionary.DataSources.Clear(); 
StiReport1.BusinessObjectsStore.Clear(); 

StiReport1.RegData(ds) 
StiReport1.Dictionary.Synchronize(); 
StiReport1.Compile();