當打印預覽時數據區不顯示或只顯示一條記錄時,是因為在設計報表時數據區沒有指定完整的數據源。
Fast Report 總頁數不顯示:
這個問題有很多人問過,有些回答正確但是不明白,開始我也有點迷糊,現在我知道了,方法:
進入fastreport-->File->Report Options-->two-pass report選中就行了,實現不了再找我!
錯誤:“FastReport.Report”的類型初始值設定項引發異常。
解決方法:刪除解決方案下所有FastReport.Dll文件,然后重新引用。
錯誤:打開報表時,報表自動去連接設計時的數據庫,說明在程序中並沒有正常設置數據源。
1.補打空行。
1.1在數據區下添加子報表,子報表是一個無數據,但可有表格線的節
1.2在代碼中添下如下事件。
public class ReportScript { int PageLine; //在現在頁列印到第幾行 int PageMaxRow=12; //設定每頁列數 //頁腳區打印前執行 private void PageFooter1_BeforePrint(object sender, EventArgs e) { int i; i=Convert.ToInt32(IIf(PageLine==0, PageMaxRow, PageLine)); while( i < PageMaxRow) { i = i + 1; Engine.ShowBand(Child1); //印空白表格 ,Childe1添加的子報表 } } //數據區打印后執行 private void Data1_AfterPrint(object sender, EventArgs e) { PageLine = ((Int32)Report.GetVariableValue("Row#")) % PageMaxRow; if(PageLine == 1 && ((Int32)Report.GetVariableValue("Row#"))> 1) { Engine.StartNewPage(); } } }
2.添加計算列
選擇:數據源->Connection->表->點右鍵->新建計算列
選擇剛才新建的計算列Column,點屬性,分別設置DataType(數據類型),Expression(表達式),Format(格式)
3.添加合計列
匯總項編輯器,如果”在段上打印“為空時,統計的值為整個報表中的數據,如果只統計當前頁的,就必須選擇在”數據尾“。
4.當前頁碼 無法顯示
在設計報表時,報表->選項->一般->雙通道(打鈎),即可正常顯示當前頁碼。
5.字典編輯
5.1打開是字典模板的報表,Actions->SaveDictionary,保存為字典,然后用vs打開編輯
5.2用FastReport打開報表模板文件,Actions->OpenDictionary