在使用End User Report Designer 设计Report时,需要在一个Report里面建立一个SubReport。SubReport有一个参数EmployeeID,通过EmployeeID 的值来得到SubReport的数据源。如此需求,就设计到Report向SubReport传递参数EmployeeID的值,在SubReport里面取得参数EmployeeID的值,来得到其数据源。
使用End User Report Designer设计出的报表是repx文件。对Report传递参数及SubReport取得参数需用Script实现:
Report,向SubReport里面传参数EmployeeID的值:
private void subreport1_BeforePrint(object sender, System.Drawing.Printing.PrintEventArgs e) {
try {
var report=(XRSubreport)sender;
if(report==null)
{
XtraMessageBox.Show("报表为空!");
return;
}
SubReport,取得参数EmployeeID的值,并得到数据源:
private void XtraReport_BeforePrint(object sender, System.Drawing.Printing.PrintEventArgs e) {
var reportDataSet=new ReportsDataSet;
var report=(XtraReport)sender;
string employeeID=report.Parameters["EmployeeID"].Value.ToString ;
温馨提示:Script 里面可用C#写,但是无智能感知。需注意写法要正确。写完后,有个Validate的按钮,点击后可以检查所带的代码是否正确。
(素材来源:守望者博客)
想要了解更多DevExpress使用技巧?海量视频课程以及最专业的DevExpress培训尽在慧都学院。