C/S快速开发框架旗舰版CSFrameworkV6 - 用户自定义报表(FastReport.NET)
打印报表
报表预览
源码
数据窗体【打印】按钮
C# 全选
public override void DoPrint(IButtonInfo button)
{
AssertFocusedRow();
var row = gvSummary.GetRow<_Trial_IN>();
var list = gvSummary.GetDataSource<_Trial_IN>();
new ReportIN_Material().Show(this,list,row.INNO);
}
每个报表设计一个报表类
C# 全选
/// <summary>
/// 采购入库单报表
/// </summary>
public class ReportIN_Material
{
public void Show(Form owner, List<_Trial_IN> list, string docNo)
{
//获取报表数据
var data = new bll__Trial_IN().GetDataByKey(docNo);
//转换成Dataset
var ds = new DataSet();
ds.Tables.Add(DataTableHelper.ToDataTable(new List<_Trial_IN> { data.Master }));
ds.Tables.Add(DataTableHelper.ToDataTable(data.Details));
//配置报表
frmUserCustomReport.ExecuteByDataset("IN_Material", "INNO", owner.GetType().FullName, ds, list,
(e) => { return; },
(e) => { });
}
}
报表基础框架源码
配置自定义报表
第1次打印报表,没有报表模板,需要新增报表模板:
- 报表编号:系统自动生成的唯一序号。
- 拥有者:报表所属业务名称,或功能窗体名称。
- 单据类型:系统管理 -> 单据管理 可添加新的单据类型。
- 报表源:报表数据来源,开发框架提供2个报表源:业务账套库、系统数据库。
- 报表标题:报表名称、报表标题。
- 报表文件名:FastReport.Net报表文件名称。
- 表名/别名:数据源表名、别名。作为报表模板内定义标签的标识,如:[M.CustomerName],M即为表名或别名。
- 明细表别名:如果是主从表,默认定义D。
- 版本:系统自动生成的唯一序号。
- 报表序号:一个业务功能可能有多个用户自定义报表,作为排序使用。
- 主从表(Master/Detail):如果是主从表,默认打勾。
- 使用本地报表模板:默认勾选。如果报表模板在数据库,不需要勾选。
- 自定义SQL查询报表:如勾选,表示当前报表采用自定义SQL查询作为报表数据源。特点:不需要注册数据源(Report.RegisterData方法)
- 自定义SQL查询报表(带参数):如勾选,表示当前报表采用自定义SQL查询(并且指定1个或多个参数)作为报表数据源。特点:不需要注册数据源(Report.RegisterData方法)
本地报表模板文件位置:\Debug\net8.0-windows\Reports
上传报表模板文件到数据库
版权声明:本文为开发框架文库发布内容,转载请附上原文出处连接
CSFrameworkV6 C/S框架网