DEV 第三方控件報表分類匯總


最近這段時間難得空閑,於是打算做個報表功能,主要實現數據的分類匯總,以便不時之需。首先看看效果:

 

 

主要是根據工程類型這個字段進行分類,每個分類下對應的項目金額進行求和,當然,你也可以根據實際需求,進行求平均值等。如何做呢?

1.首先新建一個報表文件,在報表設計頁面增加ReportHeader,用於顯示你的報表名稱,打印日期等信息

2.既然是分組,當然要添加分組控件,GroupHeader,用於顯示每組的標題

3.增加數據綁定控件,我用的是DataTable

4.增加分組腳頁GroupFooter,用於顯示每組的匯總值

5.增加報表尾,用於顯示報表的制作人等信息

整個設計頁面如圖:

 

如何綁定數據呢?

1.在報表控件的構造函數里面增加數據源參數,我用的是DataTable

public TZReport(DataTable dt)
{
InitializeComponent();

}

2.緊接着為報表l綁定數據源 : this.DataSource = dt;

3.為每個數據顯示Table的Cell綁定數據源:

this.xrTableCell8.DataBindings.Add("Text", DataSource, "ProjectName");
this.xrTableCell9.DataBindings.Add("Text", DataSource, "ContractMoney");
this.xrTableCell10.DataBindings.Add("Text", DataSource, "ChargeMoney");
this.xrTableCell11.DataBindings.Add("Text", DataSource, "PaidMoney");
this.xrTableCell12.DataBindings.Add("Text", DataSource, "YL");
this.xrTableCell13.DataBindings.Add("Text", DataSource, "SpareMoney");
this.xrTableCell14.DataBindings.Add("Text", DataSource, "CostMoney");

 

4.增加分組列

GroupHeader1.GroupFields.AddRange(new
DevExpress.XtraReports.UI.GroupField[] { new DevExpress.XtraReports.UI.GroupField("ProjectTypeName", DevExpress.XtraReports.UI.XRColumnSortOrder.Ascending) });

其中  “ProjectTypeName”是你數據源里面的字段

5.為每組的數據統計綁定數據源

xrLabel1.DataBindings.Add("Text", dt, "ContractMoney");
xrLabel2.DataBindings.Add("Text", dt, "ChargeMoney");
xrLabel3.DataBindings.Add("Text", dt, "PaidMoney");
xrLabel4.DataBindings.Add("Text", dt, "SpareMoney");
xrLabel5.DataBindings.Add("Text", dt, "CostMoney");
xrLabel6.DataBindings.Add("Text", dt, "YL");

這樣基本就ok了。

 

PS:如何設置求和等聚合算法,dev提供了設計功能


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM