前面记录下了很多平时开发遇到的问题,RLDC之前也是不会,只会水晶报表,后来也慢慢的也上手了。把这些记录下来,以后用的着
1.打开VS添加新建项,选择Reporting,选择报表,后缀名为RLDC的名称自取。
2.添加数据集.xsd,添加表,添加字段,字段名和DataTable内的字段大小写相同,类型 数字类型和日期类型需要改,因为在报表中数字和日期需要格式化.如果string类型格式化将不起作用或者需要类型转换.
3.添加页面,注册报表命名空间,
<%@ Register Assembly="Microsoft.ReportViewer.WebForms, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
Namespace="Microsoft.Reporting.WebForms" TagPrefix="rsweb" %>
添加
<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>
添加 报表
<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="BSSalReportCaseRecoveryReport.rdlc"> //报表位置的路径
</LocalReport>
</rsweb:ReportViewer>
4.代后代码 添加数据到报表空间
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.选择工具栏 将表拖到报表空白处,将右侧的数据表字段托到表格中或者点击表格会出现一个图标,将字段选中就可以。完成后表格大小调整下。基本上最简单的报表完成。运行查询效果.