2012-04-02 93 views
1

如何使用C#作爲桌面應用程序刷新Crystal Reports的報表數據。我已經創建了我的報告,但是我想每2分鐘刷新一次數據,無需點擊任何按鈕。可能嗎?自動刷新水晶報表

回答

3

這取決於您正在使用的是哪個版本的Crystal Reports,但是我在Crystal Reports 2008中使用計時器控件並使用以下代碼在VB.net中執行了此操作;

Me.Cursor = Cursors.WaitCursor 

crvActive.ReuseParameterValuesOnRefresh = True ' Do not ask for new parameters 

crxReport.Refresh() 
crvActive.RefreshReport() 

With crvActive ' Get the number of pages after the refresh 
    .ShowLastPage() 
    NumPages = .GetCurrentPageNumber 
    .ShowFirstPage() 
End With 

Me.Cursor = Cursors.Default 

crvActive是窗體上的Viewer控件,crxReport是ReportDocument對象。我希望你可以把它翻譯成C#並將它綁定到Timer事件。

祝你好運。

+0

我不知道VB.net和我正在使用水晶報告2005.而且我也看不到刷新時間在您的代碼。 – 2012-04-02 16:03:13

+1

@ÖmerFarukAK就本練習而言,C#和VB在可讀性和轉換方面幾乎沒有區別。你需要做的是添加一個計時器控件到你的表單,並在火災事件中執行我給你的刷新代碼。 – 2012-04-03 15:35:24

+0

終於我瞭解了.NET中timer函數的用法,並重新刷新了每次刷新時的參數值。因爲在VS2005中有一個複用參數。 – 2012-04-17 18:13:30