UI——添加——新建项
1.在报表文件.rdlc文件中:新建——数据集
2.新建,之后就是“下一步”
3.数据源配置向导
4.新建连接
5.填写服务器名称和选择身份验证,连接到数据库,测试连接
6.选择数据集中数据库对象
1.右击添加表和文本即可,显示结果:
2..因报表中需要参数@DateStart和@DateEnd:参数——添加参数,设置参数类型
首先按照我们平常那个传递实体走一遍七层,然后数据库中查出数据,最后返回泛型QueryCash到U层
'定义报表数据源 Dim BillDataSource As New ReportDataSource '参数集合 Dim params() As ReportParameter = {New ReportParameter("StartDate", Date.Parse(StartDate.Text)), New ReportParameter("EndDate", Date.Parse(EndDate.Text)), New ReportParameter("UserHost", FrmLogin.LoginUserID), New ReportParameter("TodayDate", TodayDate)} '设置报表数据集名称 BillDataSource.Name = "DataSet<span style="font-family:KaiTi_GB2312;">1</span>" '设置报表数据源实例,此时为从7层返回的泛型 BillDataSource.Value = QueryCash '报表文件名 Me.ReportAccount.LocalReport.ReportEmbeddedResource = "Login.UI.ReportBill.rdlc" '清空存在报表 Me.ReportAccount.LocalReport.DataSources.Clear() '添加数据源 Me.ReportAccount.LocalReport.DataSources.Add(BillDataSource) '传递参数 Me.ReportAccount.LocalReport.SetParameters(params) '刷新报表控件 Me.ReportAccount.RefreshReport()
我们可以从“四、设计报表”到:
1.右击T_AccountInfoTableAdapter——在数据集设计器中编辑查询
2.右击——配置
3.查询生成器
4.加入查询条件,“确定”
5.只需要在U层写代码即可
Private Sub btnQuery_Click(sender As Object, e As EventArgs) Handles btnQuery.Click Dim CheckSource As New ReportDataSource '设置报表数据集名称 CheckSource.Name = "DataSet1" '设置报表数据源实例 CheckSource.Value = MachineChargeDataSet.T_AccountInfo '报表内容名称 Me.ReportViewer1.LocalReport.ReportEmbeddedResource = "Login.UI.ReportAccount.rdlc" '清空存在报表 Me.ReportViewer1.LocalReport.DataSources.Clear() '添加数据源 Me.ReportViewer1.LocalReport.DataSources.Add(CheckSource) '向T_AccountInfoTableAdapter传递参数 Me.T_AccountInfoTableAdapter.Fill(Me.MachineChargeDataSet.T_AccountInfo, Format(StartDate.Value, ("yyyy-MM-dd")), Format(EndDate.Value, "yyyy-MM-dd")) '刷新报表 Me.ReportViewer1.RefreshReport() End Sub
小结:开始看了几个人的博客但是感觉很混乱,其实重要的是把思路理清楚了,开始写的时候也不懂,写的写的就清楚了,写博客还是很有益处的。