前面记录下了不少平时开发遇到的问题,RLDC以前也是不会,只会水晶报表,后来也慢慢的也上手了。把这些记录下来,之后用的着web
1.打开VS添加新建项,选择Reporting,选择报表,后缀名为RLDC的名称自取。工具
2.添加数据集.xsd,添加表,添加字段,字段名和DataTable内的字段大小写相同,类型 数字类型和日期类型须要改,由于在报表中数字和日期须要格式化.若是string类型格式化将不起做用或者须要类型转换.spa
3.添加页面,注册报表命名空间,设计
<%@ Register Assembly="Microsoft.ReportViewer.WebForms, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
Namespace="Microsoft.Reporting.WebForms" TagPrefix="rsweb" %>orm
添加server
<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>ip
添加 报表开发
<rsweb:ReportViewer ID="ReportViewer1" runat="server" Font-Names="Verdana" Font-Size="8pt"
InteractiveDeviceInfos="(集合)" WaitMessageFont-Names="Verdana" WaitMessageFont-Size="14pt"
Height="98%" Width="99%">
<LocalReport ReportPath="BS\SalReport\CaseRecoveryReport.rdlc"> //报表位置的路径
</LocalReport>
</rsweb:ReportViewer>string
4.代后代码 添加数据到报表空间it
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
ReportViewer1.Visible = true;
Display();
}
}
void Display()
{
ReportViewer1.Visible = true;
//报表数据源
DataTable dt = new Tq_DepSale().GetTQ_ShiftPay(fOrgNo, StartTime, EndTime, fShiftNo);
ReportViewer1.LocalReport.DataSources.Clear();
ReportViewer1.LocalReport.DataSources.Add(new ReportDataSource("DataSet1", dt)); //这个DataSet1 需和报表里数据集同名
ReportViewer1.LocalReport.Refresh();
}
5.设计报表
打开第一步添加的报表文件
右侧会出现报表相关的控件等,选择新将数据集 弹出数据集窗口,数据名默认为DataSet1 这里若是更名 则代码里须要同名,数据集选择第二步添加的xsd数据集文件,可用数据选择数据集中的表。OK完成则右侧会出现数据字段列表。
6.选择工具栏 将表拖到报表空白处,将右侧的数据表字段托到表格中或者点击表格会出现一个图标,将字段选中就能够。完成后表格大小调整下。基本上最简单的报表完成。运行查询效果.