和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層的代碼差不多,就是先傳入參數,然後進行執行,執行步驟如上。
制作報表的過程中,如果說遇到的難點,就不得不說參數傳入時候出現的問題,這個問題大多出在命名上,右鍵參數,設置屬性,只要細心一點,讓變量的名字不出差錯,報表應該會正常顯示出來的。
完成了報表後,有一個很大的感慨就是,如果你在制作過程中隨意的點點,就會發現它的強大之處不僅僅是可以顯示數據,還有好多功能,對用戶相當友好。感覺自己不僅在技術上有太多的進步空間,在界面友好方面,需要學習的就有太多太多了。所以說,會做軟件不重要,重要的是做的軟件有多少人喜歡用。