DevExpress XtraReport 开发指南|单表报表设计详解(C#)|C/S开发框架

DevExpress XtraReport报表设计非常简单,按照下面的步骤轻松完成。
新增一份XtraReport报表



报表设计器 (Report Designer)

绑定数据字段 (Binding Data Field)
在DetailBand报表段内拖放XRLabel组件,可以对其绑定数据字段,具体作法是给Text属性赋值,比如:
[SONO] ,SONO是字段名,绑定的字段必须加中括号!(重要)
金额或数量汇总 (Report Summary)
在GroupFooter区域拖放一个XRLabel组件,在XRLabel.Summary属性设置如下:

然后绑定主表的Amount字段:
xrLabel2.DataBindings.Add("Text",this.DataSource,"Amount");
系统变量/系统函数 System Variables

设计好报表,然后动态加载数据源。
C#代码参考
单表报表只需要一个数据表,我们只需要给Report绑定数据源即可。(重要)
预览报表:
private void button2_Click(object sender, EventArgs e)
{
XtraReport_SingleTable mMyReport = new XtraReport_SingleTable();
DataSet data = DAL.GetSummaryData();
mMyReport.SetReportDataSource(data);
frmReportPreview.DoPreviewReport(mMyReport, this);
}
具体步骤:
1.创建报表实例
2.通过DAL层获取报表数据,返回DataSet类型,仅包含一张数据表,取名为tb_SO
3.调用自定义方法SetReportDataSource,绑定数据源。(重要)
4.打开预览窗体显示报表
单表:设置报表数据源SetReportDataSource方法
参考 rptUserList.cs
public void SetReportDataSource(DataSet dataSource)
{
this.DataSource = dataSource.Tables[0];
xrLabel2.DataBindings.Add("Text",this.DataSource,"Amount");
}
主从表:设置报表数据源SetReportDataSource方法
参考:rptSO.cs
public void SetReportDataSource(DataSet reportData)
{
DataSet ds = reportData.Copy();
GroupField gf = new GroupField("SONO", XRColumnSortOrder.Ascending);
GroupHeader1.GroupFields.Add(gf);
DataColumn parentColumn = ds.Tables["tb_SO"].Columns["SONO"];
DataColumn childColumn = ds.Tables["tb_SOs"].Columns["SONO"];
DataRelation R1 = new DataRelation("R1", parentColumn, childColumn, false);
ds.Relations.Add(R1);
this.DataMember = "tb_SO";
this.DataSource = ds;
this.DetailReport.DataMember = "R1";
this.DetailReport.DataSource = ds;
this.BindingFields(ds, this.Detail1.Controls);
xrLabel15.DataBindings.Add("Text", ds, "R1.Amount");
xrLabel23.DataBindings.Add("Text", ds, "R1.Amount");
}
总结:
单表报表相对简单,通过本文的详细介绍您完全可以开发一份个性化报表了。
扫一扫加作者微信
扫一扫加作者微信