没有找到合适的产品?
联系客服协助选型:023-68661681
提供3000多款全球软件/控件产品
针对软件研发的各个阶段提供专业培训与技术咨询
根据客户需求提供定制化的软件开发服务
全球知名设计软件,显著提升设计质量
打造以经营为中心,实现生产过程透明化管理
帮助企业合理产能分配,提高资源利用率
快速打造数字化生产线,实现全流程追溯
生产过程精准追溯,满足企业合规要求
以六西格玛为理论基础,实现产品质量全数字化管理
通过大屏电子看板,实现车间透明化管理
对设备进行全生命周期管理,提高设备综合利用率
实现设备数据的实时采集与监控
利用数字化技术提升油气勘探的效率和成功率
钻井计划优化、实时监控和风险评估
提供业务洞察与决策支持实现数据驱动决策
转帖|实施案例|编辑:杨鹏连|2021-01-04 10:31:41.657|阅读 381 次
概述:本文介绍了使用功能强大的插件FastReport.Net打印报表实例。
# 界面/图表报表/文档/IDE等千款热门软控件火热销售中 >>
FastReport .Net是适用于Windows Forms,ASP.NET,MVC和.NET Core的全功能报表解决方案。它可以在Microsoft Visual Studio 2005-2019中使用。支持.Net Framework 2.0-4.x,.NET Core 3.0及以上版本。
在FastReport .NET 2021.1的新版本中,我们实现了对.NET 5的支持。添加了新条形码-Deutsce Post Leitcode。将RTF转换为报告对象的算法已得到显着改进。并且还添加了用于转换数字的新功能。欢迎下载体验。(点击下方按钮下载)
立即点击下载FastReport.NET v2021.1最新版
Fastreport.NET在线购买价更低,专享85折起!赶紧加入购物清单吧!
我第一次使用FastReport插件做的功能是打印一个十分复杂的excel表格,有几百个字段都需要绑定数据,至少需要4个数据源,而且用到横向、竖向合并单元格。
我不是直接连接数据库,而是使用RegisterData的方式自己注册DataSet对象,所有的表Table都是代码生成,填充到DataSet中,然后注册到控件中。
最开始尝试使用这个插件做一个简单的功能使用的就是下面的例子,不过花了一整天,还请假了4个人都没有搞出来,晚上拿着别人的模板直接修改,然后测试,就通过了。
之前测试,一直都提示未连接到数据源,原因是我直接使用记事本来向模板添加数据源导致的,平时别人使用的数据源都是自己写代码,调用Design的方式得到的,而且只能是winform程序,webform程序不行,因为要启动com组件。
下面是我总结的特别简单的一个方式,使用RegisterData的方式自己注册DataSet对象。
1.选择【File】-》【New】 新建FastReport模板,选择下图的1。

2.选择【View】-》【Data】,显示如下,导出Dictionary,保存。

3.编辑导出的.frd文件,编辑完后保存,再导入。
如下:<?xml version="1.0" encoding="utf-8"?>
<Dictionary>
<TableDataSource Name="Table1" ReferenceName="Data.Table1" DataType="System.Int32" Enabled="true">
<Column Name="姓名" DataType="System.String" PropName="Column"/>
<Column Name="密码" DataType="System.String" PropName="Column"/>
</TableDataSource>
</Dictionary>
4.编辑模板,添加一个Table控件。
第一行直接双击输入文本;第二行直接将右边的数据源托到单元格中;
设置边框、字体。
5.添加事件后台方法
选中Table1,在事件ManualBuild的后面双击,添加下面的代码: // 控件Table1的构建事件
private void Table1_ManualBuild(object sender, EventArgs e)
{
DataSourceBase data1 = Report.GetDataSource("Table1"); // 获取DataSet中表名为Table1的数据源
data1.Init(); // 初始化
Table1.PrintRow(0); // 控件Table1打印第0行
Table1.PrintColumns(); // 每打印一行,都要调用 PrintColumn或PrintColumns
while(data1.HasMoreRows) // 打印重复循环的行
{
Table1.PrintRow(1);
Table1.PrintColumns();
data1.Next(); // 读取下一行
}
}
说明:6.添加c#代码
新建一个测试页面test.aspx,将一个FastReport控件拖放到页面上(只有按照过FastReport.net,且引用了FastReport.dll,FastReport.Bars.dll,FastReport.Web.dll之后才可以)
添加后页面如下:
<body>
<form id="form1" runat="server">
<cc1:WebReport ID="webReport" runat="server" OnStartReport="WebReport_StartReport" />
</form>
</body>
后台方法: protected void WebReport_StartReport(object sender, EventArgs e)
{
DataSet ds = new DataSet();
DataTable table1 = new DataTable();
table1.TableName = "Table1"; // 一定要设置表名称
ds.Tables.Add(table1);
// 添加表中的列
table1.Columns.Add("姓名", typeof(string));
table1.Columns.Add("密码", typeof(string));
// 任意添加一些数据
for (int i = 0, maxI = 10; i < maxI; i++)
{
DataRow row = table1.NewRow();
row["姓名"] = "我是" + i.ToString();
row["密码"] = i.ToString();
table1.Rows.Add(row);
}
Report FReport = (sender as WebReport).Report;
string sPath = GetReportsPath("test.frx") ;
FReport.Load(sPath);
// 将DataSet对象注册到FastReport控件中
FReport.RegisterData(ds);
}
/// <summary>
/// 获取fastreport模板的路径
/// </summary>
/// <param name="sReportName">模板名称</param>
/// <returns>返回模板路径</returns>
public string GetReportsPath(string sReportName)
{
return FastReport.Utils.Config.ApplicationFolder + "Reports\\" + sReportName;
}
7. 测试效果
还想要更多吗?您可以点击阅读【FastReport 报表2020最新资源盘点】,查找需要的教程资源。让人兴奋的是FastReport .NET正在慧都网火热销售中!慧都17周年庆惠享超低折扣,低至3701元起!>>查看价格详情
本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@ke049m.cn
文章转载自:



2023年2月24日,国际独立第三方检测、检验和认证机构德国莱茵TÜV集团为中移智行网络科技有限公司(以下简称“中移智行”)颁布了A-SPICE L3和ISO26262功能安全产品ASIL B认证证书,标志着中移智行在软件质量体系管理和产品技术方面走在行业前端,满足国际标准要求。
QinetiQ Space N.V.是总部位于英国的QinetiQ集团的比利时航天部门,专注于开发部署在恶劣太空环境中的高可靠性产品,包括航空电子设备、电力推进、微重力研究仪器、机器人系统、太空安全、太空探索、遥感和小型卫星系统。
NEC Telecom Software Philippines(NSP)是日本NEC Corporation 的子公司,位于马尼拉。NSP开发宽带和移动通信技术,以及 IT 和网络解决方案,以其高质量的输出满足客户最高水平的满意度。
英国赫尔大学(University of Hull)是一个发展个人、社交和学术的综合研究型大学。在最近一次的全国评估中,计算机科学研究在英国的影响力排名并列第五。专业领域包括计算科学、计算机游戏化、可靠地智能系统、机器人和人工智能、仿真和可视化。
服务电话
重庆/ 023-68661681
华东/ 13452821722
华南/ 18100878085
华北/ 17347785263
客户支持
技术支持咨询服务
服务热线:400-700-1020
邮箱:sales@ke049m.cn
关注我们
地址 : 重庆市九龙坡区火炬大道69号6幢
半岛外围网上直营