1.报表设计
2.调用报表:
private void btnPrint_Click(object sender, EventArgs e)
{
string strBC = this.lookUpEdit1.EditValue.ToString();
if (string.IsNullOrEmpty(strBC))
{
MessageBox.Show("请输选择班次");
return;
}
XRPFPIN mMyReport = new XRPFPIN(); //报表实例
//根据计划单号和班次select数据
DataTable ds = _BLLFProPlan.getReportInfo(txtPlanID.Text.Trim(),strBC);
mMyReport.SetReportDataSource(ds);//绑定报表的数据源
//打开报表预览窗体
mMyReport.ShowPreview();
}
3.报表后台程序
using System;
using System.Drawing;
using System.Collections;
using System.Data;
using DevExpress.XtraReports.UI;
namespace EGBarcode.FPIn
{
public partial class XRPFPIN : DevExpress.XtraReports.UI.XtraReport
{
public XRPFPIN()
{
InitializeComponent();
}
///
/// 设置数据源
///
///
public void SetReportDataSource(DataTable reportData)
{
//创建副本
DataTable dt = reportData.Copy();
SetDataBind(dt);
}
private void SetDataBind(DataTable table)
{
if (table == null || table.Columns.Count < 1) return;
DataSource = table;
try
{
this.XlblPlanID.DataBindings.Add("Text", DataSource, "Plan_ID");
this.XLblCreateDate.DataBindings.Add("Text", DataSource, "Create_Date");
this.XLblMadeDate.DataBindings.Add("Text", DataSource, "Made_date");
this.XLblBC.DataBindings.Add("Text", DataSource, "Frequency");
this.XLblLineId.DataBindings.Add("Text", DataSource, "LineId");
this.XLblItemCode.DataBindings.Add("Text", DataSource, "ItemCode");
this.XLblItemName.DataBindings.Add("Text", DataSource, "ItemName");
this.XLblCardCode.DataBindings.Add("Text", DataSource, "CardCode");
//调整数据格式为千分位 如:1,000 XRBinding binding = new XRBinding("Text", DataSource, "TotalQty");
this.XLblTotalQty.DataBindings.Add(binding);
binding.FormatString = "{0:#,#}";
this.XLblUnit.DataBindings.Add("Text", DataSource, "Unit");
this.XLblLot.DataBindings.Add("Text", DataSource, "Lot");
this.XLblPersons.DataBindings.Add("Text", DataSource, "Persons");
this.XLblCostHour.DataBindings.Add("Text", DataSource, "CostHours");
this.XLblRemark.DataBindings.Add("Text", DataSource, "Remark");
this.xrLabel40.DataBindings.Add("Text", DataSource, "TotalQty");
this.xrLabel2.DataBindings.Add("Text", DataSource, "Persons");
this.xrLabel42.DataBindings.Add("Text", DataSource, "CostHours");
this.XLblCreator.DataBindings.Add("Text", DataSource, "Creator");
this.xrLabel7.DataBindings.Add("Text", DataSource, "Remark1");
}
catch
{
}
}
}
}