和VB需要引用其他報表軟件不同,VS自帶報表設計的功能,初次嘗試,就感受到了它的強大之處。
話不多說,直接報表的制作過程。
1、首先,我們要先制作一個報表的容器。放到我們顯示報表的窗體上。

2、然後,添加一個報表。

3、報表添加完成後,我們會看到報表的相關數據。

4、依次添加好數據源和數據集,測試連接成功。

5、成功後如圖所示。添加要使用的參數。


6、然後我們就可以在報表工具箱裡添加自己所需要的東西,如,表,文本框等。這裡的表可以直接引用數據集中內容。點擊表裡的那個小圖標即可。


7、最後,引用數據源數據集。

好了,對於一些基本配置到這裡就做好了。接下來是代碼。
private void btnInquire_Click(object sender, EventArgs e)
{
string BeginDate = dtpBegin.Text.Trim();
string EndDate = dtpEnd.Text.Trim();
Facade.Facade faca = new Facade.Facade();
DataTable table = faca.InqCheckInfo(BeginDate, EndDate);
ReportDataSource rptDataSource = new ReportDataSource();
ReportParameter[] Params =
{
new ReportParameter("ID",Entity.Model.user),
new ReportParameter("CheckDate",DateTime.Now.ToShortDateString())
};
rptDataSource.Name = "DataSetCheckReport";//指定數據集名
rptDataSource.Value = table;//數據源名稱
reportViewer.LocalReport.ReportEmbeddedResource = "UI.CheckReport.rdlc";//報表文件名
reportViewer.LocalReport.DataSources.Clear();//清空存在報表
reportViewer.LocalReport.DataSources.Add(rptDataSource);//添加數據源
reportViewer.LocalReport.SetParameters(Params);//傳遞參數
reportViewer.RefreshReport();//刷新報表控件
}
和D層的代碼差不多,就是先傳入參數,然後進行執行,執行步驟如上。
制作報表的過程中,如果說遇到的難點,就不得不說參數傳入時候出現的問題,這個問題大多出在命名上,右鍵參數,設置屬性,只要細心一點,讓變量的名字不出差錯,報表應該會正常顯示出來的。
完成了報表後,有一個很大的感慨就是,如果你在制作過程中隨意的點點,就會發現它的強大之處不僅僅是可以顯示數據,還有好多功能,對用戶相當友好。感覺自己不僅在技術上有太多的進步空間,在界面友好方面,需要學習的就有太多太多了。所以說,會做軟件不重要,重要的是做的軟件有多少人喜歡用。