FastReport for .Net 实例 - 主从报表读取当前记录的数据
FastReport for .Net 实例 - 主从报表读取当前记录的数据
如图所示:
1. 条码内容取主表的单号SONO字段的值
2. pCompany_Title是自定义参数
3. M:指Master,主表,D:指Detail明细表
我们可以一次打印一张业务单据,同时可以跟据日期范围打印多张单据,通常情况下只需要在RichObject内绑定字段就行了,如:[M.CustomerName],M是主表的别名或者表名,在代码内可以自行设置的。
如果一次打印多张单据,有些地方需要定制显示报表数据,这时会带来麻烦,比如下图的条码图形是需要用代码控制的,这时我们需要知道数据源的当前记录位置,取当前记录的SONO作为条码的文本。
取当前记录代码:
复杂的报表会用到大量参数,如pCompany_Title是自定义参数,这时如何赋值?
FastReport for .Net 给自定义参数赋值:
扫一扫加微信
如转载请注明出处:www.csframework.com C/S框架网
如图所示:
1. 条码内容取主表的单号SONO字段的值
2. pCompany_Title是自定义参数
3. M:指Master,主表,D:指Detail明细表
我们可以一次打印一张业务单据,同时可以跟据日期范围打印多张单据,通常情况下只需要在RichObject内绑定字段就行了,如:[M.CustomerName],M是主表的别名或者表名,在代码内可以自行设置的。
如果一次打印多张单据,有些地方需要定制显示报表数据,这时会带来麻烦,比如下图的条码图形是需要用代码控制的,这时我们需要知道数据源的当前记录位置,取当前记录的SONO作为条码的文本。
取当前记录代码:
C# Code:
//打印条码
void barcode_BeforePrint(object sender, EventArgs e)
{
//取当前主表数据源, 对象类型:TableDataSource
DataSourceBase ds = rptSalesContract.GetDataSource("M");
//当前记录
DataRow masterRow = ds.CurrentRow as DataRow;
//取销售订单号码:SONO
(sender as BarcodeObject).Text = ConvertEx.ToString(masterRow[tb_SO.SONO]);
}
复杂的报表会用到大量参数,如pCompany_Title是自定义参数,这时如何赋值?
FastReport for .Net 给自定义参数赋值:
C# Code:
rptSalesContract.Parameters.FindByName("pCompany_Name").Value = CommonData.CompanyInfo.NativeName;
扫一扫加微信
如转载请注明出处:www.csframework.com C/S框架网
版权声明:本文为开发框架文库发布内容,转载请附上原文出处连接
NewDoc C/S框架网